From d7817a7279e3d16b5f91c2bc0c0de329bd7b3805 Mon Sep 17 00:00:00 2001 From: Jonny Barnes Date: Tue, 23 May 2017 14:41:56 +0100 Subject: [PATCH] Use uglify-js v3 --- package.json | 3 +- public/assets/css/app.css | 4 +- public/assets/css/app.css.br | Bin 4536 -> 4553 bytes public/assets/css/app.css.gz | Bin 4777 -> 4833 bytes public/assets/frontend/mapbox-gl.css | 44 +- public/assets/frontend/mapbox-gl.css.br | Bin 1948 -> 8674 bytes public/assets/frontend/mapbox-gl.css.gz | Bin 2205 -> 9142 bytes public/assets/frontend/normalize.css | 40 +- public/assets/frontend/normalize.css.br | Bin 1834 -> 1756 bytes public/assets/frontend/normalize.css.gz | Bin 2175 -> 2086 bytes public/assets/js/links.js | 133 +- public/assets/js/links.js.br | Bin 1185 -> 789 bytes public/assets/js/links.js.gz | Bin 1365 -> 919 bytes public/assets/js/links.js.map | 2 +- public/assets/js/maps.js | 2872 +--------------- public/assets/js/maps.js.br | Bin 124401 -> 114951 bytes public/assets/js/maps.js.gz | Bin 141821 -> 131616 bytes public/assets/js/maps.js.map | 2 +- public/assets/js/newnote.js | 4093 +---------------------- public/assets/js/newnote.js.br | Bin 132992 -> 120894 bytes public/assets/js/newnote.js.gz | Bin 152247 -> 138652 bytes public/assets/js/newnote.js.map | 2 +- public/assets/js/piwik.js | 89 +- public/assets/js/piwik.js.br | Bin 834 -> 433 bytes public/assets/js/piwik.js.gz | Bin 982 -> 504 bytes public/assets/js/piwik.js.map | 2 +- uglifyjs | 7 + 27 files changed, 67 insertions(+), 7226 deletions(-) create mode 100644 uglifyjs diff --git a/package.json b/package.json index 9af1ac7b..96945c65 100644 --- a/package.json +++ b/package.json @@ -34,7 +34,8 @@ "copy-dist": "cp ./node_modules/mapbox-gl/dist/mapbox-gl.css ./public/assets/frontend/ && cp ./node_modules/alertify.js/dist/css/alertify.css ./public/assets/frontend/ && cp ./node_modules/normalize.css/normalize.css ./public/assets/frontend/", "lint:sass": "stylelint --syntax=scss resources/assets/sass/**/*.scss", "lint:es6": "eslint resources/assets/es6/*.js", - "uglifyjs": "for f in ./public/assets/js/*.js; do uglifyjs $f --screw-ie8 --in-source-map $f.map --source-map $f.map --source-map-url /assets/js/`basename $f`.map --output $f; done" + "uglifyjs": "./uglifyjs", + "webpack": "./node_modules/.bin/webpack --progress --colors" }, "lint-staged": { "resources/assets/es6/*.js": "eslint", diff --git a/public/assets/css/app.css b/public/assets/css/app.css index e6612ed1..f22fe61b 100644 --- a/public/assets/css/app.css +++ b/public/assets/css/app.css @@ -1,2 +1,2 @@ -html{box-sizing:border-box;font-size:24px}*,*::before,*::after{box-sizing:inherit}body{max-width:25em;margin:0 auto;padding-left:5px;padding-right:5px;word-wrap:break-word}#topheader{text-align:center}.h-entry{padding-top:1rem}.note{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.note-metadata{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;font-size:0.75em}.note img{max-height:80vh;width:auto;image-orientation:from-image}.social-links{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.social-links svg{padding-left:3px}.mini-h-card img{display:inline-block;height:1rem}body>.h-card{margin-top:5px;border-top:1px solid grey}footer{margin-top:1rem}footer button{margin-left:5px}.u-comment{margin-top:1em;padding:0 1em;font-size:0.75rem}.u-comment.h-cite img{height:0.75rem}.u-comment .e-content{margin-top:0.5em;font-size:1rem}.container{position:relative;width:100%;height:0;padding-bottom:56.25%}.youtube{position:absolute;top:0;left:0;width:100%;height:100%}body{font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif}a{text-decoration:none;border-bottom:1px solid;color:blue}.social-links a{border-bottom:none}.icon{height:1em;width:auto}footer{font-size:0.5rem;text-align:center}footer p>a{border-bottom:none}.iwc-logo{width:100px;height:auto}.pagination{width:100%;height:3rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.pagination li{list-style-type:none}.note-ui{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}@media (min-width: 600px){.note-ui>div{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;padding:0.2rem}input[type="file"]{width:5vw}}@media (max-width: 599px){input[type="file"]{width:100%}textarea,input[type="text"]{width:100%}}.note-ui label{width:5em;margin-right:0.5rem;text-align:right}.note-ui input:not([type=submit]),.note-ui textarea{-webkit-box-flex:1;-ms-flex:1;flex:1}.note-ui textarea{padding:0.1rem 0.3rem}#locate{margin-right:0.4rem}.mp-media li{list-style-type:none}.mp-media img{height:4em;width:4em}.map{margin-top:4px;height:200px}.marker{background-image:url(data:image/png;base64,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);background-size:contain;width:20px;height:20px}.map-menu{position:absolute;top:0;left:0;background:white;padding:0.4rem}.map-menu label{margin-left:3px;margin-right:3px}.contact{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;margin-top:1em;border-bottom:1px dashed grey}.contact img{margin-right:0.2rem;width:100px;height:100px}span[role=img][aria-label],span[role=img][aria-label]{position:relative}span[role=img][aria-label]:focus::after,span[role=img][aria-label]:hover::after{position:absolute;display:block;z-index:1;bottom:1.5em;left:0;max-width:5em;padding:0.5em 0.75em;border:0.05em solid #fff;border-radius:0.2em;box-shadow:0.15em 0.15em 0.5em #000;content:attr(aria-label);background-color:rgba(0,0,0,0.85);color:#fff;font-size:80%;-webkit-animation:TOOLTIP 0.1s ease-out 1;animation:TOOLTIP 0.1s ease-out 1}@-webkit-keyframes TOOLTIP{from{bottom:0.5em;background-color:transparent;border:0.05em solid rgba(255,255,255,0);color:rgba(255,255,255,0);box-shadow:0 0 0 #000}to{bottom:1.5em;background-color:rgba(0,0,0,0.85);border:0.05em solid #fff;color:#fff;box-shadow:0.15em 0.15em 0.5em #000}}@keyframes TOOLTIP{from{bottom:0.5em;background-color:transparent;border:0.05em solid rgba(255,255,255,0);color:rgba(255,255,255,0);box-shadow:0 0 0 #000}to{bottom:1.5em;background-color:rgba(0,0,0,0.85);border:0.05em solid #fff;color:#fff;box-shadow:0.15em 0.15em 0.5em #000}}@media print{span[role=img][aria-label]::after{content:" (" attr(aria-label) ") "}} -/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Jlc291cmNlcy9hc3NldHMvc2Fzcy9hcHAuc2NzcyIsIi4uLy4uLy4uL3Jlc291cmNlcy9hc3NldHMvc2Fzcy9sYXlvdXQuc2NzcyIsIi4uLy4uLy4uL3Jlc291cmNlcy9hc3NldHMvc2Fzcy9zdHlsZXMuc2NzcyIsIi4uLy4uLy4uL3Jlc291cmNlcy9hc3NldHMvc2Fzcy9wYWdpbmF0aW9uLnNjc3MiLCIuLi8uLi8uLi9yZXNvdXJjZXMvYXNzZXRzL3Nhc3Mvbm90ZS1mb3JtLnNjc3MiLCIuLi8uLi8uLi9yZXNvdXJjZXMvYXNzZXRzL3Nhc3MvbWFwYm94LnNjc3MiLCIuLi8uLi8uLi9yZXNvdXJjZXMvYXNzZXRzL3Nhc3MvY29udGFjdHMuc2NzcyIsIi4uLy4uLy4uL3Jlc291cmNlcy9hc3NldHMvc2Fzcy9lbW9qaS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLEtBQ0ksc0JBQ0EsY0FBZSxDQUNsQixxQkFLRyxrQkFBbUIsQ0FDdEIsS0NWRyxlQUNBLGNBQ0EsaUJBQ0Esa0JBQ0Esb0JBQXFCLENBQ3hCLFdBR0csaUJBQWtCLENBQ3JCLFNBR0csZ0JBQWlCLENBQ3BCLE1BR0csb0JBQ0EsQUFEQSxvQkFDQSxBQURBLGFBQ0EsNEJBQXNCLEFBQXRCLDZCQUFzQixBQUF0QiwwQkFBc0IsQUFBdEIscUJBQXNCLENBQ3pCLGVBR0csb0JBQ0EsQUFEQSxvQkFDQSxBQURBLGFBQ0EsOEJBQ0EsQUFEQSw2QkFDQSxBQURBLHVCQUNBLEFBREEsbUJBQ0EseUJBQ0EsQUFEQSxzQkFDQSxBQURBLDhCQUNBLGdCQUFpQixDQUNwQixVQUdHLGdCQUNBLFdBQ0EsNEJBQTZCLENBQ2hDLGNBR0csb0JBQ0EsQUFEQSxvQkFDQSxBQURBLGFBQ0EseUJBQW1CLEFBQW5CLHNCQUFtQixBQUFuQixrQkFBbUIsQ0FDdEIsa0JBR0csZ0JBQWlCLENBQ3BCLGlCQUdHLHFCQUNBLFdBQVksQ0FDZixhQUdHLGVBQ0EseUJBQTBCLENBQzdCLE9BR0csZUFBZ0IsQ0FDbkIsY0FHRyxlQUFnQixDQUNuQixXQUdHLGVBQ0EsY0FDQSxpQkFBa0IsQ0FDckIsc0JBR0csY0FBZSxDQUNsQixzQkFHRyxpQkFDQSxjQUFlLENBQ2xCLFdBR0csa0JBQ0EsV0FDQSxTQUNBLHFCQUFzQixDQUN6QixTQUdHLGtCQUNBLE1BQ0EsT0FDQSxXQUNBLFdBQVksQ0FDZixLQ3ZGRyw2SkFXYyxDQUNqQixFQUdHLHFCQUNBLHdCQUNBLFVBQVcsQ0FDZCxnQkFHRyxrQkFBbUIsQ0FDdEIsTUFHRyxXQUNBLFVBQVcsQ0FDZCxPQUdHLGlCQUNBLGlCQUFrQixDQUNyQixXQUdHLGtCQUFtQixDQUN0QixVQUdHLFlBQ0EsV0FBWSxDQUNmLFlDMUNHLFdBQ0EsWUFDQSxvQkFDQSxBQURBLG9CQUNBLEFBREEsYUFDQSw4QkFDQSxBQURBLDZCQUNBLEFBREEsdUJBQ0EsQUFEQSxtQkFDQSx5QkFDQSxBQURBLHNCQUNBLEFBREEsOEJBQ0EseUJBQW1CLEFBQW5CLHNCQUFtQixBQUFuQixrQkFBbUIsQ0FDdEIsZUFHRyxvQkFBcUIsQ0FDeEIsU0NWRyxvQkFDQSxBQURBLG9CQUNBLEFBREEsYUFDQSw0QkFBc0IsQUFBdEIsNkJBQXNCLEFBQXRCLDBCQUFzQixBQUF0QixxQkFBc0IsQ0FDekIsMEJBR0csYUFDSSxvQkFDQSxBQURBLG9CQUNBLEFBREEsYUFDQSw4QkFDQSxBQURBLDZCQUNBLEFBREEsdUJBQ0EsQUFEQSxtQkFDQSxjQUFlLENBQ2xCLG1CQUdHLFNBQVUsQ0FDYixDQUdMLDBCQUNJLG1CQUNJLFVBQVcsQ0FDZCw0QkFJRyxVQUFXLENBQ2QsQ0FHTCxlQUNJLFVBQ0Esb0JBQ0EsZ0JBQWlCLENBQ3BCLG9EQUlHLG1CQUFPLEFBQVAsV0FBTyxBQUFQLE1BQU8sQ0FDVixrQkFHRyxxQkFBc0IsQ0FDekIsUUFHRyxtQkFBb0IsQ0FDdkIsYUFHRyxvQkFBcUIsQ0FDeEIsY0FHRyxXQUNBLFNBQVUsQ0FDYixLQ3JERyxlQUNBLFlBQWEsQ0FDaEIsUUFHRyx5NEhBQ0Esd0JBQ0EsV0FDQSxXQUFZLENBQ2YsVUFHRyxrQkFDQSxNQUNBLE9BQ0EsaUJBQ0EsY0FBZSxDQUNsQixnQkFHRyxnQkFDQSxnQkFBaUIsQ0FDcEIsU0N0Qkcsb0JBQ0EsQUFEQSxvQkFDQSxBQURBLGFBQ0EsOEJBQ0EsQUFEQSw2QkFDQSxBQURBLHVCQUNBLEFBREEsbUJBQ0EsZUFDQSw2QkFBOEIsQ0FDakMsYUFHRyxvQkFDQSxZQUNBLFlBQWEsQ0FDaEIsc0RDUEcsaUJBQWtCLENBQ3JCLGdGQUlHLGtCQUNBLGNBQ0EsVUFDQSxhQUNBLE9BQ0EsY0FDQSxxQkFDQSx5QkFDQSxvQkFDQSxvQ0FDQSx5QkFDQSxrQ0FDQSxXQUNBLGNBQ0EsMENBQWtDLEFBQWxDLGlDQUFrQyxDQUNyQywyQkFHRyxLQUNJLGFBQ0EsNkJBQ0Esd0NBQ0EsMEJBQ0EscUJBQWtDLENBR3RDLEdBQ0ksYUFDQSxrQ0FDQSx5QkFDQSxXQUNBLG1DQUFnRCxDQUFBLENBSXhELEFBcEJDLG1CQUdHLEtBQ0ksYUFDQSw2QkFDQSx3Q0FDQSwwQkFDQSxxQkFBa0MsQ0FHdEMsR0FDSSxhQUNBLGtDQUNBLHlCQUNBLFdBQ0EsbUNBQWdELENBQUEsQ0FJeEQsYUFDSSxrQ0FDSSxrQ0FBbUMsQ0FDdEMsQ0FBQSIsImZpbGUiOiJhcHAuY3NzIn0= */ \ No newline at end of file +html{-webkit-box-sizing:border-box;box-sizing:border-box;font-size:24px}*,*::before,*::after{-webkit-box-sizing:inherit;box-sizing:inherit}body{max-width:25em;margin:0 auto;padding-left:5px;padding-right:5px;word-wrap:break-word}#topheader{text-align:center}.h-entry{padding-top:1rem}.note{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.note-metadata{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;font-size:0.75em}.note img{max-height:80vh;width:auto;image-orientation:from-image}.social-links{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.social-links svg{padding-left:3px}.mini-h-card img{display:inline-block;height:1rem}body>.h-card{margin-top:5px;border-top:1px solid grey}footer{margin-top:1rem}footer button{margin-left:5px}.u-comment{margin-top:1em;padding:0 1em;font-size:0.75rem}.u-comment.h-cite img{height:0.75rem}.u-comment .e-content{margin-top:0.5em;font-size:1rem}.container{position:relative;width:100%;height:0;padding-bottom:56.25%}.youtube{position:absolute;top:0;left:0;width:100%;height:100%}body{font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif}a{text-decoration:none;border-bottom:1px solid;color:blue}.social-links a{border-bottom:none}.icon{height:1em;width:auto}footer{font-size:0.5rem;text-align:center}footer p>a{border-bottom:none}.iwc-logo{width:100px;height:auto}.pagination{width:100%;height:3rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.pagination li{list-style-type:none}.note-ui{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}@media (min-width: 600px){.note-ui>div{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;padding:0.2rem}input[type="file"]{width:5vw}}@media (max-width: 599px){input[type="file"]{width:100%}textarea,input[type="text"]{width:100%}}.note-ui label{width:5em;margin-right:0.5rem;text-align:right}.note-ui input:not([type=submit]),.note-ui textarea{-webkit-box-flex:1;-ms-flex:1;flex:1}.note-ui textarea{padding:0.1rem 0.3rem}#locate{margin-right:0.4rem}.mp-media li{list-style-type:none}.mp-media img{height:4em;width:4em}.map{margin-top:4px;height:200px}.marker{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAMAAACahl6sAAAAA3NCSVQICAjb4U/gAAAACXBIWXMAAAsTAAALEwEAmpwYAAACxFBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADMyaeDAAAA63RSTlMAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ozw9Pj9AQUJERUZHSElKS05PUlNVVldYWVpbXF1fYGFiY2RmZ2hpa2xtbm9wcXJzdHV2d3h5ent8fX+AgYKDhIWGh4iJiouMjo+QkZOUlZaXmJmam5ydnp+goaKjpKWmp6ipqqutrq+xsrO0tbe4ubq7vL2+v8DBwsPExcbHyMnKy8zP0NHS09TV1tfY2drb3N3f4OHi4+Tl5ujp6uvs7e7v8PHy8/T19vf4+fr7/P3+xn8cLwAAB2BJREFUGBntwYtjlWUdB/Dvuwtjo23CGPcxtlGAFhgWFCINSZciCYGKwLSbMwuQi4lgbkSTgYOAiYEI5a0JmQhRAYKBgmzJbSwgGTDYxs45nO8/0d0Mzu897+V53kv1+QD/9z8jd9T9ize/tfdw04VY+9mjf9hV/1xFWXEKQiV11Nytp5nIlfdq781HOBRWvHaBZuLvPVuWhoDLmbkjTgvOVN+CABu/qZ2WHZrTA4Fk3L2X9lxa2geBkzLlIO3rqBmIYBl/mM5ElmUjOPpuonPNkxEQqRUX6cqbn0EQFL1Dtzor4L9JF6jAK93hr4zlVOP4aPhpwH6qEvkO/DPsJBWqhF++9BGVqkuDL8raqNgvs+CDSVEqtysLniu9Qg3q0+Cxz7dSixcMeKrkNDVZCi/1PEptHoV3jDeoT3QMPDOXtnTEaEdTHjwyJkpLLm+rmjGm4IY0ILPXsImz1zXQmnoDnshrogVHnhiTjmv0v2/LFVowG554iUldXjEaid1Qvo9JRYfDAxOYzPlFeTAxYSeT+a0B7TIaaS72k1wkcfsRJjEd2i2gud+PQHJd5rXT1Nnu0KyonWauPpECS246TFPPQbMNNHN6PKzKep5mrg6BViUxmmgohA3zaaYOWv2UJvblw5ZZMcqihdBoQCdl+7Nh09Q4ZSuh0bOUNebDtgrKrvSFNjltFJ0ZBAeWUrYE2syg6OoEOJG6k6ITBnTZQdFiONPvLEWl0KQwTsm+VDg0kaJ10GQBJVe/AMdeo6Q1E3ocoWQlnBvUTskUaDGIkkt5cOFpStZDixmULIUb+W0UnIQWGyjo6ANXqikZDB2aKaiDO4VxCsqhwRBKSuHSDgpeggYzKThhwKWZFDRDgx9TUAW3cqIU5EC91ym4A67tpuCLUK+RiUW6wbUlFNwH5dKjTOx3cO92Cp6CckMpqIV7vSnYAuXupOBRKHCeib0D5e6loAwK7GFiR6DcTAo+CwW2MLFmKFdBQSEUWMvEWqHcQgp6QIFqJhY3oFolBRlQYDEFn4Jq1RRkQ4GlFORBtSUU9IMCtRRkQLW5FAyBAhuZWATKPUzBGCiwjYn9GcrdRcGDUOA4E9sP5YZS8Azcy4wzsc1QLiPOxF6FeyMo+BHUO8bEzhpw7VsUTId6L1PwObj2CwqGQ735FDwCt4xzTKwjDeqVUbAdbo2lYC806ElBfCBcWkNBDXQ4RME8uNP1AgVfhw4rKTiaClemU9IbOkymZBrcSGmg4ANo0YeS9w24MJmSWuhxgJKpcC79MCX3QI9nKPlTDhybTUkkG3qMo6gaThVcpuRtaJJ2kZLYWDhjbKPoB9Dl5xSd6glH5lN2E3SZRtkbKXBgXIyiRmiTG6GsBvYNO0dZJfTZShMLYdeAkzQxGvqU08xjsKfgA5poNqBPrxjNVBmw4cYmmqmBTr+mqZ9lwrLSFpq6FTrNormDQ2FNyg+v0tRJAzp176S5y+UGLCjaziSqoNfrTGb3zUgmY2E7kxkJvb7BpGJrSmAm7YE/MqkGaJbVyuRiG0dCkv3NY7RgAXRbR0ven1OA66Xf+WI7rYgXQrdxtKqxdvKwdHwsf+zcX7XRorehnXGMNkQb33x5fc3qTfV7WmjHg9BvEfVry4Z+xXFq9wK88Ba1uw1emErdGuCJri3UbA68sZx6RXvDG8Op1yvwyh5qdQe8Mp06HTXglcwWajQH3qmmPp358M5Q6rMJXtpObW6DlyZRlwPwVFoTNSmHtxZQj/NZ8FavTmqxDF7bQB3iJfDaKOpQD+/tpgZfhfemUL1D8EHaKSr3EPzwOFVryYIf8tqpWCX8sYpqRQvgj6FxKvUi/FJPpW6BX8ZTpZ3wz7tU6G74536q02jAP+mnqMzD8NP3qcqZrvBTzkUqshD+qqIabXnwV/8IlVgOv9VRhVgR/HZjnApsgv9epQI3w39fpntbEQS/oWulCIK76NZeBMMBunQPgmEq3TlsIBhSP6QrDyAoyunG8TQERZdmuvBtBMf36NyZTARHt4/o2OMIkoV0qiUHQZJ7gQ49iWBZQmdaeyBYel6mI5UImmV0or0XgqZvBx2oRvDU0L4r/RA8Azpp2woE0Sra1VmAICqM0KZVCKa1tCc6CMFUEqUtaxFUdbQjWoSgGhyjDWsRXM/TumgxgmtwjJatQ5Ctp1XREgTZ4BgtWodgq6M10WIEW3GUlqxB0K2lFZFBCLqiCC1YjeBbzeQ6ByL4BnYyqRUIg5VMpqM/wqB/B5OoRjhU01xbH4RD7zaaqkJYVNJMax7CIq+VJp5CeCyirCUX4ZF7jqJ5CJO5lJzphjDJOk1BBcLlESbWlIFwyTjJhB5C2MxiIh+mI2zSGpjANITPFF7vYArCx3iX15mIMPoar7UH4bSL1/gKwulW/qdtCKt6flJ8JMJqRJyfsBnhtZH/Fv00wqs4wo/VIsyW81/a+iHMel3iPz2NcHuS/3AuF+GWfZZ/9xjC7rv8mxMZCLsuR/lX0xF+U0geTEH4GfvIMvw3KOV2aPcXaWsyKghlwmgAAAAASUVORK5CYII=);background-size:contain;width:20px;height:20px}.map-menu{position:absolute;top:0;left:0;background:white;padding:0.4rem}.map-menu label{margin-left:3px;margin-right:3px}.contact{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;margin-top:1em;border-bottom:1px dashed grey}.contact img{margin-right:0.2rem;width:100px;height:100px}span[role=img][aria-label],span[role=img][aria-label]{position:relative}span[role=img][aria-label]:focus::after,span[role=img][aria-label]:hover::after{position:absolute;display:block;z-index:1;bottom:1.5em;left:0;max-width:5em;padding:0.5em 0.75em;border:0.05em solid #fff;border-radius:0.2em;-webkit-box-shadow:0.15em 0.15em 0.5em #000;box-shadow:0.15em 0.15em 0.5em #000;content:attr(aria-label);background-color:rgba(0,0,0,0.85);color:#fff;font-size:80%;-webkit-animation:TOOLTIP 0.1s ease-out 1;animation:TOOLTIP 0.1s ease-out 1}@-webkit-keyframes TOOLTIP{from{bottom:0.5em;background-color:transparent;border:0.05em solid rgba(255,255,255,0);color:rgba(255,255,255,0);-webkit-box-shadow:0 0 0 #000;box-shadow:0 0 0 #000}to{bottom:1.5em;background-color:rgba(0,0,0,0.85);border:0.05em solid #fff;color:#fff;-webkit-box-shadow:0.15em 0.15em 0.5em #000;box-shadow:0.15em 0.15em 0.5em #000}}@keyframes TOOLTIP{from{bottom:0.5em;background-color:transparent;border:0.05em solid rgba(255,255,255,0);color:rgba(255,255,255,0);-webkit-box-shadow:0 0 0 #000;box-shadow:0 0 0 #000}to{bottom:1.5em;background-color:rgba(0,0,0,0.85);border:0.05em solid #fff;color:#fff;-webkit-box-shadow:0.15em 0.15em 0.5em #000;box-shadow:0.15em 0.15em 0.5em #000}}@media print{span[role=img][aria-label]::after{content:" (" attr(aria-label) ") "}} +/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Jlc291cmNlcy9hc3NldHMvc2Fzcy9hcHAuc2NzcyIsIi4uLy4uLy4uL3Jlc291cmNlcy9hc3NldHMvc2Fzcy9sYXlvdXQuc2NzcyIsIi4uLy4uLy4uL3Jlc291cmNlcy9hc3NldHMvc2Fzcy9zdHlsZXMuc2NzcyIsIi4uLy4uLy4uL3Jlc291cmNlcy9hc3NldHMvc2Fzcy9wYWdpbmF0aW9uLnNjc3MiLCIuLi8uLi8uLi9yZXNvdXJjZXMvYXNzZXRzL3Nhc3Mvbm90ZS1mb3JtLnNjc3MiLCIuLi8uLi8uLi9yZXNvdXJjZXMvYXNzZXRzL3Nhc3MvbWFwYm94LnNjc3MiLCIuLi8uLi8uLi9yZXNvdXJjZXMvYXNzZXRzL3Nhc3MvY29udGFjdHMuc2NzcyIsIi4uLy4uLy4uL3Jlc291cmNlcy9hc3NldHMvc2Fzcy9lbW9qaS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLEtBQ0ksOEJBQ0EsQUFEQSxzQkFDQSxjQUFlLENBQ2xCLHFCQUtHLDJCQUFtQixBQUFuQixrQkFBbUIsQ0FDdEIsS0NWRyxlQUNBLGNBQ0EsaUJBQ0Esa0JBQ0Esb0JBQXFCLENBQ3hCLFdBR0csaUJBQWtCLENBQ3JCLFNBR0csZ0JBQWlCLENBQ3BCLE1BR0csb0JBQ0EsQUFEQSxvQkFDQSxBQURBLGFBQ0EsNEJBQXNCLEFBQXRCLDZCQUFzQixBQUF0QiwwQkFBc0IsQUFBdEIscUJBQXNCLENBQ3pCLGVBR0csb0JBQ0EsQUFEQSxvQkFDQSxBQURBLGFBQ0EsOEJBQ0EsQUFEQSw2QkFDQSxBQURBLHVCQUNBLEFBREEsbUJBQ0EseUJBQ0EsQUFEQSxzQkFDQSxBQURBLDhCQUNBLGdCQUFpQixDQUNwQixVQUdHLGdCQUNBLFdBQ0EsNEJBQTZCLENBQ2hDLGNBR0csb0JBQ0EsQUFEQSxvQkFDQSxBQURBLGFBQ0EseUJBQW1CLEFBQW5CLHNCQUFtQixBQUFuQixrQkFBbUIsQ0FDdEIsa0JBR0csZ0JBQWlCLENBQ3BCLGlCQUdHLHFCQUNBLFdBQVksQ0FDZixhQUdH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 */ \ No newline at end of file diff --git a/public/assets/css/app.css.br b/public/assets/css/app.css.br index ff23df5180f38bdbba5b9fbfc4a9f3bc165303e7..a9a5eb03f13af9652b33810033965687d5a6c47d 100644 GIT binary patch literal 4553 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 WWk{w>LhV9q^J5!wgCF)Ebn*r;xX()f diff --git a/public/assets/css/app.css.gz b/public/assets/css/app.css.gz index c7f0513a9d3c81f955178f6ab343ed9ba4591014..f2e8be038f14ff2dd8f26ba005bd294c5dbd0a84 100644 GIT binary patch literal 4833 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 H`Yr$fZ`6N< literal 4777 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 D_LqEj diff --git a/public/assets/frontend/mapbox-gl.css b/public/assets/frontend/mapbox-gl.css index 841457e2..efca2ec6 100644 --- a/public/assets/frontend/mapbox-gl.css +++ b/public/assets/frontend/mapbox-gl.css @@ -18,6 +18,17 @@ cursor: grabbing; } +.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate { + -ms-touch-action: pan-x pan-y; + touch-action: pan-x pan-y; +} +.mapboxgl-canvas-container.mapboxgl-touch-drag-pan { + -ms-touch-action: pinch-zoom; +} +.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan { + -ms-touch-action: none; + touch-action: none; +} .mapboxgl-ctrl-top-left, .mapboxgl-ctrl-top-right, .mapboxgl-ctrl-bottom-left, @@ -65,7 +76,7 @@ background-color: rgba(0,0,0,0.05); } .mapboxgl-ctrl-icon, -.mapboxgl-ctrl-icon > span.arrow { +.mapboxgl-ctrl-icon > .mapboxgl-ctrl-compass-arrow { speak: none; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; @@ -82,11 +93,16 @@ .mapboxgl-ctrl-icon.mapboxgl-ctrl-geolocate { background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%270%200%2020%2020%27%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%3E%0D%0A%20%20%3Cpath%20style%3D%27fill%3A%23333%3B%27%20d%3D%27M10%204C9%204%209%205%209%205L9%205.1A5%205%200%200%200%205.1%209L5%209C5%209%204%209%204%2010%204%2011%205%2011%205%2011L5.1%2011A5%205%200%200%200%209%2014.9L9%2015C9%2015%209%2016%2010%2016%2011%2016%2011%2015%2011%2015L11%2014.9A5%205%200%200%200%2014.9%2011L15%2011C15%2011%2016%2011%2016%2010%2016%209%2015%209%2015%209L14.9%209A5%205%200%200%200%2011%205.1L11%205C11%205%2011%204%2010%204zM10%206.5A3.5%203.5%200%200%201%2013.5%2010%203.5%203.5%200%200%201%2010%2013.5%203.5%203.5%200%200%201%206.5%2010%203.5%203.5%200%200%201%2010%206.5zM10%208.3A1.8%201.8%200%200%200%208.3%2010%201.8%201.8%200%200%200%2010%2011.8%201.8%201.8%200%200%200%2011.8%2010%201.8%201.8%200%200%200%2010%208.3z%27%20%2F%3E%0D%0A%3C%2Fsvg%3E"); } -.mapboxgl-ctrl-icon.mapboxgl-ctrl-geolocate.watching { +.mapboxgl-ctrl-icon.mapboxgl-ctrl-geolocate.mapboxgl-watching { background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%270%200%2020%2020%27%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%3E%0D%0A%20%20%3Cpath%20style%3D%27fill%3A%2300f%3B%27%20d%3D%27M10%204C9%204%209%205%209%205L9%205.1A5%205%200%200%200%205.1%209L5%209C5%209%204%209%204%2010%204%2011%205%2011%205%2011L5.1%2011A5%205%200%200%200%209%2014.9L9%2015C9%2015%209%2016%2010%2016%2011%2016%2011%2015%2011%2015L11%2014.9A5%205%200%200%200%2014.9%2011L15%2011C15%2011%2016%2011%2016%2010%2016%209%2015%209%2015%209L14.9%209A5%205%200%200%200%2011%205.1L11%205C11%205%2011%204%2010%204zM10%206.5A3.5%203.5%200%200%201%2013.5%2010%203.5%203.5%200%200%201%2010%2013.5%203.5%203.5%200%200%201%206.5%2010%203.5%203.5%200%200%201%2010%206.5zM10%208.3A1.8%201.8%200%200%200%208.3%2010%201.8%201.8%200%200%200%2010%2011.8%201.8%201.8%200%200%200%2011.8%2010%201.8%201.8%200%200%200%2010%208.3z%27%20%2F%3E%0D%0A%3C%2Fsvg%3E"); } - -.mapboxgl-ctrl-icon.mapboxgl-ctrl-compass > span.arrow { +.mapboxgl-ctrl-icon.mapboxgl-ctrl-fullscreen { + background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxOS4wLjEsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4KCjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c29kaXBvZGk9Imh0dHA6Ly9zb2RpcG9kaS5zb3VyY2Vmb3JnZS5uZXQvRFREL3NvZGlwb2RpLTAuZHRkIgogICB4bWxuczppbmtzY2FwZT0iaHR0cDovL3d3dy5pbmtzY2FwZS5vcmcvbmFtZXNwYWNlcy9pbmtzY2FwZSIKICAgdmVyc2lvbj0iMS4xIgogICBpZD0iTGF5ZXJfMSIKICAgeD0iMHB4IgogICB5PSIwcHgiCiAgIHZpZXdCb3g9IjAgMCAyMCAyMCIKICAgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjAgMjA7IgogICB4bWw6c3BhY2U9InByZXNlcnZlIgogICBpbmtzY2FwZTp2ZXJzaW9uPSIwLjkxIHIxMzcyNSIKICAgc29kaXBvZGk6ZG9jbmFtZT0iZnVsbHNjcmVlbi5zdmciPjxtZXRhZGF0YQogICAgIGlkPSJtZXRhZGF0YTQxODUiPjxyZGY6UkRGPjxjYzpXb3JrCiAgICAgICAgIHJkZjphYm91dD0iIj48ZGM6Zm9ybWF0PmltYWdlL3N2Zyt4bWw8L2RjOmZvcm1hdD48ZGM6dHlwZQogICAgICAgICAgIHJkZjpyZXNvdXJjZT0iaHR0cDovL3B1cmwub3JnL2RjL2RjbWl0eXBlL1N0aWxsSW1hZ2UiIC8+PGRjOnRpdGxlPjwvZGM6dGl0bGU+PC9jYzpXb3JrPjwvcmRmOlJERj48L21ldGFkYXRhPjxkZWZzCiAgICAgaWQ9ImRlZnM0MTgzIiAvPjxzb2RpcG9kaTpuYW1lZHZpZXcKICAgICBwYWdlY29sb3I9IiNmZmZmZmYiCiAgICAgYm9yZGVyY29sb3I9IiM2NjY2NjYiCiAgICAgYm9yZGVyb3BhY2l0eT0iMSIKICAgICBvYmplY3R0b2xlcmFuY2U9IjEwIgogICAgIGdyaWR0b2xlcmFuY2U9IjEwIgogICAgIGd1aWRldG9sZXJhbmNlPSIxMCIKICAgICBpbmtzY2FwZTpwYWdlb3BhY2l0eT0iMCIKICAgICBpbmtzY2FwZTpwYWdlc2hhZG93PSIyIgogICAgIGlua3NjYXBlOndpbmRvdy13aWR0aD0iMTQ3MSIKICAgICBpbmtzY2FwZTp3aW5kb3ctaGVpZ2h0PSI2OTUiCiAgICAgaWQ9Im5hbWVkdmlldzQxODEiCiAgICAgc2hvd2dyaWQ9ImZhbHNlIgogICAgIGlua3NjYXBlOnpvb209IjExLjMxMzcwOCIKICAgICBpbmtzY2FwZTpjeD0iMTQuNjk4MjgiCiAgICAgaW5rc2NhcGU6Y3k9IjEwLjUyNjY4OSIKICAgICBpbmtzY2FwZTp3aW5kb3cteD0iNjk3IgogICAgIGlua3NjYXBlOndpbmRvdy15PSIyOTgiCiAgICAgaW5rc2NhcGU6d2luZG93LW1heGltaXplZD0iMCIKICAgICBpbmtzY2FwZTpjdXJyZW50LWxheWVyPSJMYXllcl8xIgogICAgIGlua3NjYXBlOnNuYXAtYmJveD0idHJ1ZSIKICAgICBpbmtzY2FwZTpiYm94LXBhdGhzPSJ0cnVlIgogICAgIGlua3NjYXBlOm9iamVjdC1wYXRocz0idHJ1ZSIKICAgICBpbmtzY2FwZTpiYm94LW5vZGVzPSJ0cnVlIgogICAgIGlua3NjYXBlOm9iamVjdC1ub2Rlcz0idHJ1ZSI+PGlua3NjYXBlOmdyaWQKICAgICAgIHR5cGU9Inh5Z3JpZCIKICAgICAgIGlkPSJncmlkNjA3NiIgLz48L3NvZGlwb2RpOm5hbWVkdmlldz48cGF0aAogICAgIGQ9Ik0gNSA0IEMgNC41IDQgNCA0LjUgNCA1IEwgNCA2IEwgNCA5IEwgNC41IDkgTCA1Ljc3NzM0MzggNy4yOTY4NzUgQyA2Ljc3NzEzMTkgOC4wNjAyMTMxIDcuODM1NzY1IDguOTU2NTcyOCA4Ljg5MDYyNSAxMCBDIDcuODI1NzEyMSAxMS4wNjMzIDYuNzc2MTc5MSAxMS45NTE2NzUgNS43ODEyNSAxMi43MDcwMzEgTCA0LjUgMTEgTCA0IDExIEwgNCAxNSBDIDQgMTUuNSA0LjUgMTYgNSAxNiBMIDkgMTYgTCA5IDE1LjUgTCA3LjI3MzQzNzUgMTQuMjA1MDc4IEMgOC4wNDI4OTMxIDEzLjE4Nzg4NiA4LjkzOTU0NDEgMTIuMTMzNDgxIDkuOTYwOTM3NSAxMS4wNjgzNTkgQyAxMS4wNDIzNzEgMTIuMTQ2OTkgMTEuOTQyMDkzIDEzLjIxMTIgMTIuNzA3MDMxIDE0LjIxODc1IEwgMTEgMTUuNSBMIDExIDE2IEwgMTQgMTYgTCAxNSAxNiBDIDE1LjUgMTYgMTYgMTUuNSAxNiAxNSBMIDE2IDE0IEwgMTYgMTEgTCAxNS41IDExIEwgMTQuMjA1MDc4IDEyLjcyNjU2MiBDIDEzLjE3Nzk4NSAxMS45NDk2MTcgMTIuMTEyNzE4IDExLjA0MzU3NyAxMS4wMzcxMDkgMTAuMDA5NzY2IEMgMTIuMTUxODU2IDguOTgxMDYxIDEzLjIyNDM0NSA4LjA3OTg2MjQgMTQuMjI4NTE2IDcuMzA0Njg3NSBMIDE1LjUgOSBMIDE2IDkgTCAxNiA1IEMgMTYgNC41IDE1LjUgNCAxNSA0IEwgMTEgNCBMIDExIDQuNSBMIDEyLjcwMzEyNSA1Ljc3NzM0MzggQyAxMS45MzI2NDcgNi43ODY0ODM0IDExLjAyNjY5MyA3Ljg1NTQ3MTIgOS45NzA3MDMxIDguOTE5OTIxOSBDIDguOTU4NDczOSA3LjgyMDQ5NDMgOC4wNjk4NzY3IDYuNzYyNzE4OCA3LjMwNDY4NzUgNS43NzE0ODQ0IEwgOSA0LjUgTCA5IDQgTCA2IDQgTCA1IDQgeiAiCiAgICAgaWQ9InBhdGg0MTY5IiAvPjwvc3ZnPg=="); +} +.mapboxgl-ctrl-icon.mapboxgl-ctrl-shrink { + background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxOS4wLjEsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4KCjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c29kaXBvZGk9Imh0dHA6Ly9zb2RpcG9kaS5zb3VyY2Vmb3JnZS5uZXQvRFREL3NvZGlwb2RpLTAuZHRkIgogICB4bWxuczppbmtzY2FwZT0iaHR0cDovL3d3dy5pbmtzY2FwZS5vcmcvbmFtZXNwYWNlcy9pbmtzY2FwZSIKICAgdmVyc2lvbj0iMS4xIgogICBpZD0iTGF5ZXJfMSIKICAgeD0iMHB4IgogICB5PSIwcHgiCiAgIHZpZXdCb3g9IjAgMCAyMCAyMCIKICAgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjAgMjA7IgogICB4bWw6c3BhY2U9InByZXNlcnZlIgogICBpbmtzY2FwZTp2ZXJzaW9uPSIwLjkxIHIxMzcyNSIKICAgc29kaXBvZGk6ZG9jbmFtZT0ic2hyaW5rLnN2ZyI+PG1ldGFkYXRhCiAgICAgaWQ9Im1ldGFkYXRhMTkiPjxyZGY6UkRGPjxjYzpXb3JrCiAgICAgICAgIHJkZjphYm91dD0iIj48ZGM6Zm9ybWF0PmltYWdlL3N2Zyt4bWw8L2RjOmZvcm1hdD48ZGM6dHlwZQogICAgICAgICAgIHJkZjpyZXNvdXJjZT0iaHR0cDovL3B1cmwub3JnL2RjL2RjbWl0eXBlL1N0aWxsSW1hZ2UiIC8+PGRjOnRpdGxlPjwvZGM6dGl0bGU+PC9jYzpXb3JrPjwvcmRmOlJERj48L21ldGFkYXRhPjxkZWZzCiAgICAgaWQ9ImRlZnMxNyIgLz48c29kaXBvZGk6bmFtZWR2aWV3CiAgICAgcGFnZWNvbG9yPSIjZmZmZmZmIgogICAgIGJvcmRlcmNvbG9yPSIjNjY2NjY2IgogICAgIGJvcmRlcm9wYWNpdHk9IjEiCiAgICAgb2JqZWN0dG9sZXJhbmNlPSIxMCIKICAgICBncmlkdG9sZXJhbmNlPSIxMCIKICAgICBndWlkZXRvbGVyYW5jZT0iMTAiCiAgICAgaW5rc2NhcGU6cGFnZW9wYWNpdHk9IjAiCiAgICAgaW5rc2NhcGU6cGFnZXNoYWRvdz0iMiIKICAgICBpbmtzY2FwZTp3aW5kb3ctd2lkdGg9IjIwMjEiCiAgICAgaW5rc2NhcGU6d2luZG93LWhlaWdodD0iOTA4IgogICAgIGlkPSJuYW1lZHZpZXcxNSIKICAgICBzaG93Z3JpZD0iZmFsc2UiCiAgICAgaW5rc2NhcGU6em9vbT0iMSIKICAgICBpbmtzY2FwZTpjeD0iNC45NTAxMDgyIgogICAgIGlua3NjYXBlOmN5PSIxMC44NTQ3NDciCiAgICAgaW5rc2NhcGU6d2luZG93LXg9IjAiCiAgICAgaW5rc2NhcGU6d2luZG93LXk9IjAiCiAgICAgaW5rc2NhcGU6d2luZG93LW1heGltaXplZD0iMCIKICAgICBpbmtzY2FwZTpjdXJyZW50LWxheWVyPSJMYXllcl8xIgogICAgIGlua3NjYXBlOnNuYXAtYmJveD0idHJ1ZSIKICAgICBpbmtzY2FwZTpiYm94LXBhdGhzPSJ0cnVlIgogICAgIGlua3NjYXBlOnNuYXAtYmJveC1lZGdlLW1pZHBvaW50cz0idHJ1ZSIKICAgICBpbmtzY2FwZTpiYm94LW5vZGVzPSJ0cnVlIgogICAgIGlua3NjYXBlOnNuYXAtYmJveC1taWRwb2ludHM9InRydWUiCiAgICAgaW5rc2NhcGU6b2JqZWN0LXBhdGhzPSJ0cnVlIgogICAgIGlua3NjYXBlOm9iamVjdC1ub2Rlcz0idHJ1ZSI+PGlua3NjYXBlOmdyaWQKICAgICAgIHR5cGU9Inh5Z3JpZCIKICAgICAgIGlkPSJncmlkNDE0NyIgLz48L3NvZGlwb2RpOm5hbWVkdmlldz48cGF0aAogICAgIHN0eWxlPSJmaWxsOiMwMDAwMDAiCiAgICAgZD0iTSA0LjI0MjE4NzUgMy40OTIxODc1IEEgMC43NTAwNzUgMC43NTAwNzUgMCAwIDAgMy43MTg3NSA0Ljc4MTI1IEwgNS45NjQ4NDM4IDcuMDI3MzQzOCBMIDQgOC41IEwgNCA5IEwgOCA5IEMgOC41MDAwMDEgOC45OTk5OTg4IDkgOC40OTk5OTkyIDkgOCBMIDkgNCBMIDguNSA0IEwgNy4wMTc1NzgxIDUuOTU1MDc4MSBMIDQuNzgxMjUgMy43MTg3NSBBIDAuNzUwMDc1IDAuNzUwMDc1IDAgMCAwIDQuMjQyMTg3NSAzLjQ5MjE4NzUgeiBNIDE1LjczNDM3NSAzLjQ5MjE4NzUgQSAwLjc1MDA3NSAwLjc1MDA3NSAwIDAgMCAxNS4yMTg3NSAzLjcxODc1IEwgMTIuOTg0Mzc1IDUuOTUzMTI1IEwgMTEuNSA0IEwgMTEgNCBMIDExIDggQyAxMSA4LjQ5OTk5OTIgMTEuNDk5OTk5IDguOTk5OTk4OCAxMiA5IEwgMTYgOSBMIDE2IDguNSBMIDE0LjAzNTE1NiA3LjAyNzM0MzggTCAxNi4yODEyNSA0Ljc4MTI1IEEgMC43NTAwNzUgMC43NTAwNzUgMCAwIDAgMTUuNzM0Mzc1IDMuNDkyMTg3NSB6IE0gNCAxMSBMIDQgMTEuNSBMIDUuOTY0ODQzOCAxMi45NzI2NTYgTCAzLjcxODc1IDE1LjIxODc1IEEgMC43NTEzMDA5NiAwLjc1MTMwMDk2IDAgMSAwIDQuNzgxMjUgMTYuMjgxMjUgTCA3LjAyNzM0MzggMTQuMDM1MTU2IEwgOC41IDE2IEwgOSAxNiBMIDkgMTIgQyA5IDExLjUwMDAwMSA4LjUwMDAwMSAxMS4wMDAwMDEgOCAxMSBMIDQgMTEgeiBNIDEyIDExIEMgMTEuNDk5OTk5IDExLjAwMDAwMSAxMSAxMS41MDAwMDEgMTEgMTIgTCAxMSAxNiBMIDExLjUgMTYgTCAxMi45NzI2NTYgMTQuMDM1MTU2IEwgMTUuMjE4NzUgMTYuMjgxMjUgQSAwLjc1MTMwMDk2IDAuNzUxMzAwOTYgMCAxIDAgMTYuMjgxMjUgMTUuMjE4NzUgTCAxNC4wMzUxNTYgMTIuOTcyNjU2IEwgMTYgMTEuNSBMIDE2IDExIEwgMTIgMTEgeiAiCiAgICAgaWQ9InBhdGg3IiAvPjwvc3ZnPg=="); +} +.mapboxgl-ctrl-icon.mapboxgl-ctrl-compass > .mapboxgl-ctrl-compass-arrow { width: 20px; height: 20px; margin: 5px; @@ -95,12 +111,22 @@ display: inline-block; } +a.mapboxgl-ctrl-logo { + width: 85px; + height: 21px; + margin: 0 0 -3px -3px; + display: block; + background-repeat: no-repeat; + cursor: pointer; + background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiAgIHZpZXdCb3g9IjAgMCA4NC40OSAyMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgODQuNDkgMjE7IiB4bWw6c3BhY2U9InByZXNlcnZlIj48c3R5bGUgdHlwZT0idGV4dC9jc3MiPiAgLnN0MHtvcGFjaXR5OjAuOTtmaWxsOiNGRkZGRkY7ZW5hYmxlLWJhY2tncm91bmQ6bmV3ICAgIDt9ICAuc3Qxe29wYWNpdHk6MC4zNTtlbmFibGUtYmFja2dyb3VuZDpuZXcgICAgO308L3N0eWxlPjxnPiAgPHBhdGggY2xhc3M9InN0MCIgZD0iTTgzLjI1LDE0LjI2YzAsMC4xMi0wLjA5LDAuMjEtMC4yMSwwLjIxaC0xLjYxYy0wLjEzLDAtMC4yNC0wLjA2LTAuMy0wLjE3bC0xLjQ0LTIuMzlsLTEuNDQsMi4zOSAgICBjLTAuMDYsMC4xMS0wLjE4LDAuMTctMC4zLDAuMTdoLTEuNjFjLTAuMDQsMC0wLjA4LTAuMDEtMC4xMi0wLjAzYy0wLjA5LTAuMDYtMC4xMy0wLjE5LTAuMDYtMC4yOGwwLDBsMi40My0zLjY4TDc2LjIsNi44NCAgICBjLTAuMDItMC4wMy0wLjAzLTAuMDctMC4wMy0wLjEyYzAtMC4xMiwwLjA5LTAuMjEsMC4yMS0wLjIxaDEuNjFjMC4xMywwLDAuMjQsMC4wNiwwLjMsMC4xN2wxLjQxLDIuMzZsMS40LTIuMzUgICAgYzAuMDYtMC4xMSwwLjE4LTAuMTcsMC4zLTAuMTdIODNjMC4wNCwwLDAuMDgsMC4wMSwwLjEyLDAuMDNjMC4wOSwwLjA2LDAuMTMsMC4xOSwwLjA2LDAuMjhsMCwwbC0yLjM3LDMuNjNsMi40MywzLjY3ICAgIEM4My4yNCwxNC4xOCw4My4yNSwxNC4yMiw4My4yNSwxNC4yNnoiLz4gIDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik02Ni4yNCw5LjU5Yy0wLjM5LTEuODgtMS45Ni0zLjI4LTMuODQtMy4yOGMtMS4wMywwLTIuMDMsMC40Mi0yLjczLDEuMThWMy41MWMwLTAuMTMtMC4xLTAuMjMtMC4yMy0wLjIzaC0xLjQgICAgYy0wLjEzLDAtMC4yMywwLjExLTAuMjMsMC4yM3YxMC43MmMwLDAuMTMsMC4xLDAuMjMsMC4yMywwLjIzaDEuNGMwLjEzLDAsMC4yMy0wLjExLDAuMjMtMC4yM1YxMy41YzAuNzEsMC43NSwxLjcsMS4xOCwyLjczLDEuMTggICAgYzEuODgsMCwzLjQ1LTEuNDEsMy44NC0zLjI5QzY2LjM3LDEwLjc5LDY2LjM3LDEwLjE4LDY2LjI0LDkuNTlMNjYuMjQsOS41OXogTTYyLjA4LDEzYy0xLjMyLDAtMi4zOS0xLjExLTIuNDEtMi40OHYtMC4wNiAgICBjMC4wMi0xLjM4LDEuMDktMi40OCwyLjQxLTIuNDhzMi40MiwxLjEyLDIuNDIsMi41MVM2My40MSwxMyw2Mi4wOCwxM3oiLz4gIDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik03MS42Nyw2LjMyYy0xLjk4LTAuMDEtMy43MiwxLjM1LTQuMTYsMy4yOWMtMC4xMywwLjU5LTAuMTMsMS4xOSwwLDEuNzdjMC40NCwxLjk0LDIuMTcsMy4zMiw0LjE3LDMuMyAgICBjMi4zNSwwLDQuMjYtMS44Nyw0LjI2LTQuMTlTNzQuMDQsNi4zMiw3MS42Nyw2LjMyeiBNNzEuNjUsMTMuMDFjLTEuMzMsMC0yLjQyLTEuMTItMi40Mi0yLjUxczEuMDgtMi41MiwyLjQyLTIuNTIgICAgYzEuMzMsMCwyLjQyLDEuMTIsMi40MiwyLjUxUzcyLjk5LDEzLDcxLjY1LDEzLjAxTDcxLjY1LDEzLjAxeiIvPiAgPHBhdGggY2xhc3M9InN0MSIgZD0iTTYyLjA4LDcuOThjLTEuMzIsMC0yLjM5LDEuMTEtMi40MSwyLjQ4djAuMDZDNTkuNjgsMTEuOSw2MC43NSwxMyw2Mi4wOCwxM3MyLjQyLTEuMTIsMi40Mi0yLjUxICAgIFM2My40MSw3Ljk4LDYyLjA4LDcuOTh6IE02Mi4wOCwxMS43NmMtMC42MywwLTEuMTQtMC41Ni0xLjE3LTEuMjV2LTAuMDRjMC4wMS0wLjY5LDAuNTQtMS4yNSwxLjE3LTEuMjUgICAgYzAuNjMsMCwxLjE3LDAuNTcsMS4xNywxLjI3QzYzLjI0LDExLjIsNjIuNzMsMTEuNzYsNjIuMDgsMTEuNzZ6Ii8+ICA8cGF0aCBjbGFzcz0ic3QxIiBkPSJNNzEuNjUsNy45OGMtMS4zMywwLTIuNDIsMS4xMi0yLjQyLDIuNTFTNzAuMzIsMTMsNzEuNjUsMTNzMi40Mi0xLjEyLDIuNDItMi41MVM3Mi45OSw3Ljk4LDcxLjY1LDcuOTh6ICAgICBNNzEuNjUsMTEuNzZjLTAuNjQsMC0xLjE3LTAuNTctMS4xNy0xLjI3YzAtMC43LDAuNTMtMS4yNiwxLjE3LTEuMjZzMS4xNywwLjU3LDEuMTcsMS4yN0M3Mi44MiwxMS4yMSw3Mi4yOSwxMS43Niw3MS42NSwxMS43NnoiICAgIC8+ICA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNNDUuNzQsNi41M2gtMS40Yy0wLjEzLDAtMC4yMywwLjExLTAuMjMsMC4yM3YwLjczYy0wLjcxLTAuNzUtMS43LTEuMTgtMi43My0xLjE4ICAgIGMtMi4xNywwLTMuOTQsMS44Ny0zLjk0LDQuMTlzMS43Nyw0LjE5LDMuOTQsNC4xOWMxLjA0LDAsMi4wMy0wLjQzLDIuNzMtMS4xOXYwLjczYzAsMC4xMywwLjEsMC4yMywwLjIzLDAuMjNoMS40ICAgIGMwLjEzLDAsMC4yMy0wLjExLDAuMjMtMC4yM1Y2Ljc0YzAtMC4xMi0wLjA5LTAuMjItMC4yMi0wLjIyQzQ1Ljc1LDYuNTMsNDUuNzUsNi41Myw0NS43NCw2LjUzeiBNNDQuMTIsMTAuNTMgICAgQzQ0LjExLDExLjksNDMuMDMsMTMsNDEuNzEsMTNzLTIuNDItMS4xMi0yLjQyLTIuNTFzMS4wOC0yLjUyLDIuNC0yLjUyYzEuMzMsMCwyLjM5LDEuMTEsMi40MSwyLjQ4TDQ0LjEyLDEwLjUzeiIvPiAgPHBhdGggY2xhc3M9InN0MSIgZD0iTTQxLjcxLDcuOThjLTEuMzMsMC0yLjQyLDEuMTItMi40MiwyLjUxUzQwLjM3LDEzLDQxLjcxLDEzczIuMzktMS4xMSwyLjQxLTIuNDh2LTAuMDYgICAgQzQ0LjEsOS4wOSw0My4wMyw3Ljk4LDQxLjcxLDcuOTh6IE00MC41NSwxMC40OWMwLTAuNywwLjUyLTEuMjcsMS4xNy0xLjI3YzAuNjQsMCwxLjE0LDAuNTYsMS4xNywxLjI1djAuMDQgICAgYy0wLjAxLDAuNjgtMC41MywxLjI0LTEuMTcsMS4yNEM0MS4wOCwxMS43NSw0MC41NSwxMS4xOSw0MC41NSwxMC40OXoiLz4gIDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik01Mi40MSw2LjMyYy0xLjAzLDAtMi4wMywwLjQyLTIuNzMsMS4xOFY2Ljc1YzAtMC4xMy0wLjEtMC4yMy0wLjIzLTAuMjNoLTEuNGMtMC4xMywwLTAuMjMsMC4xMS0wLjIzLDAuMjMgICAgdjEwLjcyYzAsMC4xMywwLjEsMC4yMywwLjIzLDAuMjNoMS40YzAuMTMsMCwwLjIzLTAuMSwwLjIzLTAuMjNWMTMuNWMwLjcxLDAuNzUsMS43LDEuMTgsMi43NCwxLjE4YzIuMTcsMCwzLjk0LTEuODcsMy45NC00LjE5ICAgIFM1NC41OCw2LjMyLDUyLjQxLDYuMzJ6IE01Mi4wOCwxMy4wMWMtMS4zMiwwLTIuMzktMS4xMS0yLjQyLTIuNDh2LTAuMDdjMC4wMi0xLjM4LDEuMDktMi40OSwyLjQtMi40OWMxLjMyLDAsMi40MSwxLjEyLDIuNDEsMi41MSAgICBTNTMuNCwxMyw1Mi4wOCwxMy4wMUw1Mi4wOCwxMy4wMXoiLz4gIDxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik01Mi4wOCw3Ljk4Yy0xLjMyLDAtMi4zOSwxLjExLTIuNDIsMi40OHYwLjA2YzAuMDMsMS4zOCwxLjEsMi40OCwyLjQyLDIuNDhzMi40MS0xLjEyLDIuNDEtMi41MSAgICBTNTMuNCw3Ljk4LDUyLjA4LDcuOTh6IE01Mi4wOCwxMS43NmMtMC42MywwLTEuMTQtMC41Ni0xLjE3LTEuMjV2LTAuMDRjMC4wMS0wLjY5LDAuNTQtMS4yNSwxLjE3LTEuMjVjMC42MywwLDEuMTcsMC41OCwxLjE3LDEuMjcgICAgUzUyLjcyLDExLjc2LDUyLjA4LDExLjc2eiIvPiAgPHBhdGggY2xhc3M9InN0MCIgZD0iTTM2LjA4LDE0LjI0YzAsMC4xMy0wLjEsMC4yMy0wLjIzLDAuMjNoLTEuNDFjLTAuMTMsMC0wLjIzLTAuMTEtMC4yMy0wLjIzVjkuNjhjMC0wLjk4LTAuNzQtMS43MS0xLjYyLTEuNzEgICAgYy0wLjgsMC0xLjQ2LDAuNy0xLjU5LDEuNjJsMC4wMSw0LjY2YzAsMC4xMy0wLjExLDAuMjMtMC4yMywwLjIzaC0xLjQxYy0wLjEzLDAtMC4yMy0wLjExLTAuMjMtMC4yM1Y5LjY4ICAgIGMwLTAuOTgtMC43NC0xLjcxLTEuNjItMS43MWMtMC44NSwwLTEuNTQsMC43OS0xLjYsMS44djQuNDhjMCwwLjEzLTAuMSwwLjIzLTAuMjMsMC4yM2gtMS40Yy0wLjEzLDAtMC4yMy0wLjExLTAuMjMtMC4yM1Y2Ljc0ICAgIGMwLjAxLTAuMTMsMC4xLTAuMjIsMC4yMy0wLjIyaDEuNGMwLjEzLDAsMC4yMiwwLjExLDAuMjMsMC4yMlY3LjRjMC41LTAuNjgsMS4zLTEuMDksMi4xNi0xLjFoMC4wM2MxLjA5LDAsMi4wOSwwLjYsMi42LDEuNTUgICAgYzAuNDUtMC45NSwxLjQtMS41NSwyLjQ0LTEuNTZjMS42MiwwLDIuOTMsMS4yNSwyLjksMi43OEwzNi4wOCwxNC4yNHoiLz4gIDxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik04NC4zNCwxMy41OWwtMC4wNy0wLjEzbC0xLjk2LTIuOTlsMS45NC0yLjk1YzAuNDQtMC42NywwLjI2LTEuNTYtMC40MS0yLjAyYy0wLjAyLDAtMC4wMywwLTAuMDQtMC4wMSAgICBjLTAuMjMtMC4xNS0wLjUtMC4yMi0wLjc4LTAuMjJoLTEuNjFjLTAuNTYsMC0xLjA4LDAuMjktMS4zNywwLjc4TDc5LjcyLDYuNmwtMC4zNC0wLjU2Qzc5LjA5LDUuNTYsNzguNTcsNS4yNyw3OCw1LjI3aC0xLjYgICAgYy0wLjYsMC0xLjEzLDAuMzctMS4zNSwwLjkyYy0yLjE5LTEuNjYtNS4yOC0xLjQ3LTcuMjYsMC40NWMtMC4zNSwwLjM0LTAuNjUsMC43Mi0wLjg5LDEuMTRjLTAuOS0xLjYyLTIuNTgtMi43Mi00LjUtMi43MiAgICBjLTAuNSwwLTEuMDEsMC4wNy0xLjQ4LDAuMjNWMy41MWMwLTAuODItMC42Ni0xLjQ4LTEuNDctMS40OGgtMS40Yy0wLjgxLDAtMS40NywwLjY2LTEuNDcsMS40N3YzLjc1ICAgIGMtMC45NS0xLjM2LTIuNS0yLjE4LTQuMTctMi4xOWMtMC43NCwwLTEuNDYsMC4xNi0yLjEyLDAuNDdjLTAuMjQtMC4xNy0wLjU0LTAuMjYtMC44NC0wLjI2aC0xLjRjLTAuNDUsMC0wLjg3LDAuMjEtMS4xNSwwLjU2ICAgIGMtMC4wMi0wLjAzLTAuMDQtMC4wNS0wLjA3LTAuMDhjLTAuMjgtMC4zLTAuNjgtMC40Ny0xLjA5LTAuNDdoLTEuMzljLTAuMywwLTAuNiwwLjA5LTAuODQsMC4yNmMtMC42Ny0wLjMtMS4zOS0wLjQ2LTIuMTItMC40NiAgICBjLTEuODMsMC0zLjQzLDEtNC4zNywyLjVjLTAuMi0wLjQ2LTAuNDgtMC44OS0wLjgzLTEuMjVjLTAuOC0wLjgxLTEuODktMS4yNS0zLjAyLTEuMjVoLTAuMDFjLTAuODksMC4wMS0xLjc1LDAuMzMtMi40NiwwLjg4ICAgIGMtMC43NC0wLjU3LTEuNjQtMC44OC0yLjU3LTAuODhIMjguMWMtMC4yOSwwLTAuNTgsMC4wMy0wLjg2LDAuMTFjLTAuMjgsMC4wNi0wLjU2LDAuMTYtMC44MiwwLjI4Yy0wLjIxLTAuMTItMC40NS0wLjE4LTAuNy0wLjE4ICAgIGgtMS40Yy0wLjgyLDAtMS40NywwLjY2LTEuNDcsMS40N3Y3LjVjMCwwLjgyLDAuNjYsMS40NywxLjQ3LDEuNDdoMS40YzAuODIsMCwxLjQ4LTAuNjYsMS40OC0xLjQ4bDAsMFY5Ljc5ICAgIGMwLjAzLTAuMzYsMC4yMy0wLjU5LDAuMzYtMC41OWMwLjE4LDAsMC4zOCwwLjE4LDAuMzgsMC40N3Y0LjU3YzAsMC44MiwwLjY2LDEuNDcsMS40NywxLjQ3aDEuNDFjMC44MiwwLDEuNDctMC42NiwxLjQ3LTEuNDcgICAgbC0wLjAxLTQuNTdjMC4wNi0wLjMyLDAuMjUtMC40NywwLjM1LTAuNDdjMC4xOCwwLDAuMzgsMC4xOCwwLjM4LDAuNDd2NC41N2MwLDAuODIsMC42NiwxLjQ3LDEuNDcsMS40N2gxLjQxICAgIGMwLjgyLDAsMS40Ny0wLjY2LDEuNDctMS40N3YtMC4zOGMwLjk2LDEuMjksMi40NiwyLjA2LDQuMDYsMi4wNmMwLjc0LDAsMS40Ni0wLjE2LDIuMTItMC40N2MwLjI0LDAuMTcsMC41NCwwLjI2LDAuODQsMC4yNmgxLjM5ICAgIGMwLjMsMCwwLjYtMC4wOSwwLjg0LTAuMjZ2Mi4wMWMwLDAuODIsMC42NiwxLjQ3LDEuNDcsMS40N2gxLjRjMC44MiwwLDEuNDctMC42NiwxLjQ3LTEuNDd2LTEuNzdjMC40OCwwLjE1LDAuOTksMC4yMywxLjQ5LDAuMjIgICAgYzEuNywwLDMuMjItMC44Nyw0LjE3LTIuMnYwLjUyYzAsMC44MiwwLjY2LDEuNDcsMS40NywxLjQ3aDEuNGMwLjMsMCwwLjYtMC4wOSwwLjg0LTAuMjZjMC42NiwwLjMxLDEuMzksMC40NywyLjEyLDAuNDcgICAgYzEuOTIsMCwzLjYtMS4xLDQuNDktMi43M2MxLjU0LDIuNjUsNC45NSwzLjUzLDcuNTgsMS45OGMwLjE4LTAuMTEsMC4zNi0wLjIyLDAuNTMtMC4zNmMwLjIyLDAuNTUsMC43NiwwLjkxLDEuMzUsMC45SDc4ICAgIGMwLjU2LDAsMS4wOC0wLjI5LDEuMzctMC43OGwwLjM3LTAuNjFsMC4zNywwLjYxYzAuMjksMC40OCwwLjgxLDAuNzgsMS4zOCwwLjc4aDEuNmMwLjgxLDAsMS40Ni0wLjY2LDEuNDUtMS40NiAgICBDODQuNDksMTQuMDIsODQuNDQsMTMuOCw4NC4zNCwxMy41OUw4NC4zNCwxMy41OXogTTM1Ljg2LDE0LjQ3aC0xLjQxYy0wLjEzLDAtMC4yMy0wLjExLTAuMjMtMC4yM1Y5LjY4ICAgIGMwLTAuOTgtMC43NC0xLjcxLTEuNjItMS43MWMtMC44LDAtMS40NiwwLjctMS41OSwxLjYybDAuMDEsNC42NmMwLDAuMTMtMC4xLDAuMjMtMC4yMywwLjIzaC0xLjQxYy0wLjEzLDAtMC4yMy0wLjExLTAuMjMtMC4yMyAgICBWOS42OGMwLTAuOTgtMC43NC0xLjcxLTEuNjItMS43MWMtMC44NSwwLTEuNTQsMC43OS0xLjYsMS44djQuNDhjMCwwLjEzLTAuMSwwLjIzLTAuMjMsMC4yM2gtMS40Yy0wLjEzLDAtMC4yMy0wLjExLTAuMjMtMC4yMyAgICBWNi43NGMwLjAxLTAuMTMsMC4xMS0wLjIyLDAuMjMtMC4yMmgxLjRjMC4xMywwLDAuMjIsMC4xMSwwLjIzLDAuMjJWNy40YzAuNS0wLjY4LDEuMy0xLjA5LDIuMTYtMS4xaDAuMDMgICAgYzEuMDksMCwyLjA5LDAuNiwyLjYsMS41NWMwLjQ1LTAuOTUsMS40LTEuNTUsMi40NC0xLjU2YzEuNjIsMCwyLjkzLDEuMjUsMi45LDIuNzhsMC4wMSw1LjE2QzM2LjA5LDE0LjM2LDM1Ljk4LDE0LjQ2LDM1Ljg2LDE0LjQ3ICAgIEwzNS44NiwxNC40N3ogTTQ1Ljk3LDE0LjI0YzAsMC4xMy0wLjEsMC4yMy0wLjIzLDAuMjNoLTEuNGMtMC4xMywwLTAuMjMtMC4xMS0wLjIzLTAuMjNWMTMuNWMtMC43LDAuNzYtMS42OSwxLjE4LTIuNzIsMS4xOCAgICBjLTIuMTcsMC0zLjk0LTEuODctMy45NC00LjE5czEuNzctNC4xOSwzLjk0LTQuMTljMS4wMywwLDIuMDIsMC40MywyLjczLDEuMThWNi43NGMwLTAuMTMsMC4xLTAuMjMsMC4yMy0wLjIzaDEuNCAgICBjMC4xMi0wLjAxLDAuMjIsMC4wOCwwLjIzLDAuMjFjMCwwLjAxLDAsMC4wMSwwLDAuMDJ2Ny41MWgtMC4wMVYxNC4yNHogTTUyLjQxLDE0LjY3Yy0xLjAzLDAtMi4wMi0wLjQzLTIuNzMtMS4xOHYzLjk3ICAgIGMwLDAuMTMtMC4xLDAuMjMtMC4yMywwLjIzaC0xLjRjLTAuMTMsMC0wLjIzLTAuMS0wLjIzLTAuMjNWNi43NWMwLTAuMTMsMC4xLTAuMjIsMC4yMy0wLjIyaDEuNGMwLjEzLDAsMC4yMywwLjExLDAuMjMsMC4yM3YwLjczICAgIGMwLjcxLTAuNzYsMS43LTEuMTgsMi43My0xLjE4YzIuMTcsMCwzLjk0LDEuODYsMy45NCw0LjE4UzU0LjU4LDE0LjY3LDUyLjQxLDE0LjY3eiBNNjYuMjQsMTEuMzljLTAuMzksMS44Ny0xLjk2LDMuMjktMy44NCwzLjI5ICAgIGMtMS4wMywwLTIuMDItMC40My0yLjczLTEuMTh2MC43M2MwLDAuMTMtMC4xLDAuMjMtMC4yMywwLjIzaC0xLjRjLTAuMTMsMC0wLjIzLTAuMTEtMC4yMy0wLjIzVjMuNTFjMC0wLjEzLDAuMS0wLjIzLDAuMjMtMC4yMyAgICBoMS40YzAuMTMsMCwwLjIzLDAuMTEsMC4yMywwLjIzdjMuOTdjMC43MS0wLjc1LDEuNy0xLjE4LDIuNzMtMS4xN2MxLjg4LDAsMy40NSwxLjQsMy44NCwzLjI4QzY2LjM3LDEwLjE5LDY2LjM3LDEwLjgsNjYuMjQsMTEuMzkgICAgTDY2LjI0LDExLjM5TDY2LjI0LDExLjM5eiBNNzEuNjcsMTQuNjhjLTIsMC4wMS0zLjczLTEuMzUtNC4xNy0zLjNjLTAuMTMtMC41OS0wLjEzLTEuMTksMC0xLjc3YzAuNDQtMS45NCwyLjE3LTMuMzEsNC4xNy0zLjMgICAgYzIuMzYsMCw0LjI2LDEuODcsNC4yNiw0LjE5Uzc0LjAzLDE0LjY4LDcxLjY3LDE0LjY4TDcxLjY3LDE0LjY4eiBNODMuMDQsMTQuNDdoLTEuNjFjLTAuMTMsMC0wLjI0LTAuMDYtMC4zLTAuMTdsLTEuNDQtMi4zOSAgICBsLTEuNDQsMi4zOWMtMC4wNiwwLjExLTAuMTgsMC4xNy0wLjMsMC4xN2gtMS42MWMtMC4wNCwwLTAuMDgtMC4wMS0wLjEyLTAuMDNjLTAuMDktMC4wNi0wLjEzLTAuMTktMC4wNi0wLjI4bDAsMGwyLjQzLTMuNjggICAgTDc2LjIsNi44NGMtMC4wMi0wLjAzLTAuMDMtMC4wNy0wLjAzLTAuMTJjMC0wLjEyLDAuMDktMC4yMSwwLjIxLTAuMjFoMS42MWMwLjEzLDAsMC4yNCwwLjA2LDAuMywwLjE3bDEuNDEsMi4zNmwxLjQxLTIuMzYgICAgYzAuMDYtMC4xMSwwLjE4LTAuMTcsMC4zLTAuMTdoMS42MWMwLjA0LDAsMC4wOCwwLjAxLDAuMTIsMC4wM2MwLjA5LDAuMDYsMC4xMywwLjE5LDAuMDYsMC4yOGwwLDBsLTIuMzgsMy42NGwyLjQzLDMuNjcgICAgYzAuMDIsMC4wMywwLjAzLDAuMDcsMC4wMywwLjEyQzgzLjI1LDE0LjM4LDgzLjE2LDE0LjQ3LDgzLjA0LDE0LjQ3TDgzLjA0LDE0LjQ3TDgzLjA0LDE0LjQ3eiIvPiAgPHBhdGggY2xhc3M9InN0MCIgZD0iTTEwLjUsMS4yNGMtNS4xMSwwLTkuMjUsNC4xNS05LjI1LDkuMjVzNC4xNSw5LjI1LDkuMjUsOS4yNXM5LjI1LTQuMTUsOS4yNS05LjI1ICAgIEMxOS43NSw1LjM4LDE1LjYxLDEuMjQsMTAuNSwxLjI0eiBNMTQuODksMTIuNzdjLTEuOTMsMS45My00Ljc4LDIuMzEtNi43LDIuMzFjLTAuNywwLTEuNDEtMC4wNS0yLjEtMC4xNmMwLDAtMS4wMi01LjY0LDIuMTQtOC44MSAgICBjMC44My0wLjgzLDEuOTUtMS4yOCwzLjEzLTEuMjhjMS4yNywwLDIuNDksMC41MSwzLjM5LDEuNDJDMTYuNTksOC4wOSwxNi42NCwxMSwxNC44OSwxMi43N3oiLz4gIDxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0xMC41LTAuMDFDNC43LTAuMDEsMCw0LjcsMCwxMC40OXM0LjcsMTAuNSwxMC41LDEwLjVTMjEsMTYuMjksMjEsMTAuNDlDMjAuOTksNC43LDE2LjMtMC4wMSwxMC41LTAuMDF6ICAgICBNMTAuNSwxOS43NGMtNS4xMSwwLTkuMjUtNC4xNS05LjI1LTkuMjVzNC4xNC05LjI2LDkuMjUtOS4yNnM5LjI1LDQuMTUsOS4yNSw5LjI1QzE5Ljc1LDE1LjYxLDE1LjYxLDE5Ljc0LDEwLjUsMTkuNzR6Ii8+ICA8cGF0aCBjbGFzcz0ic3QxIiBkPSJNMTQuNzQsNi4yNUMxMi45LDQuNDEsOS45OCw0LjM1LDguMjMsNi4xYy0zLjE2LDMuMTctMi4xNCw4LjgxLTIuMTQsOC44MXM1LjY0LDEuMDIsOC44MS0yLjE0ICAgIEMxNi42NCwxMSwxNi41OSw4LjA5LDE0Ljc0LDYuMjV6IE0xMi40NywxMC4zNGwtMC45MSwxLjg3bC0wLjktMS44N0w4LjgsOS40M2wxLjg2LTAuOWwwLjktMS44N2wwLjkxLDEuODdsMS44NiwwLjlMMTIuNDcsMTAuMzR6IiAgICAvPiAgPHBvbHlnb24gY2xhc3M9InN0MCIgcG9pbnRzPSIxNC4zMyw5LjQzIDEyLjQ3LDEwLjM0IDExLjU2LDEyLjIxIDEwLjY2LDEwLjM0IDguOCw5LjQzIDEwLjY2LDguNTMgMTEuNTYsNi42NiAxMi40Nyw4LjUzICAgIi8+PC9nPjwvc3ZnPg==); +} + .mapboxgl-ctrl.mapboxgl-ctrl-attrib { padding: 0 5px; background-color: rgba(255, 255, 255, .5); margin: 0; } -.mapboxgl-ctrl-attrib.compact { +.mapboxgl-ctrl-attrib.mapboxgl-compact { padding-top: 2px; padding-bottom: 2px; margin: 0 10px 10px 10px; @@ -110,10 +136,10 @@ border-radius: 3px 12px 12px 3px; visibility: hidden; } -.mapboxgl-ctrl-attrib.compact:hover { +.mapboxgl-ctrl-attrib.mapboxgl-compact:hover { visibility: visible; } -.mapboxgl-ctrl-attrib.compact:after { +.mapboxgl-ctrl-attrib.mapboxgl-compact:after { content: ''; cursor: pointer; position: absolute; @@ -135,7 +161,7 @@ color: inherit; text-decoration: underline; } -.mapboxgl-ctrl-attrib .mapbox-improve-map { +.mapboxgl-ctrl-attrib .mapboxgl-improve-map { font-weight: bold; margin-left: 2px; } @@ -293,7 +319,7 @@ opacity: 0.5; } @media print { - .mapbox-improve-map { + .mapboxgl-improve-map { display:none; } } diff --git a/public/assets/frontend/mapbox-gl.css.br b/public/assets/frontend/mapbox-gl.css.br index 77fdd6f6c099d8656b6622e8b2e69f16218d2332..568187afd51aa69e7a170cf8eddd4f9ff6ea4a3c 100644 GIT binary patch literal 8674 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 diff --git a/public/assets/frontend/mapbox-gl.css.gz b/public/assets/frontend/mapbox-gl.css.gz index 854b5e1e8ecc74ce154e5c72fe42b1cb5879a9c9..ae0125e905e73b70afe2553e44d5a8da99eecb93 100644 GIT binary patch literal 9142 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 AEdT%j literal 2205 zcmV;O2x9jiiwFP!000021C&))va2`{{lBZwgquyU{h~ZMf6W%A8YDnvAyJYDH|>2| z;Ec_yXY%QE`Y1Rop-Oa@%K%@<%N4<2rj?^)zNorr5mz0#{fEnjJCOqUm)HDuMt(H{ z}eZ-V%6YRFcM(m~~ol3apIA(a7GB>*3?re!R4AnNk zL~SW~hkQIftQ(98Yyr$~T0XVEa1T7%f5Q3w(T??XK_lmhfQel+fpqP=QjC)CvMj?T zeZJ|RNK!ke)u#JaFjr8rjJItU+>3UIFkveRPn0B5r|SW$fH9$Rq`VWq+hiM zx{i^}cv3RQ4y~4gk?$B|2Wp6CpL*}!owj)PU*KqK+b$w6L-arj=PFC1D5>*jAti*R z9-i9dku7xlA6mjR7e5R3%d46}@7nhq{>v#&m>PZ+jpU^zQjOxkuM&)mS1O+oSt+{nwZl<%wVg69eJtaTaa+Kt5#CFGov+Q_?a z891Ol5ZNYw>`J*x3ow?uA8VI=nq4n{NBnvbH-fjn>F#>@$Mxc4jDWuu+uKKcVyv=* z-A}jc<*(O^zwm6^Hf)!Err`(1#rW_!F=+Ycb&Os<3l^%t75HY|ljK95Oi0=1Sq{JJ zcsYF2zJH2fcF-m8k$ZATmz@ zM4tg-0Z5RURA{7rX1U2Ctn{>EGjR6N%M&`a-Ts&R^gY>DaWAOKJxjKz&oAlM<>$+# znuR>oU4`^Aq;EpH3jC}J=ulNUq(BDYuI5i(qE3E@irWGczFriY#zY$>CTqFu7RsrZpE1Ipf;zSi&V=&au z+!u>-{`IsZI==yfAqxJZJSs2>Jd1G{$P%P_TTZ{$8~w_eBF0Y3~?O(S%HITvAu2_>?mf@v=Ge(4f7H4${e z#MN_@BC4(b$fQxdQ|>*@(g7l`3uldFECsW8DL{!FAkF)AZdlQ1I_mHbYB+f&hIj)> zd-G#otWC4CHMuy)1O-eUe=%~q{b+349|3eWGq!6b)KKaM%HBHo5rT{lXZD|JUZM{9*?(BwX z$^8~wCl$1)x6Q|$rB&*UK=ZvRG4Kk+YDdBs>(-ivjnFs~Y_=?4o+e1h6Z#vO3^^s9 z6GSbnGoL+#UXytQ(MhP0_S{aD8_5s^WT-L%E$P7wf)ahZk2ldOo;Fo{6QvbyoY*Dz zwRIlIJh*3mpk-Hla9jpxS$FN-wm6vX)^&s#_5=BHh)3W@FU#Vc(r;tK;WQ!H>W99z z!4?8d7M9w+R0oXMvy?E~bzTKfWCgh4%QOJD zmIRMETM2Z+wVg$!j6@|Ho7BDOOM-Lt6*iml0P}~=2W!_O#(nfOQS{IB-M()8xm}fWlJzS( fDb^46wncvmr``K!uwfGW&B6Q*UolAP$}0c>c_BCj diff --git a/public/assets/frontend/normalize.css b/public/assets/frontend/normalize.css index 9b77e0eb..fa4e73dd 100644 --- a/public/assets/frontend/normalize.css +++ b/public/assets/frontend/normalize.css @@ -1,20 +1,18 @@ -/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */ - -/** - * 1. Change the default font family in all browsers (opinionated). - * 2. Correct the line height in all browsers. - * 3. Prevent adjustments of font size after orientation changes in - * IE on Windows Phone and in iOS. - */ +/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */ /* Document ========================================================================== */ +/** + * 1. Correct the line height in all browsers. + * 2. Prevent adjustments of font size after orientation changes in + * IE on Windows Phone and in iOS. + */ + html { - font-family: sans-serif; /* 1 */ - line-height: 1.15; /* 2 */ - -ms-text-size-adjust: 100%; /* 3 */ - -webkit-text-size-adjust: 100%; /* 3 */ + line-height: 1.15; /* 1 */ + -ms-text-size-adjust: 100%; /* 2 */ + -webkit-text-size-adjust: 100%; /* 2 */ } /* Sections @@ -108,17 +106,7 @@ a { } /** - * Remove the outline on focused links when they are also active or hovered - * in all browsers (opinionated). - */ - -a:active, -a:hover { - outline-width: 0; -} - -/** - * 1. Remove the bottom border in Firefox 39-. + * 1. Remove the bottom border in Chrome 57- and Firefox 39-. * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. */ @@ -317,13 +305,11 @@ button:-moz-focusring, } /** - * Change the border, margin, and padding in all browsers (opinionated). + * Correct the padding in Firefox. */ fieldset { - border: 1px solid #c0c0c0; - margin: 0 2px; - padding: 0.35em 0.625em 0.75em; + padding: 0.35em 0.75em 0.625em; } /** diff --git a/public/assets/frontend/normalize.css.br b/public/assets/frontend/normalize.css.br index c6e3a8860e025936cc705b40175339eec6850bd6..c973dacce1125ee16befb6f84df0dfe682be53be 100644 GIT binary patch literal 1756 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 Yhz76&Cjg%0gnImx!ds;yhxS)cS{>_zXaE2J diff --git a/public/assets/frontend/normalize.css.gz b/public/assets/frontend/normalize.css.gz index 7077e237602d97acafe7d1f0cb6d003569dd5a78..6fcd1c126fa4f44873b4ff6859bb60f82860ffe6 100644 GIT binary patch literal 2086 zcmV+>2-)`^iwFP!000021I=0Iy5lOc{qLu!dnfl;-l4O5a?UwNBPdy%jX)nDhYs&P zDkMHEW9#I6+BQN(#Z{~5n@9f#+SrCE`5IT;IoLg4-L7uoE&TfDe}Z30j@n`WYb$-- zl`C$V8;#s3=5D6%J-S&eZXUsp4DTA$egOdA{>1(nr9WE0Be+|^4~@0RJ@^_yNsUmW z+}0kX2Bs90*6bZxx1#O$EBKwo9cm9uyw^ET+Bq;4R7QJnz5c)|j~0xTs6F%2Xy7%| zTXY~b$pC<#{}_yhze+87+3>sCXauGO9VvhN$JHWeSo=o7n*{`=ib1J$ukhW|S8&s7 zPMZLV#uXk9zM!*+O zeJ%UNQT~QDlcde4)dslH6eLG#|FE{E!6p1eTCB`r8ASh)Rm{qmBX^`?I6Q=P4foi* zI`z=%*>h|lItqSjP1j1j4d;BSmG%DN2<11wZ#1)#Th3bY*pj|?wvSuGWFMbc33GAE zj)*B2G&w$t0>6M6F|lihk|1;3E*+o-Rh=YuHIAONG;tzKC^F*J!0@nh&}-&J@`&0kexB zIF)0BfDJaA_!eoOzZa}*Ev9^}SR+**uEuENTE=miz9!pFlbZr^j#YmmL{qp!1r8gg zz2xpwZ5JodwYBUBCF2iUYdS5c+!^`aUlY(g2bMr@%&au!7s zZaYQ6jS+noyV-K#yfu28N@73Mb}Y>~3=73J?9V)!xpD5SLE~3nD4gJiI`cy*dbL^8 zezKS`<4@<0L#V#5g*8&ZlhxzM8$_j(9%17eq-RR8Kf4i=1WWNA!P6#S%TV$48y@o;3 zS#IS~)@UR4kb*4}A{)Mvvg>uxnAb&Rc;|}nGAT6Cd}d3qVRlEfD&KMy?jY)%VXO1T z4rT^95mP$t&_`0)THHy~xj-zZrX~$+FFm(2e?BoXf1E7LpAYccc_lUBNP8IBGyEVN zN0ZsL+mfpxt0XExw!WD-Y4!LiHvPx*;o})K^%=?<3U+T<+tMM~z?~IDq-Ck<1IgJ$ zZ4&!AfwadH$cPp>1A?Ye(-QVGi=d4M&bn>w$yrp{n%+3VYqW-zhVs39+C>_taEn@G z7Y0M7P45dLb&STP+B)g?o(g{o^M_(Dg|GAWkYW;69}lbhT6!!34PTE}!0Dw)nC1!4 z^(ivaJ_xjrymR%2EX0P1L`TQ1QL1EiLS80KI`uTx zdGn!em=ddk`%5{PF|VXCwQ#M}MQlY^_nOX6_rjY*YIC>e(`sr>Nx?}=%#b9) zVVWe<)?}7LW_dl+2Psnm8k~4PiY`o5IrM8N?%Tr$X_YZ-L32(AsOa~LW)Yun82{}b zFDsq=JFFCg$Z0rcwx@fSYv$)9>64)^a34AQz}H(#AnheO60{i+a+5_ZnNUfEMb|3B zL`tc7Dl_HWIS!B0%Fne&J6s-qDl^L`bR(ZG?8vp#)-BL8sa#@#4eIXt-=NHEbom0I zX_!4uMJnlhA$^+V|H!Ru>1N_{AL2RFJLW#-_&(_$O~2+bAJ(JoKMND^=VSP!;S8hr Qzb|Y0Kk#w2ttTD;0LmB_CjbBd literal 2175 zcmV-_2!Qt=iwFP!000021I<}yo1-`q{_bB(P6`X zUrL}y$j#83^VkNdvfg@2^Z3!1z>sZ)R&V33at^Ma?e@DpybHhmC0V3?PG%#Y2hB{`yM^sY#u*)w1G!(v4bBs!kiF%gCMaMz4lO(@lcCa={rycgw{}6 zx^ZY7e3Lq56dB=Berv}vE(aN8Eml4V(aIn+s7{SP-yD`d*})$yUZe3KQSv5tOQYev_Mv&@xm)IPz5U;D8n)U;FmuIGVph0{o+}8c{#o; zT32|y^#wa$gsAYU{r+oV)stz}4VG8RKe+O};P;=g;=s92-tSmDf5Mio$HHlaJt^~G zt?=fO)~ib6b|ajU!$(cz(QY>l z3dx^FTyHmSi~uW(at=^xs;*`lv(lXvppnrjGH`4zj({4+O1)9OQNzPY{*f26q~m1O z5h^mAB(B!scv)(33qMm9Yr5SA(SH`TuxfIqxkyFC$`5df?dy4jcF$j63o%geb4z`v z%qi&kbV~b!r-LzMecj|{txlEbIAUA=-rFH>tx!XL;xSpy)3Pb4Wz8(A7)2dohKk|Y z91S86?B@@o@B>^cr%H_pB4(!NV5>}nR(WBn(H2(;%|2vkx`e`KpiNT35!++j#nvzE zV=p_4_d%~EL#`7QZqwJ~+q}3rA!m-kUl`FeUZVzwtuS6ypBip)2U(QC*!Z z^+xh>7nN7np^;s=slYDwQ`F+tlj!)}v}o9fmLYy>Kk)L~vvWTDintXbm$VfXX|f0K zRv6a_i^iv@ogu!&ifm|xg}YMS0jPWnEAN)7Wac0Bo(*HaYN~pNa)7_Iu zWn^uV9bw@Clowi6YiUXl5@Hu%T&PKGeof+Y+Tj`S}yI z2z$L$wB1}QiInqVWkR6VX;%^)``pvw#a#5kkpJet*;`B6{r6kBj)1Be`&n#Ru?;Y$ zw_+UnoRa4aIr^m9(;ULX5sJE!_+PMqGYXfOo4Y;*(+`%&k5(r()+i~_#GL+&Z2M`F zlWZVQ=;1!tAigw{#b&wy-@W%t$Cc@Nzui#h874X&oitX%6YgljqFA4D7x9s2()9s2 zy-btN0;Ddn@0dEcSRv<2PQp8DgnO|b^G-$eNIU{#tI4)eTR!0>`#y}IC?c~wW+R%O zsD_VQ@0a_9Yvmy!;kOrMQG6#S-PB$&_IA;xP zsS_(BN~M**15Z=WtF)@FM5z({U575h#v3a!T&et<*M9fQ4imyes~^# zyS{AI@BrSKac0qVC@hEi0HdS_h_W&UZNwfnuoF_|^I&G|;ZU^nb`eN*5jL|yndQq% zk`F5@qE|~x-UxRPZN7)C&XXP8400l-^v0o&q_VSkt*Cc_Smv%K3+y2Mo}bI_latG@ zlZW~H+3dhL(%nw%8GaPh@vt~|F2Us#lkEg2+w&|wIL6cpwd9DT0FMSZ(n`Wtsy+Xk zUCqE{cbf-(_v9J2d}nhxe!dt!R%mblfg3Bjj;+k^6_yTJqr&W^5T(YS^-0lt`cM~XiK)TmVhx_Lxd;ta zgVog_YKHPwNJR|t>!q}u`#d1|f$FUzJM}B7L7B>ik`4)y7=Mjm=Ta(ji%s8_Xc?|! z2MSnSxK5cOwzoH~rQYXj;hjX3m%@HN0jGAC49wf?Ig&((P19*wn%r_IY}KsvR<4wQ z1}XaK=7;Lqp+7*uDER@}Z%o@b)UpB{~?9{ z{YB#SNl+rVjB~&^19X-_+ADM{=r|$d@m|)F3$@Z%^qnRlQ%SAUqnyX*IGhp(zce20 zc;EMF%t4>jUp%BsKn`ur;3RsXv`fsgMbj_;MbX0+EniBst+02wNUfYNlu!2qf3B?R z__pJ7zZj^5xfbqYUI}FVqaB`k%q6D75(aXK=JRnpYdGV0|KDXx-v?ADA1rkr005tA BS8@OV diff --git a/public/assets/js/links.js b/public/assets/js/links.js index 3898da7e..e2bb71c9 100644 --- a/public/assets/js/links.js +++ b/public/assets/js/links.js @@ -1,133 +1,2 @@ -/******/ (function(modules) { // webpackBootstrap -/******/ // The module cache -/******/ var installedModules = {}; -/******/ -/******/ // The require function -/******/ function __webpack_require__(moduleId) { -/******/ -/******/ // Check if module is in cache -/******/ if(installedModules[moduleId]) -/******/ return installedModules[moduleId].exports; -/******/ -/******/ // Create a new module (and put it into the cache) -/******/ var module = installedModules[moduleId] = { -/******/ i: moduleId, -/******/ l: false, -/******/ exports: {} -/******/ }; -/******/ -/******/ // Execute the module function -/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); -/******/ -/******/ // Flag the module as loaded -/******/ module.l = true; -/******/ -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } -/******/ -/******/ -/******/ // expose the modules object (__webpack_modules__) -/******/ __webpack_require__.m = modules; -/******/ -/******/ // expose the module cache -/******/ __webpack_require__.c = installedModules; -/******/ -/******/ // identity function for calling harmony imports with the correct context -/******/ __webpack_require__.i = function(value) { return value; }; -/******/ -/******/ // define getter function for harmony exports -/******/ __webpack_require__.d = function(exports, name, getter) { -/******/ if(!__webpack_require__.o(exports, name)) { -/******/ Object.defineProperty(exports, name, { -/******/ configurable: false, -/******/ enumerable: true, -/******/ get: getter -/******/ }); -/******/ } -/******/ }; -/******/ -/******/ // getDefaultExport function for compatibility with non-harmony modules -/******/ __webpack_require__.n = function(module) { -/******/ var getter = module && module.__esModule ? -/******/ function getDefault() { return module['default']; } : -/******/ function getModuleExports() { return module; }; -/******/ __webpack_require__.d(getter, 'a', getter); -/******/ return getter; -/******/ }; -/******/ -/******/ // Object.prototype.hasOwnProperty.call -/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; -/******/ -/******/ // __webpack_public_path__ -/******/ __webpack_require__.p = ""; -/******/ -/******/ // Load entry module and return exports -/******/ return __webpack_require__(__webpack_require__.s = 12); -/******/ }) -/************************************************************************/ -/******/ ({ - -/***/ 12: -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -//links.js - -var youtubeRegex = /watch\?v=([A-Za-z0-9\-_]+)\b/; -var spotifyRegex = /https\:\/\/play\.spotify\.com\/(.*)\b/; - -var notes = document.querySelectorAll('.e-content'); - -var _iteratorNormalCompletion = true; -var _didIteratorError = false; -var _iteratorError = undefined; - -try { - for (var _iterator = notes[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { - var note = _step.value; - - var ytid = note.textContent.match(youtubeRegex); - if (ytid) { - var ytcontainer = document.createElement('div'); - ytcontainer.classList.add('container'); - var ytiframe = document.createElement('iframe'); - ytiframe.classList.add('youtube'); - ytiframe.setAttribute('src', 'https://www.youtube.com/embed/' + ytid[1]); - ytiframe.setAttribute('frameborder', 0); - ytiframe.setAttribute('allowfullscreen', 'true'); - ytcontainer.appendChild(ytiframe); - note.appendChild(ytcontainer); - } - var spotifyid = note.textContent.match(spotifyRegex); - if (spotifyid) { - var sid = spotifyid[1].replace('/', ':'); - var siframe = document.createElement('iframe'); - siframe.classList.add('spotify'); - siframe.setAttribute('src', 'https://embed.spotify.com/?uri=spotify:' + sid); - siframe.setAttribute('frameborder', 0); - siframe.setAttribute('allowtransparency', 'true'); - note.appendChild(siframe); - } - } -} catch (err) { - _didIteratorError = true; - _iteratorError = err; -} finally { - try { - if (!_iteratorNormalCompletion && _iterator.return) { - _iterator.return(); - } - } finally { - if (_didIteratorError) { - throw _iteratorError; - } - } -} - -/***/ }) - -/******/ }); +!function(modules){function __webpack_require__(moduleId){if(installedModules[moduleId])return installedModules[moduleId].exports;var module=installedModules[moduleId]={i:moduleId,l:!1,exports:{}};return modules[moduleId].call(module.exports,module,module.exports,__webpack_require__),module.l=!0,module.exports}var installedModules={};__webpack_require__.m=modules,__webpack_require__.c=installedModules,__webpack_require__.i=function(value){return value},__webpack_require__.d=function(exports,name,getter){__webpack_require__.o(exports,name)||Object.defineProperty(exports,name,{configurable:!1,enumerable:!0,get:getter})},__webpack_require__.n=function(module){var getter=module&&module.__esModule?function(){return module.default}:function(){return module};return __webpack_require__.d(getter,"a",getter),getter},__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property)},__webpack_require__.p="",__webpack_require__(__webpack_require__.s=8)}({8:function(module,exports,__webpack_require__){"use strict";var youtubeRegex=/watch\?v=([A-Za-z0-9\-_]+)\b/,spotifyRegex=/https\:\/\/play\.spotify\.com\/(.*)\b/,notes=document.querySelectorAll(".e-content"),_iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=notes[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var note=_step.value,ytid=note.textContent.match(youtubeRegex);if(ytid){var ytcontainer=document.createElement("div");ytcontainer.classList.add("container");var ytiframe=document.createElement("iframe");ytiframe.classList.add("youtube"),ytiframe.setAttribute("src","https://www.youtube.com/embed/"+ytid[1]),ytiframe.setAttribute("frameborder",0),ytiframe.setAttribute("allowfullscreen","true"),ytcontainer.appendChild(ytiframe),note.appendChild(ytcontainer)}var spotifyid=note.textContent.match(spotifyRegex);if(spotifyid){var sid=spotifyid[1].replace("/",":"),siframe=document.createElement("iframe");siframe.classList.add("spotify"),siframe.setAttribute("src","https://embed.spotify.com/?uri=spotify:"+sid),siframe.setAttribute("frameborder",0),siframe.setAttribute("allowtransparency","true"),note.appendChild(siframe)}}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{!_iteratorNormalCompletion&&_iterator.return&&_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}}}); //# sourceMappingURL=links.js.map \ No newline at end of file diff --git a/public/assets/js/links.js.br b/public/assets/js/links.js.br index 7406eab6c83ced293125be6414f024c199a2f60e..f6ffd1924eee8db9d2602c0ee8530781c4472118 100644 GIT binary patch literal 789 zcmV+w1M2)6oe2Pp!#EZ^^Oq{6Yo=DUzI9@)z0`TQS%)%zu7m~!&>JZOikNQ6(K`G8 z?>9q(S~=9lwf6;>nWSgnabjsdl)1!(ykl@SJW&VNgknKBFCa$(CY*V#4|Z&Wf>yLk zYsj5129ui#U*tdVi+zZ$0h-+ts!#<*)ES(5nq-V=PEIy#p@l43A~7vf&JkUI$p?(a zVhhhaHPxdYm%c@WyKKQlgA--Rts*CJ${nr2YRQjoPA94fuY5s!9D55LDdQcsG|qS# zMs$UUc`g07F1zv+vNrKX@U_LjQ{q~A!AM1U!*d5wi4; z(|Q+oWBc3Q9=R?)|5lHC7X4=%IX6=DpoeN)Q`oGdo1Wl}3wg0lNmZ-55Ot{vBvPew zLDizVL&Qqi!u1)eHAAy!z^)J?#DY?q;ffh)M?6Ou2gXizihJN3 zGoiT3?gctUXXJtNZ^0u1Pc974;J^+DM62f%OTE`z;!5N8fZbPI4N!2M6RwPm5zv|Y zBEmHE`MnSbtQgw5CaH5!DYEQ0`I_J-Krl04G#qC4+2z=p8hW~3tlthO=|`q|FlsPLV41a>g>WEA~N(}@O zkb+B^2oKCbQS)~QIY3evT{8W+^G?k7m(UB&AcfB+!$Wo4P$ADQn=_SZ%sC(8Gs$~Q z`Jc6!vfk&ZRFsN9b46zM+}w2Mt6J`8?GZ@uY&R7$+yvv7Umq@B2Xf8_=^d==%L8Zf TQG`zX`~A+x^c>87^)E*o$su^W literal 1185 zcmV;S1YY|a=@9@Nhv~-Rb~98FZ_?j#_UCXpy;UH__PAkK{UVYK6<%6e2U@2=6i&E? z%+XjafBPuljgScWN+l&2*?F@?M3c$x%|4$ta4?UBpRwBqusrYqC zx@d)s^F5g3mbOYZo`w&wiaL@SQGg<5sCpF{AoZB={k9UIGWVRB<}>A)xp<^`Z!rILoR&Y+w)Kw7?Urj8zv?pq@Kk1 z5zRzcLJ(FGje&9*Dv)bRzTn|j!ZU4LT*kz}zT1u=0!vEA%NZzCjmtmUI|Y~66dm-A9-7jKdc?T?Tq_`m+7!iX%pHx4lbbfgN2oSr$9 z6d2K8*l3$#kTOdOpqgjMsw^;6Y9%2&lZhcTKRt>B&=>qyr{V8UDn0Poc41+bY z;*Je5RIJ3F9g(YfIQ0dI*Z~!{p{8CEu1G%aw(Zz_F)tE?l{M>FFefk(r4*~oljId> z=5Q81sx^A`?u2`uh1`IVa;9;F!vCig?)#&S6rp;dXt>8j1DB{S!`rGi%{aM`qdlr^ zF(~0>?}lY6v6@L|!nfl8N7L0PkfI=QK*1Ubeg>0_fE{I}(F)8-Q$hat*007!b z2D1!`^y&YP975;!A2*EWv=6wH&KR9jEaU-D9NaE2KaTU#Eau21ms6ZV`sQT042pv3 zvhJ)b(6N26hIrV&7`9m0_>Gc&2baJbZ3|3djFF0ol45mj9vC%tL-8d#<8Ic#O(%Jw zXAGn70vAV0=3MGC1u{CLLx4gw#U`D>%Zh%BWhLzmxTggPBLcU@F;^N6aS_ ztLz})q~N<|r75lOt`6^*1ohacccd1s1O#`HxL-S~{`mu{K?dF$?D?uvr+4LH#-BW8 zB|hWS6W&L%VCfh`=hDqCYN;T;0|2~UgwDz08WQBB$QAXd^Q;tXzrHRzsm|7PNDot; z@gr1daqAqZ=wBB`Zn0&}5|*p6S4B?n1zX+A;-aGm?r!|p&u<@8MZEQ8_pG-B9?VLV diff --git a/public/assets/js/links.js.gz b/public/assets/js/links.js.gz index 08e5c8bb91484f327c0ab795fb799c0d5ef1f978..2092231115ec3c86613c1b3fb99b970258a93ea4 100644 GIT binary patch literal 919 zcmV;I18DpoiwFP!000021C3N?bEG&B{eHhd~@Ek`o*Y#-Akyo|nQvlDMd^Q&Nk} z7s?`&64LL7+p2LmnX1`E}=CMN-EP45S?By^KPfFb}Spuou z)cvbj%t_BVA>r z+xQ7-{Q5~WV>ozh^J}lPu(4--S<^u0bwX#^XmnwL2!q|Zw* z)vq9dqc$J6)OZvwxmMUZJrX1W!LZi#gEl#npX$7j&`sB!YLbfdYv=#m7;WP1)tE6_ z?zBiZyFHq!&b0Bn5fh70oa5pi(Z9b|`B6(cTCaVw-}>wA{k}>(1yBX|=o3Oyt$^$w z!#(VL*EQ~o(EhT63Psvuq1cxCbfAFdodW*Ls*t_N{4RK?Q(?yz6AH|kRc?SGd@iAT z`CcmSJhFc&l5)wc{Z3eka8}P5MhR`3>P-E#)IcE_Z*hk$ z(x`=LUsn#htcI&TR(f2Ff&B4&dpSNVjTj+D-bD*|UTIAbyRHWsrfk6sC|-?V@0i&2PUAY%-zRW>t-*s<*3G`OZ7%L+<~NFIaps6>BAYr9Z)2qfeWM t5SsRb?B58(H#b(7hQs&mWJ2Bi{>yi<6zZ9!Pc6+^@joVr*Cn0_003L7%tHVG literal 1365 zcmV-b1*-ZViwFP!000021Ep43lcP8ceolUc<_zfrX7+7EvG;x7XSz}jh>oYhW^9vV zyYk=HfSqn|&W#vfu5uh6lsi2%x^B3XvXw+$vlaK8@^PF*a4Z%Zl=EE&hc9>HQ^I4z9# zVqrLcnP}2|=oS3OD~#`erj{?2Kv{?Nh^Ahf_1_l#X6ky51gcUn7h_0VfL!v=WjpgZnHAT9EtjO!6Wr4w zKZnS|gpW*Uq<025?rLx_15J=As&)riK*|MF)2HkfRz&2S?SSS@Z#Pt}nj64{sOpY6 zQ@B-U2vLX*_}-diC06Uq%%gq}VQ>*8m{Nvti%Ow5qG{>b(Vt+ukT`kvXM5te^jppb&BvDwKd^?Pm;zoxzWml*&srbqUnO{;8@w(*nZi0 zO%+!#A(MmB!tQ1=rtmQnG7>8US6uB1^jAcFzhPEv_4+(Vx1r71Eln7D@8Y|r~4H;yV-AVtA9FMDOwd18K zm-rLj;uazZHblj%`TOh0`}@P|zsU7Judd&nUoUPhr}JeH)*-Usil)0m$V#a~&S&#r z9uyhb&3)rA_hX*V1JA!`V(VbW6;?e=cwFYll>fFwvHKY_j1?CjYW+-nysp0`OiiXH zYC#nWq8+~DA}86$JTEe=8exA58n1*VUmC|xh2R3BdVN|mZP`lJ?BzsfspN7$27r36 zc}M;bHMIZ!d6zGF=G*fdZ>k$F6&4{p@lJ8{YA=W$FnxwwM& zzQ7_QvF<=n)jaD{iTsZuk^LGm>AT+NCDKU3ZogV2@0Wr`=3u6^Qq_1C`MgZzuu7C5 zOcq2Si+3%Z3=iJmb%wql?;);c3LXk!XV$l7t2A|VcgyO?P~)VOX@Yjinsw_)(*i!wDNYUX+x`(;G0%iJ&hWV1N%GR{u_kjAb19nmmJb0{)U2H? diff --git a/public/assets/js/links.js.map b/public/assets/js/links.js.map index 8a49d382..41cc0ca5 100644 --- a/public/assets/js/links.js.map +++ b/public/assets/js/links.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///webpack/bootstrap 0d56878049caba29cc1d?60c9**","webpack:///./links.js"],"names":["youtubeRegex","spotifyRegex","notes","document","querySelectorAll","note","ytid","textContent","match","ytcontainer","createElement","classList","add","ytiframe","setAttribute","appendChild","spotifyid","sid","replace","siframe"],"mappings":";AAAA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA,mDAA2C,cAAc;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,mCAA2B,0BAA0B,EAAE;AACvD,yCAAiC,eAAe;AAChD;AACA;AACA;;AAEA;AACA,8DAAsD,+DAA+D;;AAErH;AACA;;AAEA;AACA;;;;;;;;;;;AChEA;;AAEA,IAAIA,eAAe,8BAAnB;AACA,IAAIC,eAAe,uCAAnB;;AAEA,IAAIC,QAAQC,SAASC,gBAAT,CAA0B,YAA1B,CAAZ;;;;;;;AAEA,yBAAiBF,KAAjB,8HAAwB;AAAA,YAAfG,IAAe;;AACpB,YAAIC,OAAOD,KAAKE,WAAL,CAAiBC,KAAjB,CAAuBR,YAAvB,CAAX;AACA,YAAIM,IAAJ,EAAU;AACN,gBAAIG,cAAcN,SAASO,aAAT,CAAuB,KAAvB,CAAlB;AACAD,wBAAYE,SAAZ,CAAsBC,GAAtB,CAA0B,WAA1B;AACA,gBAAIC,WAAWV,SAASO,aAAT,CAAuB,QAAvB,CAAf;AACAG,qBAASF,SAAT,CAAmBC,GAAnB,CAAuB,SAAvB;AACAC,qBAASC,YAAT,CAAsB,KAAtB,EAA6B,mCAAmCR,KAAK,CAAL,CAAhE;AACAO,qBAASC,YAAT,CAAsB,aAAtB,EAAqC,CAArC;AACAD,qBAASC,YAAT,CAAsB,iBAAtB,EAAyC,MAAzC;AACAL,wBAAYM,WAAZ,CAAwBF,QAAxB;AACAR,iBAAKU,WAAL,CAAiBN,WAAjB;AACH;AACD,YAAIO,YAAYX,KAAKE,WAAL,CAAiBC,KAAjB,CAAuBP,YAAvB,CAAhB;AACA,YAAIe,SAAJ,EAAe;AACX,gBAAIC,MAAMD,UAAU,CAAV,EAAaE,OAAb,CAAqB,GAArB,EAA0B,GAA1B,CAAV;AACA,gBAAIC,UAAUhB,SAASO,aAAT,CAAuB,QAAvB,CAAd;AACAS,oBAAQR,SAAR,CAAkBC,GAAlB,CAAsB,SAAtB;AACAO,oBAAQL,YAAR,CAAqB,KAArB,EAA4B,4CAA4CG,GAAxE;AACAE,oBAAQL,YAAR,CAAqB,aAArB,EAAoC,CAApC;AACAK,oBAAQL,YAAR,CAAqB,mBAArB,EAA0C,MAA1C;AACAT,iBAAKU,WAAL,CAAiBI,OAAjB;AACH;AACJ","file":"links.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// identity function for calling harmony imports with the correct context\n \t__webpack_require__.i = function(value) { return value; };\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 12);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 0d56878049caba29cc1d","//links.js\n\nlet youtubeRegex = /watch\\?v=([A-Za-z0-9\\-_]+)\\b/;\nlet spotifyRegex = /https\\:\\/\\/play\\.spotify\\.com\\/(.*)\\b/;\n\nlet notes = document.querySelectorAll('.e-content');\n\nfor (let note of notes) {\n let ytid = note.textContent.match(youtubeRegex);\n if (ytid) {\n let ytcontainer = document.createElement('div');\n ytcontainer.classList.add('container');\n let ytiframe = document.createElement('iframe');\n ytiframe.classList.add('youtube');\n ytiframe.setAttribute('src', 'https://www.youtube.com/embed/' + ytid[1]);\n ytiframe.setAttribute('frameborder', 0);\n ytiframe.setAttribute('allowfullscreen', 'true');\n ytcontainer.appendChild(ytiframe);\n note.appendChild(ytcontainer);\n }\n let spotifyid = note.textContent.match(spotifyRegex);\n if (spotifyid) {\n let sid = spotifyid[1].replace('/', ':');\n let siframe = document.createElement('iframe');\n siframe.classList.add('spotify');\n siframe.setAttribute('src', 'https://embed.spotify.com/?uri=spotify:' + sid);\n siframe.setAttribute('frameborder', 0);\n siframe.setAttribute('allowtransparency', 'true');\n note.appendChild(siframe);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./links.js"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:/webpack/bootstrap bec323e585cc25500ca1?bc38**","webpack:///links.js"],"names":["__webpack_require__","moduleId","installedModules","exports","module","i","l","modules","call","m","c","value","d","name","getter","o","Object","defineProperty","configurable","enumerable","get","n","__esModule","object","property","prototype","hasOwnProperty","p","s","youtubeRegex","spotifyRegex","notes","document","querySelectorAll","_step","_iterator","Symbol","iterator","_iteratorNormalCompletion","next","done","note","ytid","textContent","match","ytcontainer","createElement","classList","add","ytiframe","setAttribute","appendChild","spotifyid","sid","replace","siframe"],"mappings":"mBAIA,QAAAA,qBAAAC,UAGA,GAAAC,iBAAAD,UACA,MAAAC,kBAAAD,UAAAE,OAGA,IAAAC,QAAAF,iBAAAD,WACAI,EAAAJ,SACAK,GAAA,EACAH,WAUA,OANAI,SAAAN,UAAAO,KAAAJ,OAAAD,QAAAC,OAAAA,OAAAD,QAAAH,qBAGAI,OAAAE,GAAA,EAGAF,OAAAD,QAvBA,GAAAD,oBA4BAF,qBAAAS,EAAAF,QAGAP,oBAAAU,EAAAR,iBAGAF,oBAAAK,EAAA,SAAAM,OAA2C,MAAAA,QAG3CX,oBAAAY,EAAA,SAAAT,QAAAU,KAAAC,QACAd,oBAAAe,EAAAZ,QAAAU,OACAG,OAAAC,eAAAd,QAAAU,MACAK,cAAA,EACAC,YAAA,EACAC,IAAAN,UAMAd,oBAAAqB,EAAA,SAAAjB,QACA,GAAAU,QAAAV,QAAAA,OAAAkB,WACA,WAA2B,MAAAlB,QAAA,SAC3B,WAAiC,MAAAA,QAEjC,OADAJ,qBAAAY,EAAAE,OAAA,IAAAA,QACAA,QAIAd,oBAAAe,EAAA,SAAAQ,OAAAC,UAAsD,MAAAR,QAAAS,UAAAC,eAAAlB,KAAAe,OAAAC,WAGtDxB,oBAAA2B,EAAA,GAGA3B,oBAAAA,oBAAA4B,EAAA,gEC9DA,IAAIC,cAAe,+BACfC,aAAe,wCAEfC,MAAQC,SAASC,iBAAiB,0FAEtC,IAAA,GAAAC,OAAAC,UAAiBJ,MAAjBK,OAAAC,cAAAC,2BAAAJ,MAAAC,UAAAI,QAAAC,MAAAF,2BAAA,EAAwB,CAAA,GAAfG,MAAeP,MAAAvB,MAChB+B,KAAOD,KAAKE,YAAYC,MAAMf,aAClC,IAAIa,KAAM,CACN,GAAIG,aAAcb,SAASc,cAAc,MACzCD,aAAYE,UAAUC,IAAI,YAC1B,IAAIC,UAAWjB,SAASc,cAAc,SACtCG,UAASF,UAAUC,IAAI,WACvBC,SAASC,aAAa,MAAO,iCAAmCR,KAAK,IACrEO,SAASC,aAAa,cAAe,GACrCD,SAASC,aAAa,kBAAmB,QACzCL,YAAYM,YAAYF,UACxBR,KAAKU,YAAYN,aAErB,GAAIO,WAAYX,KAAKE,YAAYC,MAAMd,aACvC,IAAIsB,UAAW,CACX,GAAIC,KAAMD,UAAU,GAAGE,QAAQ,IAAK,KAChCC,QAAUvB,SAASc,cAAc,SACrCS,SAAQR,UAAUC,IAAI,WACtBO,QAAQL,aAAa,MAAO,0CAA4CG,KACxEE,QAAQL,aAAa,cAAe,GACpCK,QAAQL,aAAa,oBAAqB,QAC1CT,KAAKU,YAAYI","file":"public/assets/js/links.js.map","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// identity function for calling harmony imports with the correct context\n \t__webpack_require__.i = function(value) { return value; };\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 8);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap bec323e585cc25500ca1","//links.js\n\nlet youtubeRegex = /watch\\?v=([A-Za-z0-9\\-_]+)\\b/;\nlet spotifyRegex = /https\\:\\/\\/play\\.spotify\\.com\\/(.*)\\b/;\n\nlet notes = document.querySelectorAll('.e-content');\n\nfor (let note of notes) {\n let ytid = note.textContent.match(youtubeRegex);\n if (ytid) {\n let ytcontainer = document.createElement('div');\n ytcontainer.classList.add('container');\n let ytiframe = document.createElement('iframe');\n ytiframe.classList.add('youtube');\n ytiframe.setAttribute('src', 'https://www.youtube.com/embed/' + ytid[1]);\n ytiframe.setAttribute('frameborder', 0);\n ytiframe.setAttribute('allowfullscreen', 'true');\n ytcontainer.appendChild(ytiframe);\n note.appendChild(ytcontainer);\n }\n let spotifyid = note.textContent.match(spotifyRegex);\n if (spotifyid) {\n let sid = spotifyid[1].replace('/', ':');\n let siframe = document.createElement('iframe');\n siframe.classList.add('spotify');\n siframe.setAttribute('src', 'https://embed.spotify.com/?uri=spotify:' + sid);\n siframe.setAttribute('frameborder', 0);\n siframe.setAttribute('allowtransparency', 'true');\n note.appendChild(siframe);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./links.js"]} \ No newline at end of file diff --git a/public/assets/js/maps.js b/public/assets/js/maps.js index 1d209241..4b7eb765 100644 --- a/public/assets/js/maps.js +++ b/public/assets/js/maps.js @@ -1,2872 +1,2 @@ -/******/ (function(modules) { // webpackBootstrap -/******/ // The module cache -/******/ var installedModules = {}; -/******/ -/******/ // The require function -/******/ function __webpack_require__(moduleId) { -/******/ -/******/ // Check if module is in cache -/******/ if(installedModules[moduleId]) -/******/ return installedModules[moduleId].exports; -/******/ -/******/ // Create a new module (and put it into the cache) -/******/ var module = installedModules[moduleId] = { -/******/ i: moduleId, -/******/ l: false, -/******/ exports: {} -/******/ }; -/******/ -/******/ // Execute the module function -/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); -/******/ -/******/ // Flag the module as loaded -/******/ module.l = true; -/******/ -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } -/******/ -/******/ -/******/ // expose the modules object (__webpack_modules__) -/******/ __webpack_require__.m = modules; -/******/ -/******/ // expose the module cache -/******/ __webpack_require__.c = installedModules; -/******/ -/******/ // identity function for calling harmony imports with the correct context -/******/ __webpack_require__.i = function(value) { return value; }; -/******/ -/******/ // define getter function for harmony exports -/******/ __webpack_require__.d = function(exports, name, getter) { -/******/ if(!__webpack_require__.o(exports, name)) { -/******/ Object.defineProperty(exports, name, { -/******/ configurable: false, -/******/ enumerable: true, -/******/ get: getter -/******/ }); -/******/ } -/******/ }; -/******/ -/******/ // getDefaultExport function for compatibility with non-harmony modules -/******/ __webpack_require__.n = function(module) { -/******/ var getter = module && module.__esModule ? -/******/ function getDefault() { return module['default']; } : -/******/ function getModuleExports() { return module; }; -/******/ __webpack_require__.d(getter, 'a', getter); -/******/ return getter; -/******/ }; -/******/ -/******/ // Object.prototype.hasOwnProperty.call -/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; -/******/ -/******/ // __webpack_public_path__ -/******/ __webpack_require__.p = ""; -/******/ -/******/ // Load entry module and return exports -/******/ return __webpack_require__(__webpack_require__.s = 13); -/******/ }) -/************************************************************************/ -/******/ ([ -/* 0 */ -/***/ (function(module, exports) { - -var g; - -// This works in non-strict mode -g = (function() { - return this; -})(); - -try { - // This works if eval is allowed (see CSP) - g = g || Function("return this")() || (1,eval)("this"); -} catch(e) { - // This works if the window reference is available - if(typeof window === "object") - g = window; -} - -// g can still be undefined, but nothing to do about it... -// We return undefined, instead of nothing here, so it's -// easier to handle this case. if(!global) { ...} - -module.exports = g; - - -/***/ }), -/* 1 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = parseLocation; -//parse-location.js - -//text = `POINT(lon lat)` -function parseLocation(text) { - var coords = /POINT\((.*)\)/.exec(text); - var parsedLongitude = coords[1].split(' ')[0]; - var parsedLatitude = coords[1].split(' ')[1]; - - return { 'latitude': parsedLatitude, 'longitude': parsedLongitude }; -} - -/***/ }), -/* 2 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = addMap; - -var _mapboxGl = __webpack_require__(9); - -var _mapboxGl2 = _interopRequireDefault(_mapboxGl); - -var _parseLocation = __webpack_require__(1); - -var _parseLocation2 = _interopRequireDefault(_parseLocation); - -var _selectPlace = __webpack_require__(4); - -var _selectPlace2 = _interopRequireDefault(_selectPlace); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _toArray(arr) { return Array.isArray(arr) ? arr : Array.from(arr); } //mapbox-utils.js - - -_mapboxGl2.default.accessToken = 'pk.eyJ1Ijoiam9ubnliYXJuZXMiLCJhIjoiY2l2cDhjYW04MDAwcjJ0cG1uZnhqcm82ayJ9.qA2zeVA-nsoMh9IFrd5KQw'; - -//define some functions to be used in the default function. -var titlecase = function titlecase(string) { - return string.split('-').map(function (_ref) { - var _ref2 = _toArray(_ref), - first = _ref2[0], - rest = _ref2.slice(1); - - return first.toUpperCase() + rest.join('').toLowerCase(); - }).join(' '); -}; - -var addMapTypeOption = function addMapTypeOption(map, menu, option) { - var checked = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false; - - var input = document.createElement('input'); - input.setAttribute('id', option); - input.setAttribute('type', 'radio'); - input.setAttribute('name', 'toggle'); - input.setAttribute('value', option); - if (checked == true) { - input.setAttribute('checked', 'checked'); - } - input.addEventListener('click', function () { - map.setStyle('mapbox://styles/mapbox/' + option + '-v9'); - }); - var label = document.createElement('label'); - label.setAttribute('for', option); - label.appendChild(document.createTextNode(titlecase(option))); - menu.appendChild(input); - menu.appendChild(label); -}; - -var makeMapMenu = function makeMapMenu(map) { - var mapMenu = document.createElement('div'); - mapMenu.classList.add('map-menu'); - addMapTypeOption(map, mapMenu, 'streets', true); - addMapTypeOption(map, mapMenu, 'satellite-streets'); - return mapMenu; -}; - -//the main function -function addMap(div) { - var position = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null; - var places = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null; - - var dataLatitude = div.dataset.latitude; - var dataLongitude = div.dataset.longitude; - var dataId = div.dataset.id; - var data = window['geojson' + dataId]; - if (data == null) { - data = { - 'type': 'FeatureCollection', - 'features': [{ - 'type': 'Feature', - 'geometry': { - 'type': 'Point', - 'coordinates': [dataLongitude, dataLatitude] - }, - 'properties': { - 'title': 'Current Location', - 'icon': 'circle-stroked', - 'uri': 'current-location' - } - }] - }; - } - if (places != null) { - var _iteratorNormalCompletion = true; - var _didIteratorError = false; - var _iteratorError = undefined; - - try { - for (var _iterator = places[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { - var place = _step.value; - - var placeLongitude = (0, _parseLocation2.default)(place.location).longitude; - var placeLatitude = (0, _parseLocation2.default)(place.location).latitude; - data.features.push({ - 'type': 'Feature', - 'geometry': { - 'type': 'Point', - 'coordinates': [placeLongitude, placeLatitude] - }, - 'properties': { - 'title': place.name, - 'icon': 'circle', - 'uri': place.slug - } - }); - } - } catch (err) { - _didIteratorError = true; - _iteratorError = err; - } finally { - try { - if (!_iteratorNormalCompletion && _iterator.return) { - _iterator.return(); - } - } finally { - if (_didIteratorError) { - throw _iteratorError; - } - } - } - } - if (position != null) { - dataLongitude = position.coords.longitude; - dataLatitude = position.coords.latitude; - } - var map = new _mapboxGl2.default.Map({ - container: div, - style: 'mapbox://styles/mapbox/streets-v9', - center: [dataLongitude, dataLatitude], - zoom: 15 - }); - if (position == null) { - map.scrollZoom.disable(); - } - map.addControl(new _mapboxGl2.default.NavigationControl()); - div.appendChild(makeMapMenu(map)); - map.on('load', function () { - map.addSource('points', { - 'type': 'geojson', - 'data': data - }); - map.addLayer({ - 'id': 'points', - 'interactive': true, - 'type': 'symbol', - 'source': 'points', - 'layout': { - 'icon-image': '{icon}-15', - 'text-field': '{title}', - 'text-offset': [0, 1] - } - }); - }); - if (position != null) { - map.on('click', function (e) { - var features = map.queryRenderedFeatures(e.point, { - layer: ['points'] - }); - // if there are features within the given radius of the click event, - // fly to the location of the click event - if (features.length) { - // Get coordinates from the symbol and center the map on those coordinates - map.flyTo({ center: features[0].geometry.coordinates }); - (0, _selectPlace2.default)(features[0].properties.uri); - } - }); - } - if (data.features && data.features.length > 1) { - var bounds = new _mapboxGl2.default.LngLatBounds(); - var _iteratorNormalCompletion2 = true; - var _didIteratorError2 = false; - var _iteratorError2 = undefined; - - try { - for (var _iterator2 = data.features[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) { - var feature = _step2.value; - - bounds.extend(feature.geometry.coordinates); - } - } catch (err) { - _didIteratorError2 = true; - _iteratorError2 = err; - } finally { - try { - if (!_iteratorNormalCompletion2 && _iterator2.return) { - _iterator2.return(); - } - } finally { - if (_didIteratorError2) { - throw _iteratorError2; - } - } - } - - map.fitBounds(bounds, { padding: 65 }); - } - - return map; -} - -/***/ }), -/* 3 */, -/* 4 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = selectPlaceInForm; -//select-place.js - -function selectPlaceInForm(uri) { - if (document.querySelector('select')) { - if (uri == 'current-location') { - document.querySelector('select [id="option-coords"]').selected = true; - } else { - document.querySelector('select [value="' + uri + '"]').selected = true; - } - } -} - -/***/ }), -/* 5 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -exports.byteLength = byteLength -exports.toByteArray = toByteArray -exports.fromByteArray = fromByteArray - -var lookup = [] -var revLookup = [] -var Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array - -var code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/' -for (var i = 0, len = code.length; i < len; ++i) { - lookup[i] = code[i] - revLookup[code.charCodeAt(i)] = i -} - -revLookup['-'.charCodeAt(0)] = 62 -revLookup['_'.charCodeAt(0)] = 63 - -function placeHoldersCount (b64) { - var len = b64.length - if (len % 4 > 0) { - throw new Error('Invalid string. Length must be a multiple of 4') - } - - // the number of equal signs (place holders) - // if there are two placeholders, than the two characters before it - // represent one byte - // if there is only one, then the three characters before it represent 2 bytes - // this is just a cheap hack to not do indexOf twice - return b64[len - 2] === '=' ? 2 : b64[len - 1] === '=' ? 1 : 0 -} - -function byteLength (b64) { - // base64 is 4/3 + up to two characters of the original data - return b64.length * 3 / 4 - placeHoldersCount(b64) -} - -function toByteArray (b64) { - var i, j, l, tmp, placeHolders, arr - var len = b64.length - placeHolders = placeHoldersCount(b64) - - arr = new Arr(len * 3 / 4 - placeHolders) - - // if there are placeholders, only get up to the last complete 4 chars - l = placeHolders > 0 ? len - 4 : len - - var L = 0 - - for (i = 0, j = 0; i < l; i += 4, j += 3) { - tmp = (revLookup[b64.charCodeAt(i)] << 18) | (revLookup[b64.charCodeAt(i + 1)] << 12) | (revLookup[b64.charCodeAt(i + 2)] << 6) | revLookup[b64.charCodeAt(i + 3)] - arr[L++] = (tmp >> 16) & 0xFF - arr[L++] = (tmp >> 8) & 0xFF - arr[L++] = tmp & 0xFF - } - - if (placeHolders === 2) { - tmp = (revLookup[b64.charCodeAt(i)] << 2) | (revLookup[b64.charCodeAt(i + 1)] >> 4) - arr[L++] = tmp & 0xFF - } else if (placeHolders === 1) { - tmp = (revLookup[b64.charCodeAt(i)] << 10) | (revLookup[b64.charCodeAt(i + 1)] << 4) | (revLookup[b64.charCodeAt(i + 2)] >> 2) - arr[L++] = (tmp >> 8) & 0xFF - arr[L++] = tmp & 0xFF - } - - return arr -} - -function tripletToBase64 (num) { - return lookup[num >> 18 & 0x3F] + lookup[num >> 12 & 0x3F] + lookup[num >> 6 & 0x3F] + lookup[num & 0x3F] -} - -function encodeChunk (uint8, start, end) { - var tmp - var output = [] - for (var i = start; i < end; i += 3) { - tmp = (uint8[i] << 16) + (uint8[i + 1] << 8) + (uint8[i + 2]) - output.push(tripletToBase64(tmp)) - } - return output.join('') -} - -function fromByteArray (uint8) { - var tmp - var len = uint8.length - var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes - var output = '' - var parts = [] - var maxChunkLength = 16383 // must be multiple of 3 - - // go through the array every three bytes, we'll deal with trailing stuff later - for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) { - parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength))) - } - - // pad the end with zeros, but make sure to not forget the extra bytes - if (extraBytes === 1) { - tmp = uint8[len - 1] - output += lookup[tmp >> 2] - output += lookup[(tmp << 4) & 0x3F] - output += '==' - } else if (extraBytes === 2) { - tmp = (uint8[len - 2] << 8) + (uint8[len - 1]) - output += lookup[tmp >> 10] - output += lookup[(tmp >> 4) & 0x3F] - output += lookup[(tmp << 2) & 0x3F] - output += '=' - } - - parts.push(output) - - return parts.join('') -} - - -/***/ }), -/* 6 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -/* WEBPACK VAR INJECTION */(function(global) {/*! - * The buffer module from node.js, for the browser. - * - * @author Feross Aboukhadijeh - * @license MIT - */ -/* eslint-disable no-proto */ - - - -var base64 = __webpack_require__(5) -var ieee754 = __webpack_require__(8) -var isArray = __webpack_require__(7) - -exports.Buffer = Buffer -exports.SlowBuffer = SlowBuffer -exports.INSPECT_MAX_BYTES = 50 - -/** - * If `Buffer.TYPED_ARRAY_SUPPORT`: - * === true Use Uint8Array implementation (fastest) - * === false Use Object implementation (most compatible, even IE6) - * - * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+, - * Opera 11.6+, iOS 4.2+. - * - * Due to various browser bugs, sometimes the Object implementation will be used even - * when the browser supports typed arrays. - * - * Note: - * - * - Firefox 4-29 lacks support for adding new properties to `Uint8Array` instances, - * See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438. - * - * - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function. - * - * - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of - * incorrect length in some situations. - - * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they - * get the Object implementation, which is slower but behaves correctly. - */ -Buffer.TYPED_ARRAY_SUPPORT = global.TYPED_ARRAY_SUPPORT !== undefined - ? global.TYPED_ARRAY_SUPPORT - : typedArraySupport() - -/* - * Export kMaxLength after typed array support is determined. - */ -exports.kMaxLength = kMaxLength() - -function typedArraySupport () { - try { - var arr = new Uint8Array(1) - arr.__proto__ = {__proto__: Uint8Array.prototype, foo: function () { return 42 }} - return arr.foo() === 42 && // typed array instances can be augmented - typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray` - arr.subarray(1, 1).byteLength === 0 // ie10 has broken `subarray` - } catch (e) { - return false - } -} - -function kMaxLength () { - return Buffer.TYPED_ARRAY_SUPPORT - ? 0x7fffffff - : 0x3fffffff -} - -function createBuffer (that, length) { - if (kMaxLength() < length) { - throw new RangeError('Invalid typed array length') - } - if (Buffer.TYPED_ARRAY_SUPPORT) { - // Return an augmented `Uint8Array` instance, for best performance - that = new Uint8Array(length) - that.__proto__ = Buffer.prototype - } else { - // Fallback: Return an object instance of the Buffer class - if (that === null) { - that = new Buffer(length) - } - that.length = length - } - - return that -} - -/** - * The Buffer constructor returns instances of `Uint8Array` that have their - * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of - * `Uint8Array`, so the returned instances will have all the node `Buffer` methods - * and the `Uint8Array` methods. Square bracket notation works as expected -- it - * returns a single octet. - * - * The `Uint8Array` prototype remains unmodified. - */ - -function Buffer (arg, encodingOrOffset, length) { - if (!Buffer.TYPED_ARRAY_SUPPORT && !(this instanceof Buffer)) { - return new Buffer(arg, encodingOrOffset, length) - } - - // Common case. - if (typeof arg === 'number') { - if (typeof encodingOrOffset === 'string') { - throw new Error( - 'If encoding is specified then the first argument must be a string' - ) - } - return allocUnsafe(this, arg) - } - return from(this, arg, encodingOrOffset, length) -} - -Buffer.poolSize = 8192 // not used by this implementation - -// TODO: Legacy, not needed anymore. Remove in next major version. -Buffer._augment = function (arr) { - arr.__proto__ = Buffer.prototype - return arr -} - -function from (that, value, encodingOrOffset, length) { - if (typeof value === 'number') { - throw new TypeError('"value" argument must not be a number') - } - - if (typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer) { - return fromArrayBuffer(that, value, encodingOrOffset, length) - } - - if (typeof value === 'string') { - return fromString(that, value, encodingOrOffset) - } - - return fromObject(that, value) -} - -/** - * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError - * if value is a number. - * Buffer.from(str[, encoding]) - * Buffer.from(array) - * Buffer.from(buffer) - * Buffer.from(arrayBuffer[, byteOffset[, length]]) - **/ -Buffer.from = function (value, encodingOrOffset, length) { - return from(null, value, encodingOrOffset, length) -} - -if (Buffer.TYPED_ARRAY_SUPPORT) { - Buffer.prototype.__proto__ = Uint8Array.prototype - Buffer.__proto__ = Uint8Array - if (typeof Symbol !== 'undefined' && Symbol.species && - Buffer[Symbol.species] === Buffer) { - // Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97 - Object.defineProperty(Buffer, Symbol.species, { - value: null, - configurable: true - }) - } -} - -function assertSize (size) { - if (typeof size !== 'number') { - throw new TypeError('"size" argument must be a number') - } else if (size < 0) { - throw new RangeError('"size" argument must not be negative') - } -} - -function alloc (that, size, fill, encoding) { - assertSize(size) - if (size <= 0) { - return createBuffer(that, size) - } - if (fill !== undefined) { - // Only pay attention to encoding if it's a string. This - // prevents accidentally sending in a number that would - // be interpretted as a start offset. - return typeof encoding === 'string' - ? createBuffer(that, size).fill(fill, encoding) - : createBuffer(that, size).fill(fill) - } - return createBuffer(that, size) -} - -/** - * Creates a new filled Buffer instance. - * alloc(size[, fill[, encoding]]) - **/ -Buffer.alloc = function (size, fill, encoding) { - return alloc(null, size, fill, encoding) -} - -function allocUnsafe (that, size) { - assertSize(size) - that = createBuffer(that, size < 0 ? 0 : checked(size) | 0) - if (!Buffer.TYPED_ARRAY_SUPPORT) { - for (var i = 0; i < size; ++i) { - that[i] = 0 - } - } - return that -} - -/** - * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance. - * */ -Buffer.allocUnsafe = function (size) { - return allocUnsafe(null, size) -} -/** - * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance. - */ -Buffer.allocUnsafeSlow = function (size) { - return allocUnsafe(null, size) -} - -function fromString (that, string, encoding) { - if (typeof encoding !== 'string' || encoding === '') { - encoding = 'utf8' - } - - if (!Buffer.isEncoding(encoding)) { - throw new TypeError('"encoding" must be a valid string encoding') - } - - var length = byteLength(string, encoding) | 0 - that = createBuffer(that, length) - - var actual = that.write(string, encoding) - - if (actual !== length) { - // Writing a hex string, for example, that contains invalid characters will - // cause everything after the first invalid character to be ignored. (e.g. - // 'abxxcd' will be treated as 'ab') - that = that.slice(0, actual) - } - - return that -} - -function fromArrayLike (that, array) { - var length = array.length < 0 ? 0 : checked(array.length) | 0 - that = createBuffer(that, length) - for (var i = 0; i < length; i += 1) { - that[i] = array[i] & 255 - } - return that -} - -function fromArrayBuffer (that, array, byteOffset, length) { - array.byteLength // this throws if `array` is not a valid ArrayBuffer - - if (byteOffset < 0 || array.byteLength < byteOffset) { - throw new RangeError('\'offset\' is out of bounds') - } - - if (array.byteLength < byteOffset + (length || 0)) { - throw new RangeError('\'length\' is out of bounds') - } - - if (byteOffset === undefined && length === undefined) { - array = new Uint8Array(array) - } else if (length === undefined) { - array = new Uint8Array(array, byteOffset) - } else { - array = new Uint8Array(array, byteOffset, length) - } - - if (Buffer.TYPED_ARRAY_SUPPORT) { - // Return an augmented `Uint8Array` instance, for best performance - that = array - that.__proto__ = Buffer.prototype - } else { - // Fallback: Return an object instance of the Buffer class - that = fromArrayLike(that, array) - } - return that -} - -function fromObject (that, obj) { - if (Buffer.isBuffer(obj)) { - var len = checked(obj.length) | 0 - that = createBuffer(that, len) - - if (that.length === 0) { - return that - } - - obj.copy(that, 0, 0, len) - return that - } - - if (obj) { - if ((typeof ArrayBuffer !== 'undefined' && - obj.buffer instanceof ArrayBuffer) || 'length' in obj) { - if (typeof obj.length !== 'number' || isnan(obj.length)) { - return createBuffer(that, 0) - } - return fromArrayLike(that, obj) - } - - if (obj.type === 'Buffer' && isArray(obj.data)) { - return fromArrayLike(that, obj.data) - } - } - - throw new TypeError('First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.') -} - -function checked (length) { - // Note: cannot use `length < kMaxLength()` here because that fails when - // length is NaN (which is otherwise coerced to zero.) - if (length >= kMaxLength()) { - throw new RangeError('Attempt to allocate Buffer larger than maximum ' + - 'size: 0x' + kMaxLength().toString(16) + ' bytes') - } - return length | 0 -} - -function SlowBuffer (length) { - if (+length != length) { // eslint-disable-line eqeqeq - length = 0 - } - return Buffer.alloc(+length) -} - -Buffer.isBuffer = function isBuffer (b) { - return !!(b != null && b._isBuffer) -} - -Buffer.compare = function compare (a, b) { - if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) { - throw new TypeError('Arguments must be Buffers') - } - - if (a === b) return 0 - - var x = a.length - var y = b.length - - for (var i = 0, len = Math.min(x, y); i < len; ++i) { - if (a[i] !== b[i]) { - x = a[i] - y = b[i] - break - } - } - - if (x < y) return -1 - if (y < x) return 1 - return 0 -} - -Buffer.isEncoding = function isEncoding (encoding) { - switch (String(encoding).toLowerCase()) { - case 'hex': - case 'utf8': - case 'utf-8': - case 'ascii': - case 'latin1': - case 'binary': - case 'base64': - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return true - default: - return false - } -} - -Buffer.concat = function concat (list, length) { - if (!isArray(list)) { - throw new TypeError('"list" argument must be an Array of Buffers') - } - - if (list.length === 0) { - return Buffer.alloc(0) - } - - var i - if (length === undefined) { - length = 0 - for (i = 0; i < list.length; ++i) { - length += list[i].length - } - } - - var buffer = Buffer.allocUnsafe(length) - var pos = 0 - for (i = 0; i < list.length; ++i) { - var buf = list[i] - if (!Buffer.isBuffer(buf)) { - throw new TypeError('"list" argument must be an Array of Buffers') - } - buf.copy(buffer, pos) - pos += buf.length - } - return buffer -} - -function byteLength (string, encoding) { - if (Buffer.isBuffer(string)) { - return string.length - } - if (typeof ArrayBuffer !== 'undefined' && typeof ArrayBuffer.isView === 'function' && - (ArrayBuffer.isView(string) || string instanceof ArrayBuffer)) { - return string.byteLength - } - if (typeof string !== 'string') { - string = '' + string - } - - var len = string.length - if (len === 0) return 0 - - // Use a for loop to avoid recursion - var loweredCase = false - for (;;) { - switch (encoding) { - case 'ascii': - case 'latin1': - case 'binary': - return len - case 'utf8': - case 'utf-8': - case undefined: - return utf8ToBytes(string).length - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return len * 2 - case 'hex': - return len >>> 1 - case 'base64': - return base64ToBytes(string).length - default: - if (loweredCase) return utf8ToBytes(string).length // assume utf8 - encoding = ('' + encoding).toLowerCase() - loweredCase = true - } - } -} -Buffer.byteLength = byteLength - -function slowToString (encoding, start, end) { - var loweredCase = false - - // No need to verify that "this.length <= MAX_UINT32" since it's a read-only - // property of a typed array. - - // This behaves neither like String nor Uint8Array in that we set start/end - // to their upper/lower bounds if the value passed is out of range. - // undefined is handled specially as per ECMA-262 6th Edition, - // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization. - if (start === undefined || start < 0) { - start = 0 - } - // Return early if start > this.length. Done here to prevent potential uint32 - // coercion fail below. - if (start > this.length) { - return '' - } - - if (end === undefined || end > this.length) { - end = this.length - } - - if (end <= 0) { - return '' - } - - // Force coersion to uint32. This will also coerce falsey/NaN values to 0. - end >>>= 0 - start >>>= 0 - - if (end <= start) { - return '' - } - - if (!encoding) encoding = 'utf8' - - while (true) { - switch (encoding) { - case 'hex': - return hexSlice(this, start, end) - - case 'utf8': - case 'utf-8': - return utf8Slice(this, start, end) - - case 'ascii': - return asciiSlice(this, start, end) - - case 'latin1': - case 'binary': - return latin1Slice(this, start, end) - - case 'base64': - return base64Slice(this, start, end) - - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return utf16leSlice(this, start, end) - - default: - if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding) - encoding = (encoding + '').toLowerCase() - loweredCase = true - } - } -} - -// The property is used by `Buffer.isBuffer` and `is-buffer` (in Safari 5-7) to detect -// Buffer instances. -Buffer.prototype._isBuffer = true - -function swap (b, n, m) { - var i = b[n] - b[n] = b[m] - b[m] = i -} - -Buffer.prototype.swap16 = function swap16 () { - var len = this.length - if (len % 2 !== 0) { - throw new RangeError('Buffer size must be a multiple of 16-bits') - } - for (var i = 0; i < len; i += 2) { - swap(this, i, i + 1) - } - return this -} - -Buffer.prototype.swap32 = function swap32 () { - var len = this.length - if (len % 4 !== 0) { - throw new RangeError('Buffer size must be a multiple of 32-bits') - } - for (var i = 0; i < len; i += 4) { - swap(this, i, i + 3) - swap(this, i + 1, i + 2) - } - return this -} - -Buffer.prototype.swap64 = function swap64 () { - var len = this.length - if (len % 8 !== 0) { - throw new RangeError('Buffer size must be a multiple of 64-bits') - } - for (var i = 0; i < len; i += 8) { - swap(this, i, i + 7) - swap(this, i + 1, i + 6) - swap(this, i + 2, i + 5) - swap(this, i + 3, i + 4) - } - return this -} - -Buffer.prototype.toString = function toString () { - var length = this.length | 0 - if (length === 0) return '' - if (arguments.length === 0) return utf8Slice(this, 0, length) - return slowToString.apply(this, arguments) -} - -Buffer.prototype.equals = function equals (b) { - if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer') - if (this === b) return true - return Buffer.compare(this, b) === 0 -} - -Buffer.prototype.inspect = function inspect () { - var str = '' - var max = exports.INSPECT_MAX_BYTES - if (this.length > 0) { - str = this.toString('hex', 0, max).match(/.{2}/g).join(' ') - if (this.length > max) str += ' ... ' - } - return '' -} - -Buffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) { - if (!Buffer.isBuffer(target)) { - throw new TypeError('Argument must be a Buffer') - } - - if (start === undefined) { - start = 0 - } - if (end === undefined) { - end = target ? target.length : 0 - } - if (thisStart === undefined) { - thisStart = 0 - } - if (thisEnd === undefined) { - thisEnd = this.length - } - - if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) { - throw new RangeError('out of range index') - } - - if (thisStart >= thisEnd && start >= end) { - return 0 - } - if (thisStart >= thisEnd) { - return -1 - } - if (start >= end) { - return 1 - } - - start >>>= 0 - end >>>= 0 - thisStart >>>= 0 - thisEnd >>>= 0 - - if (this === target) return 0 - - var x = thisEnd - thisStart - var y = end - start - var len = Math.min(x, y) - - var thisCopy = this.slice(thisStart, thisEnd) - var targetCopy = target.slice(start, end) - - for (var i = 0; i < len; ++i) { - if (thisCopy[i] !== targetCopy[i]) { - x = thisCopy[i] - y = targetCopy[i] - break - } - } - - if (x < y) return -1 - if (y < x) return 1 - return 0 -} - -// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`, -// OR the last index of `val` in `buffer` at offset <= `byteOffset`. -// -// Arguments: -// - buffer - a Buffer to search -// - val - a string, Buffer, or number -// - byteOffset - an index into `buffer`; will be clamped to an int32 -// - encoding - an optional encoding, relevant is val is a string -// - dir - true for indexOf, false for lastIndexOf -function bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) { - // Empty buffer means no match - if (buffer.length === 0) return -1 - - // Normalize byteOffset - if (typeof byteOffset === 'string') { - encoding = byteOffset - byteOffset = 0 - } else if (byteOffset > 0x7fffffff) { - byteOffset = 0x7fffffff - } else if (byteOffset < -0x80000000) { - byteOffset = -0x80000000 - } - byteOffset = +byteOffset // Coerce to Number. - if (isNaN(byteOffset)) { - // byteOffset: it it's undefined, null, NaN, "foo", etc, search whole buffer - byteOffset = dir ? 0 : (buffer.length - 1) - } - - // Normalize byteOffset: negative offsets start from the end of the buffer - if (byteOffset < 0) byteOffset = buffer.length + byteOffset - if (byteOffset >= buffer.length) { - if (dir) return -1 - else byteOffset = buffer.length - 1 - } else if (byteOffset < 0) { - if (dir) byteOffset = 0 - else return -1 - } - - // Normalize val - if (typeof val === 'string') { - val = Buffer.from(val, encoding) - } - - // Finally, search either indexOf (if dir is true) or lastIndexOf - if (Buffer.isBuffer(val)) { - // Special case: looking for empty string/buffer always fails - if (val.length === 0) { - return -1 - } - return arrayIndexOf(buffer, val, byteOffset, encoding, dir) - } else if (typeof val === 'number') { - val = val & 0xFF // Search for a byte value [0-255] - if (Buffer.TYPED_ARRAY_SUPPORT && - typeof Uint8Array.prototype.indexOf === 'function') { - if (dir) { - return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset) - } else { - return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset) - } - } - return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir) - } - - throw new TypeError('val must be string, number or Buffer') -} - -function arrayIndexOf (arr, val, byteOffset, encoding, dir) { - var indexSize = 1 - var arrLength = arr.length - var valLength = val.length - - if (encoding !== undefined) { - encoding = String(encoding).toLowerCase() - if (encoding === 'ucs2' || encoding === 'ucs-2' || - encoding === 'utf16le' || encoding === 'utf-16le') { - if (arr.length < 2 || val.length < 2) { - return -1 - } - indexSize = 2 - arrLength /= 2 - valLength /= 2 - byteOffset /= 2 - } - } - - function read (buf, i) { - if (indexSize === 1) { - return buf[i] - } else { - return buf.readUInt16BE(i * indexSize) - } - } - - var i - if (dir) { - var foundIndex = -1 - for (i = byteOffset; i < arrLength; i++) { - if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) { - if (foundIndex === -1) foundIndex = i - if (i - foundIndex + 1 === valLength) return foundIndex * indexSize - } else { - if (foundIndex !== -1) i -= i - foundIndex - foundIndex = -1 - } - } - } else { - if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength - for (i = byteOffset; i >= 0; i--) { - var found = true - for (var j = 0; j < valLength; j++) { - if (read(arr, i + j) !== read(val, j)) { - found = false - break - } - } - if (found) return i - } - } - - return -1 -} - -Buffer.prototype.includes = function includes (val, byteOffset, encoding) { - return this.indexOf(val, byteOffset, encoding) !== -1 -} - -Buffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) { - return bidirectionalIndexOf(this, val, byteOffset, encoding, true) -} - -Buffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) { - return bidirectionalIndexOf(this, val, byteOffset, encoding, false) -} - -function hexWrite (buf, string, offset, length) { - offset = Number(offset) || 0 - var remaining = buf.length - offset - if (!length) { - length = remaining - } else { - length = Number(length) - if (length > remaining) { - length = remaining - } - } - - // must be an even number of digits - var strLen = string.length - if (strLen % 2 !== 0) throw new TypeError('Invalid hex string') - - if (length > strLen / 2) { - length = strLen / 2 - } - for (var i = 0; i < length; ++i) { - var parsed = parseInt(string.substr(i * 2, 2), 16) - if (isNaN(parsed)) return i - buf[offset + i] = parsed - } - return i -} - -function utf8Write (buf, string, offset, length) { - return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length) -} - -function asciiWrite (buf, string, offset, length) { - return blitBuffer(asciiToBytes(string), buf, offset, length) -} - -function latin1Write (buf, string, offset, length) { - return asciiWrite(buf, string, offset, length) -} - -function base64Write (buf, string, offset, length) { - return blitBuffer(base64ToBytes(string), buf, offset, length) -} - -function ucs2Write (buf, string, offset, length) { - return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length) -} - -Buffer.prototype.write = function write (string, offset, length, encoding) { - // Buffer#write(string) - if (offset === undefined) { - encoding = 'utf8' - length = this.length - offset = 0 - // Buffer#write(string, encoding) - } else if (length === undefined && typeof offset === 'string') { - encoding = offset - length = this.length - offset = 0 - // Buffer#write(string, offset[, length][, encoding]) - } else if (isFinite(offset)) { - offset = offset | 0 - if (isFinite(length)) { - length = length | 0 - if (encoding === undefined) encoding = 'utf8' - } else { - encoding = length - length = undefined - } - // legacy write(string, encoding, offset, length) - remove in v0.13 - } else { - throw new Error( - 'Buffer.write(string, encoding, offset[, length]) is no longer supported' - ) - } - - var remaining = this.length - offset - if (length === undefined || length > remaining) length = remaining - - if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) { - throw new RangeError('Attempt to write outside buffer bounds') - } - - if (!encoding) encoding = 'utf8' - - var loweredCase = false - for (;;) { - switch (encoding) { - case 'hex': - return hexWrite(this, string, offset, length) - - case 'utf8': - case 'utf-8': - return utf8Write(this, string, offset, length) - - case 'ascii': - return asciiWrite(this, string, offset, length) - - case 'latin1': - case 'binary': - return latin1Write(this, string, offset, length) - - case 'base64': - // Warning: maxLength not taken into account in base64Write - return base64Write(this, string, offset, length) - - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return ucs2Write(this, string, offset, length) - - default: - if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding) - encoding = ('' + encoding).toLowerCase() - loweredCase = true - } - } -} - -Buffer.prototype.toJSON = function toJSON () { - return { - type: 'Buffer', - data: Array.prototype.slice.call(this._arr || this, 0) - } -} - -function base64Slice (buf, start, end) { - if (start === 0 && end === buf.length) { - return base64.fromByteArray(buf) - } else { - return base64.fromByteArray(buf.slice(start, end)) - } -} - -function utf8Slice (buf, start, end) { - end = Math.min(buf.length, end) - var res = [] - - var i = start - while (i < end) { - var firstByte = buf[i] - var codePoint = null - var bytesPerSequence = (firstByte > 0xEF) ? 4 - : (firstByte > 0xDF) ? 3 - : (firstByte > 0xBF) ? 2 - : 1 - - if (i + bytesPerSequence <= end) { - var secondByte, thirdByte, fourthByte, tempCodePoint - - switch (bytesPerSequence) { - case 1: - if (firstByte < 0x80) { - codePoint = firstByte - } - break - case 2: - secondByte = buf[i + 1] - if ((secondByte & 0xC0) === 0x80) { - tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F) - if (tempCodePoint > 0x7F) { - codePoint = tempCodePoint - } - } - break - case 3: - secondByte = buf[i + 1] - thirdByte = buf[i + 2] - if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) { - tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F) - if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) { - codePoint = tempCodePoint - } - } - break - case 4: - secondByte = buf[i + 1] - thirdByte = buf[i + 2] - fourthByte = buf[i + 3] - if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) { - tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F) - if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) { - codePoint = tempCodePoint - } - } - } - } - - if (codePoint === null) { - // we did not generate a valid codePoint so insert a - // replacement char (U+FFFD) and advance only 1 byte - codePoint = 0xFFFD - bytesPerSequence = 1 - } else if (codePoint > 0xFFFF) { - // encode to utf16 (surrogate pair dance) - codePoint -= 0x10000 - res.push(codePoint >>> 10 & 0x3FF | 0xD800) - codePoint = 0xDC00 | codePoint & 0x3FF - } - - res.push(codePoint) - i += bytesPerSequence - } - - return decodeCodePointsArray(res) -} - -// Based on http://stackoverflow.com/a/22747272/680742, the browser with -// the lowest limit is Chrome, with 0x10000 args. -// We go 1 magnitude less, for safety -var MAX_ARGUMENTS_LENGTH = 0x1000 - -function decodeCodePointsArray (codePoints) { - var len = codePoints.length - if (len <= MAX_ARGUMENTS_LENGTH) { - return String.fromCharCode.apply(String, codePoints) // avoid extra slice() - } - - // Decode in chunks to avoid "call stack size exceeded". - var res = '' - var i = 0 - while (i < len) { - res += String.fromCharCode.apply( - String, - codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH) - ) - } - return res -} - -function asciiSlice (buf, start, end) { - var ret = '' - end = Math.min(buf.length, end) - - for (var i = start; i < end; ++i) { - ret += String.fromCharCode(buf[i] & 0x7F) - } - return ret -} - -function latin1Slice (buf, start, end) { - var ret = '' - end = Math.min(buf.length, end) - - for (var i = start; i < end; ++i) { - ret += String.fromCharCode(buf[i]) - } - return ret -} - -function hexSlice (buf, start, end) { - var len = buf.length - - if (!start || start < 0) start = 0 - if (!end || end < 0 || end > len) end = len - - var out = '' - for (var i = start; i < end; ++i) { - out += toHex(buf[i]) - } - return out -} - -function utf16leSlice (buf, start, end) { - var bytes = buf.slice(start, end) - var res = '' - for (var i = 0; i < bytes.length; i += 2) { - res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256) - } - return res -} - -Buffer.prototype.slice = function slice (start, end) { - var len = this.length - start = ~~start - end = end === undefined ? len : ~~end - - if (start < 0) { - start += len - if (start < 0) start = 0 - } else if (start > len) { - start = len - } - - if (end < 0) { - end += len - if (end < 0) end = 0 - } else if (end > len) { - end = len - } - - if (end < start) end = start - - var newBuf - if (Buffer.TYPED_ARRAY_SUPPORT) { - newBuf = this.subarray(start, end) - newBuf.__proto__ = Buffer.prototype - } else { - var sliceLen = end - start - newBuf = new Buffer(sliceLen, undefined) - for (var i = 0; i < sliceLen; ++i) { - newBuf[i] = this[i + start] - } - } - - return newBuf -} - -/* - * Need to make sure that buffer isn't trying to write out of bounds. - */ -function checkOffset (offset, ext, length) { - if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint') - if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length') -} - -Buffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) { - offset = offset | 0 - byteLength = byteLength | 0 - if (!noAssert) checkOffset(offset, byteLength, this.length) - - var val = this[offset] - var mul = 1 - var i = 0 - while (++i < byteLength && (mul *= 0x100)) { - val += this[offset + i] * mul - } - - return val -} - -Buffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) { - offset = offset | 0 - byteLength = byteLength | 0 - if (!noAssert) { - checkOffset(offset, byteLength, this.length) - } - - var val = this[offset + --byteLength] - var mul = 1 - while (byteLength > 0 && (mul *= 0x100)) { - val += this[offset + --byteLength] * mul - } - - return val -} - -Buffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) { - if (!noAssert) checkOffset(offset, 1, this.length) - return this[offset] -} - -Buffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 2, this.length) - return this[offset] | (this[offset + 1] << 8) -} - -Buffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 2, this.length) - return (this[offset] << 8) | this[offset + 1] -} - -Buffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 4, this.length) - - return ((this[offset]) | - (this[offset + 1] << 8) | - (this[offset + 2] << 16)) + - (this[offset + 3] * 0x1000000) -} - -Buffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 4, this.length) - - return (this[offset] * 0x1000000) + - ((this[offset + 1] << 16) | - (this[offset + 2] << 8) | - this[offset + 3]) -} - -Buffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) { - offset = offset | 0 - byteLength = byteLength | 0 - if (!noAssert) checkOffset(offset, byteLength, this.length) - - var val = this[offset] - var mul = 1 - var i = 0 - while (++i < byteLength && (mul *= 0x100)) { - val += this[offset + i] * mul - } - mul *= 0x80 - - if (val >= mul) val -= Math.pow(2, 8 * byteLength) - - return val -} - -Buffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) { - offset = offset | 0 - byteLength = byteLength | 0 - if (!noAssert) checkOffset(offset, byteLength, this.length) - - var i = byteLength - var mul = 1 - var val = this[offset + --i] - while (i > 0 && (mul *= 0x100)) { - val += this[offset + --i] * mul - } - mul *= 0x80 - - if (val >= mul) val -= Math.pow(2, 8 * byteLength) - - return val -} - -Buffer.prototype.readInt8 = function readInt8 (offset, noAssert) { - if (!noAssert) checkOffset(offset, 1, this.length) - if (!(this[offset] & 0x80)) return (this[offset]) - return ((0xff - this[offset] + 1) * -1) -} - -Buffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 2, this.length) - var val = this[offset] | (this[offset + 1] << 8) - return (val & 0x8000) ? val | 0xFFFF0000 : val -} - -Buffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 2, this.length) - var val = this[offset + 1] | (this[offset] << 8) - return (val & 0x8000) ? val | 0xFFFF0000 : val -} - -Buffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 4, this.length) - - return (this[offset]) | - (this[offset + 1] << 8) | - (this[offset + 2] << 16) | - (this[offset + 3] << 24) -} - -Buffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 4, this.length) - - return (this[offset] << 24) | - (this[offset + 1] << 16) | - (this[offset + 2] << 8) | - (this[offset + 3]) -} - -Buffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 4, this.length) - return ieee754.read(this, offset, true, 23, 4) -} - -Buffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 4, this.length) - return ieee754.read(this, offset, false, 23, 4) -} - -Buffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 8, this.length) - return ieee754.read(this, offset, true, 52, 8) -} - -Buffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 8, this.length) - return ieee754.read(this, offset, false, 52, 8) -} - -function checkInt (buf, value, offset, ext, max, min) { - if (!Buffer.isBuffer(buf)) throw new TypeError('"buffer" argument must be a Buffer instance') - if (value > max || value < min) throw new RangeError('"value" argument is out of bounds') - if (offset + ext > buf.length) throw new RangeError('Index out of range') -} - -Buffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) { - value = +value - offset = offset | 0 - byteLength = byteLength | 0 - if (!noAssert) { - var maxBytes = Math.pow(2, 8 * byteLength) - 1 - checkInt(this, value, offset, byteLength, maxBytes, 0) - } - - var mul = 1 - var i = 0 - this[offset] = value & 0xFF - while (++i < byteLength && (mul *= 0x100)) { - this[offset + i] = (value / mul) & 0xFF - } - - return offset + byteLength -} - -Buffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) { - value = +value - offset = offset | 0 - byteLength = byteLength | 0 - if (!noAssert) { - var maxBytes = Math.pow(2, 8 * byteLength) - 1 - checkInt(this, value, offset, byteLength, maxBytes, 0) - } - - var i = byteLength - 1 - var mul = 1 - this[offset + i] = value & 0xFF - while (--i >= 0 && (mul *= 0x100)) { - this[offset + i] = (value / mul) & 0xFF - } - - return offset + byteLength -} - -Buffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0) - if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value) - this[offset] = (value & 0xff) - return offset + 1 -} - -function objectWriteUInt16 (buf, value, offset, littleEndian) { - if (value < 0) value = 0xffff + value + 1 - for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; ++i) { - buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>> - (littleEndian ? i : 1 - i) * 8 - } -} - -Buffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0) - if (Buffer.TYPED_ARRAY_SUPPORT) { - this[offset] = (value & 0xff) - this[offset + 1] = (value >>> 8) - } else { - objectWriteUInt16(this, value, offset, true) - } - return offset + 2 -} - -Buffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0) - if (Buffer.TYPED_ARRAY_SUPPORT) { - this[offset] = (value >>> 8) - this[offset + 1] = (value & 0xff) - } else { - objectWriteUInt16(this, value, offset, false) - } - return offset + 2 -} - -function objectWriteUInt32 (buf, value, offset, littleEndian) { - if (value < 0) value = 0xffffffff + value + 1 - for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; ++i) { - buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff - } -} - -Buffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0) - if (Buffer.TYPED_ARRAY_SUPPORT) { - this[offset + 3] = (value >>> 24) - this[offset + 2] = (value >>> 16) - this[offset + 1] = (value >>> 8) - this[offset] = (value & 0xff) - } else { - objectWriteUInt32(this, value, offset, true) - } - return offset + 4 -} - -Buffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0) - if (Buffer.TYPED_ARRAY_SUPPORT) { - this[offset] = (value >>> 24) - this[offset + 1] = (value >>> 16) - this[offset + 2] = (value >>> 8) - this[offset + 3] = (value & 0xff) - } else { - objectWriteUInt32(this, value, offset, false) - } - return offset + 4 -} - -Buffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) { - var limit = Math.pow(2, 8 * byteLength - 1) - - checkInt(this, value, offset, byteLength, limit - 1, -limit) - } - - var i = 0 - var mul = 1 - var sub = 0 - this[offset] = value & 0xFF - while (++i < byteLength && (mul *= 0x100)) { - if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) { - sub = 1 - } - this[offset + i] = ((value / mul) >> 0) - sub & 0xFF - } - - return offset + byteLength -} - -Buffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) { - var limit = Math.pow(2, 8 * byteLength - 1) - - checkInt(this, value, offset, byteLength, limit - 1, -limit) - } - - var i = byteLength - 1 - var mul = 1 - var sub = 0 - this[offset + i] = value & 0xFF - while (--i >= 0 && (mul *= 0x100)) { - if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) { - sub = 1 - } - this[offset + i] = ((value / mul) >> 0) - sub & 0xFF - } - - return offset + byteLength -} - -Buffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80) - if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value) - if (value < 0) value = 0xff + value + 1 - this[offset] = (value & 0xff) - return offset + 1 -} - -Buffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000) - if (Buffer.TYPED_ARRAY_SUPPORT) { - this[offset] = (value & 0xff) - this[offset + 1] = (value >>> 8) - } else { - objectWriteUInt16(this, value, offset, true) - } - return offset + 2 -} - -Buffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000) - if (Buffer.TYPED_ARRAY_SUPPORT) { - this[offset] = (value >>> 8) - this[offset + 1] = (value & 0xff) - } else { - objectWriteUInt16(this, value, offset, false) - } - return offset + 2 -} - -Buffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000) - if (Buffer.TYPED_ARRAY_SUPPORT) { - this[offset] = (value & 0xff) - this[offset + 1] = (value >>> 8) - this[offset + 2] = (value >>> 16) - this[offset + 3] = (value >>> 24) - } else { - objectWriteUInt32(this, value, offset, true) - } - return offset + 4 -} - -Buffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000) - if (value < 0) value = 0xffffffff + value + 1 - if (Buffer.TYPED_ARRAY_SUPPORT) { - this[offset] = (value >>> 24) - this[offset + 1] = (value >>> 16) - this[offset + 2] = (value >>> 8) - this[offset + 3] = (value & 0xff) - } else { - objectWriteUInt32(this, value, offset, false) - } - return offset + 4 -} - -function checkIEEE754 (buf, value, offset, ext, max, min) { - if (offset + ext > buf.length) throw new RangeError('Index out of range') - if (offset < 0) throw new RangeError('Index out of range') -} - -function writeFloat (buf, value, offset, littleEndian, noAssert) { - if (!noAssert) { - checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38) - } - ieee754.write(buf, value, offset, littleEndian, 23, 4) - return offset + 4 -} - -Buffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) { - return writeFloat(this, value, offset, true, noAssert) -} - -Buffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) { - return writeFloat(this, value, offset, false, noAssert) -} - -function writeDouble (buf, value, offset, littleEndian, noAssert) { - if (!noAssert) { - checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308) - } - ieee754.write(buf, value, offset, littleEndian, 52, 8) - return offset + 8 -} - -Buffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) { - return writeDouble(this, value, offset, true, noAssert) -} - -Buffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) { - return writeDouble(this, value, offset, false, noAssert) -} - -// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length) -Buffer.prototype.copy = function copy (target, targetStart, start, end) { - if (!start) start = 0 - if (!end && end !== 0) end = this.length - if (targetStart >= target.length) targetStart = target.length - if (!targetStart) targetStart = 0 - if (end > 0 && end < start) end = start - - // Copy 0 bytes; we're done - if (end === start) return 0 - if (target.length === 0 || this.length === 0) return 0 - - // Fatal error conditions - if (targetStart < 0) { - throw new RangeError('targetStart out of bounds') - } - if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds') - if (end < 0) throw new RangeError('sourceEnd out of bounds') - - // Are we oob? - if (end > this.length) end = this.length - if (target.length - targetStart < end - start) { - end = target.length - targetStart + start - } - - var len = end - start - var i - - if (this === target && start < targetStart && targetStart < end) { - // descending copy from end - for (i = len - 1; i >= 0; --i) { - target[i + targetStart] = this[i + start] - } - } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) { - // ascending copy from start - for (i = 0; i < len; ++i) { - target[i + targetStart] = this[i + start] - } - } else { - Uint8Array.prototype.set.call( - target, - this.subarray(start, start + len), - targetStart - ) - } - - return len -} - -// Usage: -// buffer.fill(number[, offset[, end]]) -// buffer.fill(buffer[, offset[, end]]) -// buffer.fill(string[, offset[, end]][, encoding]) -Buffer.prototype.fill = function fill (val, start, end, encoding) { - // Handle string cases: - if (typeof val === 'string') { - if (typeof start === 'string') { - encoding = start - start = 0 - end = this.length - } else if (typeof end === 'string') { - encoding = end - end = this.length - } - if (val.length === 1) { - var code = val.charCodeAt(0) - if (code < 256) { - val = code - } - } - if (encoding !== undefined && typeof encoding !== 'string') { - throw new TypeError('encoding must be a string') - } - if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) { - throw new TypeError('Unknown encoding: ' + encoding) - } - } else if (typeof val === 'number') { - val = val & 255 - } - - // Invalid ranges are not set to a default, so can range check early. - if (start < 0 || this.length < start || this.length < end) { - throw new RangeError('Out of range index') - } - - if (end <= start) { - return this - } - - start = start >>> 0 - end = end === undefined ? this.length : end >>> 0 - - if (!val) val = 0 - - var i - if (typeof val === 'number') { - for (i = start; i < end; ++i) { - this[i] = val - } - } else { - var bytes = Buffer.isBuffer(val) - ? val - : utf8ToBytes(new Buffer(val, encoding).toString()) - var len = bytes.length - for (i = 0; i < end - start; ++i) { - this[i + start] = bytes[i % len] - } - } - - return this -} - -// HELPER FUNCTIONS -// ================ - -var INVALID_BASE64_RE = /[^+\/0-9A-Za-z-_]/g - -function base64clean (str) { - // Node strips out invalid characters like \n and \t from the string, base64-js does not - str = stringtrim(str).replace(INVALID_BASE64_RE, '') - // Node converts strings with length < 2 to '' - if (str.length < 2) return '' - // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not - while (str.length % 4 !== 0) { - str = str + '=' - } - return str -} - -function stringtrim (str) { - if (str.trim) return str.trim() - return str.replace(/^\s+|\s+$/g, '') -} - -function toHex (n) { - if (n < 16) return '0' + n.toString(16) - return n.toString(16) -} - -function utf8ToBytes (string, units) { - units = units || Infinity - var codePoint - var length = string.length - var leadSurrogate = null - var bytes = [] - - for (var i = 0; i < length; ++i) { - codePoint = string.charCodeAt(i) - - // is surrogate component - if (codePoint > 0xD7FF && codePoint < 0xE000) { - // last char was a lead - if (!leadSurrogate) { - // no lead yet - if (codePoint > 0xDBFF) { - // unexpected trail - if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) - continue - } else if (i + 1 === length) { - // unpaired lead - if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) - continue - } - - // valid lead - leadSurrogate = codePoint - - continue - } - - // 2 leads in a row - if (codePoint < 0xDC00) { - if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) - leadSurrogate = codePoint - continue - } - - // valid surrogate pair - codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000 - } else if (leadSurrogate) { - // valid bmp char, but last char was a lead - if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) - } - - leadSurrogate = null - - // encode utf8 - if (codePoint < 0x80) { - if ((units -= 1) < 0) break - bytes.push(codePoint) - } else if (codePoint < 0x800) { - if ((units -= 2) < 0) break - bytes.push( - codePoint >> 0x6 | 0xC0, - codePoint & 0x3F | 0x80 - ) - } else if (codePoint < 0x10000) { - if ((units -= 3) < 0) break - bytes.push( - codePoint >> 0xC | 0xE0, - codePoint >> 0x6 & 0x3F | 0x80, - codePoint & 0x3F | 0x80 - ) - } else if (codePoint < 0x110000) { - if ((units -= 4) < 0) break - bytes.push( - codePoint >> 0x12 | 0xF0, - codePoint >> 0xC & 0x3F | 0x80, - codePoint >> 0x6 & 0x3F | 0x80, - codePoint & 0x3F | 0x80 - ) - } else { - throw new Error('Invalid code point') - } - } - - return bytes -} - -function asciiToBytes (str) { - var byteArray = [] - for (var i = 0; i < str.length; ++i) { - // Node's code seems to be doing this and not & 0x7F.. - byteArray.push(str.charCodeAt(i) & 0xFF) - } - return byteArray -} - -function utf16leToBytes (str, units) { - var c, hi, lo - var byteArray = [] - for (var i = 0; i < str.length; ++i) { - if ((units -= 2) < 0) break - - c = str.charCodeAt(i) - hi = c >> 8 - lo = c % 256 - byteArray.push(lo) - byteArray.push(hi) - } - - return byteArray -} - -function base64ToBytes (str) { - return base64.toByteArray(base64clean(str)) -} - -function blitBuffer (src, dst, offset, length) { - for (var i = 0; i < length; ++i) { - if ((i + offset >= dst.length) || (i >= src.length)) break - dst[i + offset] = src[i] - } - return i -} - -function isnan (val) { - return val !== val // eslint-disable-line no-self-compare -} - -/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(0))) - -/***/ }), -/* 7 */ -/***/ (function(module, exports) { - -var toString = {}.toString; - -module.exports = Array.isArray || function (arr) { - return toString.call(arr) == '[object Array]'; -}; - - -/***/ }), -/* 8 */ -/***/ (function(module, exports) { - -exports.read = function (buffer, offset, isLE, mLen, nBytes) { - var e, m - var eLen = nBytes * 8 - mLen - 1 - var eMax = (1 << eLen) - 1 - var eBias = eMax >> 1 - var nBits = -7 - var i = isLE ? (nBytes - 1) : 0 - var d = isLE ? -1 : 1 - var s = buffer[offset + i] - - i += d - - e = s & ((1 << (-nBits)) - 1) - s >>= (-nBits) - nBits += eLen - for (; nBits > 0; e = e * 256 + buffer[offset + i], i += d, nBits -= 8) {} - - m = e & ((1 << (-nBits)) - 1) - e >>= (-nBits) - nBits += mLen - for (; nBits > 0; m = m * 256 + buffer[offset + i], i += d, nBits -= 8) {} - - if (e === 0) { - e = 1 - eBias - } else if (e === eMax) { - return m ? NaN : ((s ? -1 : 1) * Infinity) - } else { - m = m + Math.pow(2, mLen) - e = e - eBias - } - return (s ? -1 : 1) * m * Math.pow(2, e - mLen) -} - -exports.write = function (buffer, value, offset, isLE, mLen, nBytes) { - var e, m, c - var eLen = nBytes * 8 - mLen - 1 - var eMax = (1 << eLen) - 1 - var eBias = eMax >> 1 - var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0) - var i = isLE ? 0 : (nBytes - 1) - var d = isLE ? 1 : -1 - var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0 - - value = Math.abs(value) - - if (isNaN(value) || value === Infinity) { - m = isNaN(value) ? 1 : 0 - e = eMax - } else { - e = Math.floor(Math.log(value) / Math.LN2) - if (value * (c = Math.pow(2, -e)) < 1) { - e-- - c *= 2 - } - if (e + eBias >= 1) { - value += rt / c - } else { - value += rt * Math.pow(2, 1 - eBias) - } - if (value * c >= 2) { - e++ - c /= 2 - } - - if (e + eBias >= eMax) { - m = 0 - e = eMax - } else if (e + eBias >= 1) { - m = (value * c - 1) * Math.pow(2, mLen) - e = e + eBias - } else { - m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen) - e = 0 - } - } - - for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {} - - e = (e << mLen) | m - eLen += mLen - for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {} - - buffer[offset + i - d] |= s * 128 -} - - -/***/ }), -/* 9 */ -/***/ (function(module, exports, __webpack_require__) { - -/* WEBPACK VAR INJECTION */(function(global, Buffer) {var require;var require;(function(f){if(true){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.mapboxgl = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return require(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o0){for(var o=0,a=0,u=0;uh.maxh||t>h.maxw||i<=h.maxh&&t<=h.maxw&&(r=h.maxw*h.maxh-t*i,rn.free)){if(i===n.h)return this.allocShelf(f,t,i,s);i>n.h||ic)&&(p=2*Math.max(t,c)),(uu)&&(l=2*Math.max(i,u)),this.resize(p,l),this.packOne(t,i,s)}return null},t.prototype.allocFreebin=function(t,e,i,s){var h=this.freebins.splice(t,1)[0];return h.id=s,h.w=e,h.h=i,h.refcount=0,this.bins[s]=h,this.ref(h),h},t.prototype.allocShelf=function(t,e,i,s){var h=this.shelves[t],n=h.alloc(e,i,s);return this.bins[s]=n,this.ref(n),n},t.prototype.getBin=function(t){return this.bins[t]},t.prototype.ref=function(t){if(1===++t.refcount){var e=t.h;this.stats[e]=(0|this.stats[e])+1}return t.refcount},t.prototype.unref=function(t){return 0===t.refcount?0:(0===--t.refcount&&(this.stats[t.h]--,delete this.bins[t.id],this.freebins.push(t)),t.refcount)},t.prototype.clear=function(){this.shelves=[],this.freebins=[],this.stats={},this.bins={},this.maxId=0},t.prototype.resize=function(t,e){this.w=t,this.h=e;for(var i=0;ithis.free||e>this.h)return null;var h=this.x;return this.x+=t,this.free-=t,new i(s,h,this.y,t,e,t,this.h)},e.prototype.resize=function(t){return this.free+=t-this.w,this.w=t,!0},t}); -},{}],3:[function(require,module,exports){ -function UnitBezier(t,i,e,r){this.cx=3*t,this.bx=3*(e-t)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*i,this.by=3*(r-i)-this.cy,this.ay=1-this.cy-this.by,this.p1x=t,this.p1y=r,this.p2x=e,this.p2y=r}module.exports=UnitBezier,UnitBezier.prototype.sampleCurveX=function(t){return((this.ax*t+this.bx)*t+this.cx)*t},UnitBezier.prototype.sampleCurveY=function(t){return((this.ay*t+this.by)*t+this.cy)*t},UnitBezier.prototype.sampleCurveDerivativeX=function(t){return(3*this.ax*t+2*this.bx)*t+this.cx},UnitBezier.prototype.solveCurveX=function(t,i){"undefined"==typeof i&&(i=1e-6);var e,r,s,h,n;for(s=t,n=0;n<8;n++){if(h=this.sampleCurveX(s)-t,Math.abs(h)r)return r;for(;eh?e=s:r=s,s=.5*(r-e)+e}return s},UnitBezier.prototype.solve=function(t,i){return this.sampleCurveY(this.solveCurveX(t,i))}; -},{}],4:[function(require,module,exports){ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t(e.WhooTS=e.WhooTS||{})}(this,function(e){function t(e,t,r,n,i,s){s=s||{};var f=e+"?"+["bbox="+o(r,n,i),"format="+(s.format||"image/png"),"service="+(s.service||"WMS"),"version="+(s.version||"1.1.1"),"request="+(s.request||"GetMap"),"srs="+(s.srs||"EPSG:3857"),"width="+(s.width||256),"height="+(s.height||256),"layers="+t].join("&");return f}function o(e,t,o){t=Math.pow(2,o)-t-1;var n=r(256*e,256*t,o),i=r(256*(e+1),256*(t+1),o);return n[0]+","+n[1]+","+i[0]+","+i[1]}function r(e,t,o){var r=2*Math.PI*6378137/256/Math.pow(2,o),n=e*r-2*Math.PI*6378137/2,i=t*r-2*Math.PI*6378137/2;return[n,i]}e.getURL=t,e.getTileBBox=o,e.getMercCoords=r,Object.defineProperty(e,"__esModule",{value:!0})}); -},{}],5:[function(require,module,exports){ -"use strict";function earcut(e,n,r){r=r||2;var t=n&&n.length,i=t?n[0]*r:e.length,x=linkedList(e,0,i,r,!0),a=[];if(!x)return a;var o,l,u,s,v,f,y;if(t&&(x=eliminateHoles(e,n,x,r)),e.length>80*r){o=u=e[0],l=s=e[1];for(var d=r;du&&(u=v),f>s&&(s=f);y=Math.max(u-o,s-l)}return earcutLinked(x,a,r,o,l,y),a}function linkedList(e,n,r,t,i){var x,a;if(i===signedArea(e,n,r,t)>0)for(x=n;x=n;x-=t)a=insertNode(x,e[x],e[x+1],a);return a&&equals(a,a.next)&&(removeNode(a),a=a.next),a}function filterPoints(e,n){if(!e)return e;n||(n=e);var r,t=e;do if(r=!1,t.steiner||!equals(t,t.next)&&0!==area(t.prev,t,t.next))t=t.next;else{if(removeNode(t),t=n=t.prev,t===t.next)return null;r=!0}while(r||t!==n);return n}function earcutLinked(e,n,r,t,i,x,a){if(e){!a&&x&&indexCurve(e,t,i,x);for(var o,l,u=e;e.prev!==e.next;)if(o=e.prev,l=e.next,x?isEarHashed(e,t,i,x):isEar(e))n.push(o.i/r),n.push(e.i/r),n.push(l.i/r),removeNode(e),e=l.next,u=l.next;else if(e=l,e===u){a?1===a?(e=cureLocalIntersections(e,n,r),earcutLinked(e,n,r,t,i,x,2)):2===a&&splitEarcut(e,n,r,t,i,x):earcutLinked(filterPoints(e),n,r,t,i,x,1);break}}}function isEar(e){var n=e.prev,r=e,t=e.next;if(area(n,r,t)>=0)return!1;for(var i=e.next.next;i!==e.prev;){if(pointInTriangle(n.x,n.y,r.x,r.y,t.x,t.y,i.x,i.y)&&area(i.prev,i,i.next)>=0)return!1;i=i.next}return!0}function isEarHashed(e,n,r,t){var i=e.prev,x=e,a=e.next;if(area(i,x,a)>=0)return!1;for(var o=i.xx.x?i.x>a.x?i.x:a.x:x.x>a.x?x.x:a.x,s=i.y>x.y?i.y>a.y?i.y:a.y:x.y>a.y?x.y:a.y,v=zOrder(o,l,n,r,t),f=zOrder(u,s,n,r,t),y=e.nextZ;y&&y.z<=f;){if(y!==e.prev&&y!==e.next&&pointInTriangle(i.x,i.y,x.x,x.y,a.x,a.y,y.x,y.y)&&area(y.prev,y,y.next)>=0)return!1;y=y.nextZ}for(y=e.prevZ;y&&y.z>=v;){if(y!==e.prev&&y!==e.next&&pointInTriangle(i.x,i.y,x.x,x.y,a.x,a.y,y.x,y.y)&&area(y.prev,y,y.next)>=0)return!1;y=y.prevZ}return!0}function cureLocalIntersections(e,n,r){var t=e;do{var i=t.prev,x=t.next.next;!equals(i,x)&&intersects(i,t,t.next,x)&&locallyInside(i,x)&&locallyInside(x,i)&&(n.push(i.i/r),n.push(t.i/r),n.push(x.i/r),removeNode(t),removeNode(t.next),t=e=x),t=t.next}while(t!==e);return t}function splitEarcut(e,n,r,t,i,x){var a=e;do{for(var o=a.next.next;o!==a.prev;){if(a.i!==o.i&&isValidDiagonal(a,o)){var l=splitPolygon(a,o);return a=filterPoints(a,a.next),l=filterPoints(l,l.next),earcutLinked(a,n,r,t,i,x),void earcutLinked(l,n,r,t,i,x)}o=o.next}a=a.next}while(a!==e)}function eliminateHoles(e,n,r,t){var i,x,a,o,l,u=[];for(i=0,x=n.length;i=t.next.y){var o=t.x+(x-t.y)*(t.next.x-t.x)/(t.next.y-t.y);if(o<=i&&o>a){if(a=o,o===i){if(x===t.y)return t;if(x===t.next.y)return t.next}r=t.x=t.x&&t.x>=s&&pointInTriangle(xr.x)&&locallyInside(t,e)&&(r=t,f=l)),t=t.next;return r}function indexCurve(e,n,r,t){var i=e;do null===i.z&&(i.z=zOrder(i.x,i.y,n,r,t)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next;while(i!==e);i.prevZ.nextZ=null,i.prevZ=null,sortLinked(i)}function sortLinked(e){var n,r,t,i,x,a,o,l,u=1;do{for(r=e,e=null,x=null,a=0;r;){for(a++,t=r,o=0,n=0;n0||l>0&&t;)0===o?(i=t,t=t.nextZ,l--):0!==l&&t?r.z<=t.z?(i=r,r=r.nextZ,o--):(i=t,t=t.nextZ,l--):(i=r,r=r.nextZ,o--),x?x.nextZ=i:e=i,i.prevZ=x,x=i;r=t}x.nextZ=null,u*=2}while(a>1);return e}function zOrder(e,n,r,t,i){return e=32767*(e-r)/i,n=32767*(n-t)/i,e=16711935&(e|e<<8),e=252645135&(e|e<<4),e=858993459&(e|e<<2),e=1431655765&(e|e<<1),n=16711935&(n|n<<8),n=252645135&(n|n<<4),n=858993459&(n|n<<2),n=1431655765&(n|n<<1),e|n<<1}function getLeftmost(e){var n=e,r=e;do n.x=0&&(e-a)*(t-o)-(r-a)*(n-o)>=0&&(r-a)*(x-o)-(i-a)*(t-o)>=0}function isValidDiagonal(e,n){return e.next.i!==n.i&&e.prev.i!==n.i&&!intersectsPolygon(e,n)&&locallyInside(e,n)&&locallyInside(n,e)&&middleInside(e,n)}function area(e,n,r){return(n.y-e.y)*(r.x-n.x)-(n.x-e.x)*(r.y-n.y)}function equals(e,n){return e.x===n.x&&e.y===n.y}function intersects(e,n,r,t){return!!(equals(e,n)&&equals(r,t)||equals(e,t)&&equals(r,n))||area(e,n,r)>0!=area(e,n,t)>0&&area(r,t,e)>0!=area(r,t,n)>0}function intersectsPolygon(e,n){var r=e;do{if(r.i!==e.i&&r.next.i!==e.i&&r.i!==n.i&&r.next.i!==n.i&&intersects(r,r.next,e,n))return!0;r=r.next}while(r!==e);return!1}function locallyInside(e,n){return area(e.prev,e,e.next)<0?area(e,n,e.next)>=0&&area(e,e.prev,n)>=0:area(e,n,e.prev)<0||area(e,e.next,n)<0}function middleInside(e,n){var r=e,t=!1,i=(e.x+n.x)/2,x=(e.y+n.y)/2;do r.y>x!=r.next.y>x&&i<(r.next.x-r.x)*(x-r.y)/(r.next.y-r.y)+r.x&&(t=!t),r=r.next;while(r!==e);return t}function splitPolygon(e,n){var r=new Node(e.i,e.x,e.y),t=new Node(n.i,n.x,n.y),i=e.next,x=n.prev;return e.next=n,n.prev=e,r.next=i,i.prev=r,t.next=r,r.prev=t,x.next=t,t.prev=x,t}function insertNode(e,n,r,t){var i=new Node(e,n,r);return t?(i.next=t.next,i.prev=t,t.next.prev=i,t.next=i):(i.prev=i,i.next=i),i}function removeNode(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function Node(e,n,r){this.i=e,this.x=n,this.y=r,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function signedArea(e,n,r,t){for(var i=0,x=n,a=r-t;x0&&(t+=e[i-1].length,r.holes.push(t))}return r}; -},{}],6:[function(require,module,exports){ -function geometry(r){if("Polygon"===r.type)return polygonArea(r.coordinates);if("MultiPolygon"===r.type){for(var e=0,n=0;n0){e+=Math.abs(ringArea(r[0]));for(var n=1;n2){for(var n,t,o=0;o=0}var geojsonArea=require("geojson-area");module.exports=rewind; -},{"geojson-area":6}],8:[function(require,module,exports){ -"use strict";function clip(e,r,t,n,u,i,l,s){if(t/=r,n/=r,l>=t&&s<=n)return e;if(l>n||s=t&&c<=n)h.push(o);else if(!(a>n||c=r&&s<=t&&u.push(l)}return u}function clipGeometry(e,r,t,n,u,i){for(var l=[],s=0;st?(d.push(u(h,f,r),u(h,f,t)),i||(d=newSlice(l,d,v,m,w))):o>=r&&d.push(u(h,f,r)):c>t?ot&&(d.push(u(h,f,t)),i||(d=newSlice(l,d,v,m,w))));h=g[S-1],c=h[n],c>=r&&c<=t&&d.push(h),a=d[d.length-1],i&&a&&(d[0][0]!==a[0]||d[0][1]!==a[1])&&d.push(d[0]),newSlice(l,d,v,m,w)}return l}function newSlice(e,r,t,n,u){return r.length&&(r.area=t,r.dist=n,void 0!==u&&(r.outer=u),e.push(r)),[]}module.exports=clip;var createFeature=require("./feature"); -},{"./feature":10}],9:[function(require,module,exports){ -"use strict";function convert(e,t){var r=[];if("FeatureCollection"===e.type)for(var o=0;o1?1:o,[r,o,0]}function calcSize(e){for(var t,r,o=0,a=0,i=0;i1)return!1;var r=n.geometry[0].length;if(5!==r)return!1;for(var s=0;s1&&console.time("creation"),m=this.tiles[d]=createTile(e,p,i,o,f,t===a.maxZoom),this.tileCoords.push({z:t,x:i,y:o}),u)){u>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",t,i,o,m.numFeatures,m.numPoints,m.numSimplified),console.timeEnd("creation"));var h="z"+t;this.stats[h]=(this.stats[h]||0)+1,this.total++}if(m.source=e,n){if(t===a.maxZoom||t===n)continue;var x=1<1&&console.time("clipping");var g,v,M,T,b,y,S=.5*a.buffer/a.extent,Z=.5-S,q=.5+S,w=1+S;g=v=M=T=null,b=clip(e,p,i-S,i+q,0,intersectX,m.min[0],m.max[0]),y=clip(e,p,i+Z,i+w,0,intersectX,m.min[0],m.max[0]),b&&(g=clip(b,p,o-S,o+q,1,intersectY,m.min[1],m.max[1]),v=clip(b,p,o+Z,o+w,1,intersectY,m.min[1],m.max[1])),y&&(M=clip(y,p,o-S,o+q,1,intersectY,m.min[1],m.max[1]),T=clip(y,p,o+Z,o+w,1,intersectY,m.min[1],m.max[1])),u>1&&console.timeEnd("clipping"),e.length&&(l.push(g||[],t+1,2*i,2*o),l.push(v||[],t+1,2*i,2*o+1),l.push(M||[],t+1,2*i+1,2*o),l.push(T||[],t+1,2*i+1,2*o+1))}else n&&(c=t)}return c},GeoJSONVT.prototype.getTile=function(e,t,i){var o=this.options,n=o.extent,r=o.debug,s=1<1&&console.log("drilling down to z%d-%d-%d",e,t,i);for(var a,u=e,c=t,p=i;!a&&u>0;)u--,c=Math.floor(c/2),p=Math.floor(p/2),a=this.tiles[toID(u,c,p)];if(!a||!a.source)return null;if(r>1&&console.log("found parent tile z%d-%d-%d",u,c,p),isClippedSquare(a,n,o.buffer))return transform.tile(a,n);r>1&&console.time("drilling down");var d=this.splitTile(a.source,u,c,p,e,t,i);if(r>1&&console.timeEnd("drilling down"),null!==d){var m=1<p&&(s=e,p=r);p>o?(t[s][2]=p,g.push(u),g.push(s),u=s):(n=g.pop(),u=g.pop())}}function getSqSegDist(t,i,e){var p=i[0],r=i[1],s=e[0],o=e[1],f=t[0],u=t[1],n=s-p,g=o-r;if(0!==n||0!==g){var l=((f-p)*n+(u-r)*g)/(n*n+g*g);l>1?(p=s,r=o):l>0&&(p+=n*l,r+=g*l)}return n=f-p,g=u-r,n*n+g*g}module.exports=simplify; -},{}],13:[function(require,module,exports){ -"use strict";function createTile(e,n,r,i,t,u){for(var a={features:[],numPoints:0,numSimplified:0,numFeatures:0,source:null,x:r,y:i,z2:n,transformed:!1,min:[2,1],max:[-1,0]},m=0;ma.max[0]&&(a.max[0]=l[0]),l[1]>a.max[1]&&(a.max[1]=l[1])}return a}function addFeature(e,n,r,i){var t,u,a,m,s=n.geometry,l=n.type,o=[],f=r*r;if(1===l)for(t=0;tf)&&(d.push(m),e.numSimplified++),e.numPoints++;3===l&&rewind(d,a.outer),o.push(d)}else e.numPoints+=a.length;if(o.length){var g={geometry:o,type:l,tags:n.tags||null};null!==n.id&&(g.id=n.id),e.features.push(g)}}function rewind(e,n){var r=signedArea(e);r<0===n&&e.reverse()}function signedArea(e){for(var n,r,i=0,t=0,u=e.length,a=u-1;t=a[u+0]&&s>=a[u+1]?(n[f]=!0,h.push(l[f])):n[f]=!1}}},GridIndex.prototype._forEachCell=function(t,r,e,s,i,h,n){for(var o=this._convertToCellCoord(t),l=this._convertToCellCoord(r),a=this._convertToCellCoord(e),d=this._convertToCellCoord(s),f=o;f<=a;f++)for(var u=l;u<=d;u++){var y=this.d*u+f;if(i.call(this,t,r,e,s,y,h,n))return}},GridIndex.prototype._convertToCellCoord=function(t){return Math.max(0,Math.min(this.d-1,Math.floor(t*this.scale)+this.padding))},GridIndex.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var t=this.cells,r=NUM_PARAMS+this.cells.length+1+1,e=0,s=0;s>1,i=-7,N=t?h-1:0,n=t?-1:1,s=a[o+N];for(N+=n,M=s&(1<<-i)-1,s>>=-i,i+=w;i>0;M=256*M+a[o+N],N+=n,i-=8);for(p=M&(1<<-i)-1,M>>=-i,i+=r;i>0;p=256*p+a[o+N],N+=n,i-=8);if(0===M)M=1-e;else{if(M===f)return p?NaN:(s?-1:1)*(1/0);p+=Math.pow(2,r),M-=e}return(s?-1:1)*p*Math.pow(2,M-r)},exports.write=function(a,o,t,r,h,M){var p,w,f,e=8*M-h-1,i=(1<>1,n=23===h?Math.pow(2,-24)-Math.pow(2,-77):0,s=r?0:M-1,u=r?1:-1,l=o<0||0===o&&1/o<0?1:0;for(o=Math.abs(o),isNaN(o)||o===1/0?(w=isNaN(o)?1:0,p=i):(p=Math.floor(Math.log(o)/Math.LN2),o*(f=Math.pow(2,-p))<1&&(p--,f*=2),o+=p+N>=1?n/f:n*Math.pow(2,1-N),o*f>=2&&(p++,f/=2),p+N>=i?(w=0,p=i):p+N>=1?(w=(o*f-1)*Math.pow(2,h),p+=N):(w=o*Math.pow(2,N-1)*Math.pow(2,h),p=0));h>=8;a[t+s]=255&w,s+=u,w/=256,h-=8);for(p=p<0;a[t+s]=255&p,s+=u,p/=256,e-=8);a[t+s-u]|=128*l}; -},{}],18:[function(require,module,exports){ -"use strict";function kdbush(t,i,e,s,n){return new KDBush(t,i,e,s,n)}function KDBush(t,i,e,s,n){i=i||defaultGetX,e=e||defaultGetY,n=n||Array,this.nodeSize=s||64,this.points=t,this.ids=new n(t.length),this.coords=new n(2*t.length);for(var r=0;r=s&&a<=h&&t>=u&&t<=e&&f.push(p[i]);else{var c=Math.floor((g+v)/2);a=r[2*c],t=r[2*c+1],a>=s&&a<=h&&t>=u&&t<=e&&f.push(p[c]);var d=(l+1)%2;(0===l?s<=a:u<=t)&&(n.push(g),n.push(c-1),n.push(d)),(0===l?h>=a:e>=t)&&(n.push(c+1),n.push(v),n.push(d))}}return f}module.exports=range; -},{}],20:[function(require,module,exports){ -"use strict";function sortKD(t,a,o,s,r,e){if(!(r-s<=o)){var f=Math.floor((s+r)/2);select(t,a,f,s,r,e%2),sortKD(t,a,o,s,f-1,e+1),sortKD(t,a,o,f+1,r,e+1)}}function select(t,a,o,s,r,e){for(;r>s;){if(r-s>600){var f=r-s+1,p=o-s+1,w=Math.log(f),m=.5*Math.exp(2*w/3),n=.5*Math.sqrt(w*m*(f-m)/f)*(p-f/2<0?-1:1),c=Math.max(s,Math.floor(o-p*m/f+n)),h=Math.min(r,Math.floor(o+(f-p)*m/f+n));select(t,a,o,c,h,e)}var i=a[2*o+e],l=s,M=r;for(swapItem(t,a,s,o),a[2*r+e]>i&&swapItem(t,a,s,r);li;)M--}a[2*s+e]===i?swapItem(t,a,s,M):(M++,swapItem(t,a,M,r)),M<=o&&(s=M+1),o<=M&&(r=M-1)}}function swapItem(t,a,o,s){swap(t,o,s),swap(a,2*o,2*s),swap(a,2*o+1,2*s+1)}function swap(t,a,o){var s=t[a];t[a]=t[o],t[o]=s}module.exports=sortKD; -},{}],21:[function(require,module,exports){ -"use strict";function within(s,p,r,t,u,h){for(var i=[0,s.length-1,0],o=[],n=u*u;i.length;){var e=i.pop(),a=i.pop(),f=i.pop();if(a-f<=h)for(var v=f;v<=a;v++)sqDist(p[2*v],p[2*v+1],r,t)<=n&&o.push(s[v]);else{var l=Math.floor((f+a)/2),c=p[2*l],q=p[2*l+1];sqDist(c,q,r,t)<=n&&o.push(s[l]);var D=(e+1)%2;(0===e?r-u<=c:t-u<=q)&&(i.push(f),i.push(l-1),i.push(D)),(0===e?r+u>=c:t+u>=q)&&(i.push(l+1),i.push(a),i.push(D))}}return o}function sqDist(s,p,r,t){var u=s-r,h=p-t;return u*u+h*h}module.exports=within; -},{}],22:[function(require,module,exports){ -"use strict";function isSupported(e){return!!(isBrowser()&&isArraySupported()&&isFunctionSupported()&&isObjectSupported()&&isJSONSupported()&&isWorkerSupported()&&isUint8ClampedArraySupported()&&isWebGLSupportedCached(e&&e.failIfMajorPerformanceCaveat))}function isBrowser(){return"undefined"!=typeof window&&"undefined"!=typeof document}function isArraySupported(){return Array.prototype&&Array.prototype.every&&Array.prototype.filter&&Array.prototype.forEach&&Array.prototype.indexOf&&Array.prototype.lastIndexOf&&Array.prototype.map&&Array.prototype.some&&Array.prototype.reduce&&Array.prototype.reduceRight&&Array.isArray}function isFunctionSupported(){return Function.prototype&&Function.prototype.bind}function isObjectSupported(){return Object.keys&&Object.create&&Object.getPrototypeOf&&Object.getOwnPropertyNames&&Object.isSealed&&Object.isFrozen&&Object.isExtensible&&Object.getOwnPropertyDescriptor&&Object.defineProperty&&Object.defineProperties&&Object.seal&&Object.freeze&&Object.preventExtensions}function isJSONSupported(){return"JSON"in window&&"parse"in JSON&&"stringify"in JSON}function isWorkerSupported(){return"Worker"in window}function isUint8ClampedArraySupported(){return"Uint8ClampedArray"in window}function isWebGLSupportedCached(e){return void 0===isWebGLSupportedCache[e]&&(isWebGLSupportedCache[e]=isWebGLSupported(e)),isWebGLSupportedCache[e]}function isWebGLSupported(e){var t=document.createElement("canvas"),r=Object.create(isSupported.webGLContextAttributes);return r.failIfMajorPerformanceCaveat=e,t.probablySupportsContext?t.probablySupportsContext("webgl",r)||t.probablySupportsContext("experimental-webgl",r):t.supportsContext?t.supportsContext("webgl",r)||t.supportsContext("experimental-webgl",r):t.getContext("webgl",r)||t.getContext("experimental-webgl",r)}"undefined"!=typeof module&&module.exports?module.exports=isSupported:window&&(window.mapboxgl=window.mapboxgl||{},window.mapboxgl.supported=isSupported);var isWebGLSupportedCache={};isSupported.webGLContextAttributes={antialias:!1,alpha:!0,stencil:!0,depth:!0}; -},{}],23:[function(require,module,exports){ -(function (process){ -function normalizeArray(r,t){for(var e=0,n=r.length-1;n>=0;n--){var s=r[n];"."===s?r.splice(n,1):".."===s?(r.splice(n,1),e++):e&&(r.splice(n,1),e--)}if(t)for(;e--;e)r.unshift("..");return r}function filter(r,t){if(r.filter)return r.filter(t);for(var e=[],n=0;n=-1&&!t;e--){var n=e>=0?arguments[e]:process.cwd();if("string"!=typeof n)throw new TypeError("Arguments to path.resolve must be strings");n&&(r=n+"/"+r,t="/"===n.charAt(0))}return r=normalizeArray(filter(r.split("/"),function(r){return!!r}),!t).join("/"),(t?"/":"")+r||"."},exports.normalize=function(r){var t=exports.isAbsolute(r),e="/"===substr(r,-1);return r=normalizeArray(filter(r.split("/"),function(r){return!!r}),!t).join("/"),r||t||(r="."),r&&e&&(r+="/"),(t?"/":"")+r},exports.isAbsolute=function(r){return"/"===r.charAt(0)},exports.join=function(){var r=Array.prototype.slice.call(arguments,0);return exports.normalize(filter(r,function(r,t){if("string"!=typeof r)throw new TypeError("Arguments to path.join must be strings");return r}).join("/"))},exports.relative=function(r,t){function e(r){for(var t=0;t=0&&""===r[e];e--);return t>e?[]:r.slice(t,e-t+1)}r=exports.resolve(r).substr(1),t=exports.resolve(t).substr(1);for(var n=e(r.split("/")),s=e(t.split("/")),i=Math.min(n.length,s.length),o=i,u=0;u55295&&e<57344){if(!r){e>56319||o+1===n?i.push(239,191,189):r=e;continue}if(e<56320){i.push(239,191,189),r=e;continue}e=r-55296<<10|e-56320|65536,r=null}else r&&(i.push(239,191,189),r=null);e<128?i.push(e):e<2048?i.push(e>>6|192,63&e|128):e<65536?i.push(e>>12|224,e>>6&63|128,63&e|128):i.push(e>>18|240,e>>12&63|128,e>>6&63|128,63&e|128)}return i}module.exports=Buffer;var ieee754=require("ieee754"),BufferMethods,lastStr,lastStrEncoded;BufferMethods={readUInt32LE:function(t){return(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},writeUInt32LE:function(t,e){this[e]=t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24},readInt32LE:function(t){return(this[t]|this[t+1]<<8|this[t+2]<<16)+(this[t+3]<<24)},readFloatLE:function(t){return ieee754.read(this,t,!0,23,4)},readDoubleLE:function(t){return ieee754.read(this,t,!0,52,8)},writeFloatLE:function(t,e){return ieee754.write(this,t,e,!0,23,4)},writeDoubleLE:function(t,e){return ieee754.write(this,t,e,!0,52,8)},toString:function(t,e,r){var n="",i="";e=e||0,r=Math.min(this.length,r||this.length);for(var o=e;o=1;){if(i.pos>=e)throw new Error("Given varint doesn't fit into 10 bytes");var r=255&t;i.buf[i.pos++]=r|(t>=128?128:0),t/=128}}function reallocForRawMessage(t,i,e){var r=i<=16383?1:i<=2097151?2:i<=268435455?3:Math.ceil(Math.log(i)/(7*Math.LN2));e.realloc(r);for(var s=e.pos-1;s>=t;s--)e.buf[s+r]=e.buf[s]}function writePackedVarint(t,i){for(var e=0;e>3,n=this.pos;t(s,i,this),this.pos===n&&this.skip(r)}return i},readMessage:function(t,i){return this.readFields(t,i,this.readVarint()+this.pos)},readFixed32:function(){var t=this.buf.readUInt32LE(this.pos);return this.pos+=4,t},readSFixed32:function(){var t=this.buf.readInt32LE(this.pos);return this.pos+=4,t},readFixed64:function(){var t=this.buf.readUInt32LE(this.pos)+this.buf.readUInt32LE(this.pos+4)*SHIFT_LEFT_32;return this.pos+=8,t},readSFixed64:function(){var t=this.buf.readUInt32LE(this.pos)+this.buf.readInt32LE(this.pos+4)*SHIFT_LEFT_32;return this.pos+=8,t},readFloat:function(){var t=this.buf.readFloatLE(this.pos);return this.pos+=4,t},readDouble:function(){var t=this.buf.readDoubleLE(this.pos);return this.pos+=8,t},readVarint:function(){var t,i,e=this.buf;return i=e[this.pos++],t=127&i,i<128?t:(i=e[this.pos++],t|=(127&i)<<7,i<128?t:(i=e[this.pos++],t|=(127&i)<<14,i<128?t:(i=e[this.pos++],t|=(127&i)<<21,i<128?t:readVarintRemainder(t,this))))},readVarint64:function(){var t=this.pos,i=this.readVarint();if(i127;);else if(i===Pbf.Bytes)this.pos=this.readVarint()+this.pos;else if(i===Pbf.Fixed32)this.pos+=4;else{if(i!==Pbf.Fixed64)throw new Error("Unimplemented type: "+i);this.pos+=8}},writeTag:function(t,i){this.writeVarint(t<<3|i)},realloc:function(t){for(var i=this.length||16;i268435455?void writeBigVarint(t,this):(this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),void(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);var i=Buffer.byteLength(t);this.writeVarint(i),this.realloc(i),this.buf.write(t,this.pos),this.pos+=i},writeFloat:function(t){this.realloc(4),this.buf.writeFloatLE(t,this.pos),this.pos+=4},writeDouble:function(t){this.realloc(8),this.buf.writeDoubleLE(t,this.pos),this.pos+=8},writeBytes:function(t){var i=t.length;this.writeVarint(i),this.realloc(i);for(var e=0;e=128&&reallocForRawMessage(e,r,this),this.pos=e-1,this.writeVarint(r),this.pos+=r},writeMessage:function(t,i,e){this.writeTag(t,Pbf.Bytes),this.writeRawMessage(i,e)},writePackedVarint:function(t,i){this.writeMessage(t,writePackedVarint,i)},writePackedSVarint:function(t,i){this.writeMessage(t,writePackedSVarint,i)},writePackedBoolean:function(t,i){this.writeMessage(t,writePackedBoolean,i)},writePackedFloat:function(t,i){this.writeMessage(t,writePackedFloat,i)},writePackedDouble:function(t,i){this.writeMessage(t,writePackedDouble,i)},writePackedFixed32:function(t,i){this.writeMessage(t,writePackedFixed32,i)},writePackedSFixed32:function(t,i){this.writeMessage(t,writePackedSFixed32,i)},writePackedFixed64:function(t,i){this.writeMessage(t,writePackedFixed64,i)},writePackedSFixed64:function(t,i){this.writeMessage(t,writePackedSFixed64,i)},writeBytesField:function(t,i){this.writeTag(t,Pbf.Bytes),this.writeBytes(i)},writeFixed32Field:function(t,i){this.writeTag(t,Pbf.Fixed32),this.writeFixed32(i)},writeSFixed32Field:function(t,i){this.writeTag(t,Pbf.Fixed32),this.writeSFixed32(i)},writeFixed64Field:function(t,i){this.writeTag(t,Pbf.Fixed64),this.writeFixed64(i)},writeSFixed64Field:function(t,i){this.writeTag(t,Pbf.Fixed64),this.writeSFixed64(i)},writeVarintField:function(t,i){this.writeTag(t,Pbf.Varint),this.writeVarint(i)},writeSVarintField:function(t,i){this.writeTag(t,Pbf.Varint),this.writeSVarint(i)},writeStringField:function(t,i){this.writeTag(t,Pbf.Bytes),this.writeString(i)},writeFloatField:function(t,i){this.writeTag(t,Pbf.Fixed32),this.writeFloat(i)},writeDoubleField:function(t,i){this.writeTag(t,Pbf.Fixed64),this.writeDouble(i)},writeBooleanField:function(t,i){this.writeVarintField(t,Boolean(i))}}; -}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) - -},{"./buffer":24}],26:[function(require,module,exports){ -"use strict";function Point(t,n){this.x=t,this.y=n}module.exports=Point,Point.prototype={clone:function(){return new Point(this.x,this.y)},add:function(t){return this.clone()._add(t)},sub:function(t){return this.clone()._sub(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)},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 n=t.x-this.x,i=t.y-this.y;return n*n+i*i},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,n){return Math.atan2(this.x*n-this.y*t,this.x*t+this.y*n)},_matMult:function(t){var n=t[0]*this.x+t[1]*this.y,i=t[2]*this.x+t[3]*this.y;return this.x=n,this.y=i,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},_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 n=Math.cos(t),i=Math.sin(t),s=n*this.x-i*this.y,r=i*this.x+n*this.y;return this.x=s,this.y=r,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},Point.convert=function(t){return t instanceof Point?t:Array.isArray(t)?new Point(t[0],t[1]):t}; -},{}],27:[function(require,module,exports){ -function defaultSetTimout(){throw new Error("setTimeout has not been defined")}function defaultClearTimeout(){throw new Error("clearTimeout has not been defined")}function runTimeout(e){if(cachedSetTimeout===setTimeout)return setTimeout(e,0);if((cachedSetTimeout===defaultSetTimout||!cachedSetTimeout)&&setTimeout)return cachedSetTimeout=setTimeout,setTimeout(e,0);try{return cachedSetTimeout(e,0)}catch(t){try{return cachedSetTimeout.call(null,e,0)}catch(t){return cachedSetTimeout.call(this,e,0)}}}function runClearTimeout(e){if(cachedClearTimeout===clearTimeout)return clearTimeout(e);if((cachedClearTimeout===defaultClearTimeout||!cachedClearTimeout)&&clearTimeout)return cachedClearTimeout=clearTimeout,clearTimeout(e);try{return cachedClearTimeout(e)}catch(t){try{return cachedClearTimeout.call(null,e)}catch(t){return cachedClearTimeout.call(this,e)}}}function cleanUpNextTick(){draining&¤tQueue&&(draining=!1,currentQueue.length?queue=currentQueue.concat(queue):queueIndex=-1,queue.length&&drainQueue())}function drainQueue(){if(!draining){var e=runTimeout(cleanUpNextTick);draining=!0;for(var t=queue.length;t;){for(currentQueue=queue,queue=[];++queueIndex1)for(var u=1;ur;){if(o-r>600){var f=o-r+1,e=t-r+1,l=Math.log(f),s=.5*Math.exp(2*l/3),i=.5*Math.sqrt(l*s*(f-s)/f)*(e-f/2<0?-1:1),n=Math.max(r,Math.floor(t-e*s/f+i)),h=Math.min(o,Math.floor(t+(f-e)*s/f+i));partialSort(a,t,n,h,p)}var u=a[t],M=r,w=o;for(swap(a,r,t),p(a[o],u)>0&&swap(a,r,o);M0;)w--}0===p(a[r],u)?swap(a,r,w):(w++,swap(a,w,o)),w<=t&&(r=w+1),t<=w&&(o=w-1)}}function swap(a,t,r){var o=a[t];a[t]=a[r],a[r]=o}function defaultCompare(a,t){return at?1:0}module.exports=partialSort; -},{}],29:[function(require,module,exports){ -"use strict";function supercluster(t){return new SuperCluster(t)}function SuperCluster(t){this.options=extend(Object.create(this.options),t),this.trees=new Array(this.options.maxZoom+1)}function createCluster(t,e,o,n){return{x:t,y:e,zoom:1/0,id:n,numPoints:o}}function createPointCluster(t,e){var o=t.geometry.coordinates;return createCluster(lngX(o[0]),latY(o[1]),1,e)}function getClusterJSON(t){return{type:"Feature",properties:getClusterProperties(t),geometry:{type:"Point",coordinates:[xLng(t.x),yLat(t.y)]}}}function getClusterProperties(t){var e=t.numPoints,o=e>=1e4?Math.round(e/1e3)+"k":e>=1e3?Math.round(e/100)/10+"k":e;return{cluster:!0,point_count:e,point_count_abbreviated:o}}function lngX(t){return t/360+.5}function latY(t){var e=Math.sin(t*Math.PI/180),o=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return o<0?0:o>1?1:o}function xLng(t){return 360*(t-.5)}function yLat(t){var e=(180-360*t)*Math.PI/180;return 360*Math.atan(Math.exp(e))/Math.PI-90}function extend(t,e){for(var o in e)t[o]=e[o];return t}function getX(t){return t.x}function getY(t){return t.y}var kdbush=require("kdbush");module.exports=supercluster,SuperCluster.prototype={options:{minZoom:0,maxZoom:16,radius:40,extent:512,nodeSize:64,log:!1},load:function(t){var e=this.options.log;e&&console.time("total time");var o="prepare "+t.length+" points";e&&console.time(o),this.points=t;var n=t.map(createPointCluster);e&&console.timeEnd(o);for(var r=this.options.maxZoom;r>=this.options.minZoom;r--){var i=+Date.now();this.trees[r+1]=kdbush(n,getX,getY,this.options.nodeSize,Float32Array),n=this._cluster(n,r),e&&console.log("z%d: %d clusters in %dms",r,n.length,+Date.now()-i)}return this.trees[this.options.minZoom]=kdbush(n,getX,getY,this.options.nodeSize,Float32Array),e&&console.timeEnd("total time"),this},getClusters:function(t,e){for(var o=this.trees[this._limitZoom(e)],n=o.range(lngX(t[0]),latY(t[3]),lngX(t[2]),latY(t[1])),r=[],i=0;i=0;a--)this._down(a)}function defaultCompare(t,i){return ti?1:0}function swap(t,i,a){var n=t[i];t[i]=t[a],t[a]=n}module.exports=TinyQueue,TinyQueue.prototype={push:function(t){this.data.push(t),this.length++,this._up(this.length-1)},pop:function(){var t=this.data[0];return this.data[0]=this.data[this.length-1],this.length--,this.data.pop(),this._down(0),t},peek:function(){return this.data[0]},_up:function(t){for(var i=this.data,a=this.compare;t>0;){var n=Math.floor((t-1)/2);if(!(a(i[t],i[n])<0))break;swap(i,n,t),t=n}},_down:function(t){for(var i=this.data,a=this.compare,n=this.length;;){var e=2*t+1,h=e+1,s=t;if(e=3&&(t.depth=arguments[2]),arguments.length>=4&&(t.colors=arguments[3]),isBoolean(r)?t.showHidden=r:r&&exports._extend(t,r),isUndefined(t.showHidden)&&(t.showHidden=!1),isUndefined(t.depth)&&(t.depth=2),isUndefined(t.colors)&&(t.colors=!1),isUndefined(t.customInspect)&&(t.customInspect=!0),t.colors&&(t.stylize=stylizeWithColor),formatValue(t,e,t.depth)}function stylizeWithColor(e,r){var t=inspect.styles[r];return t?"["+inspect.colors[t][0]+"m"+e+"["+inspect.colors[t][1]+"m":e}function stylizeNoColor(e,r){return e}function arrayToHash(e){var r={};return e.forEach(function(e,t){r[e]=!0}),r}function formatValue(e,r,t){if(e.customInspect&&r&&isFunction(r.inspect)&&r.inspect!==exports.inspect&&(!r.constructor||r.constructor.prototype!==r)){var n=r.inspect(t,e);return isString(n)||(n=formatValue(e,n,t)),n}var i=formatPrimitive(e,r);if(i)return i;var o=Object.keys(r),s=arrayToHash(o);if(e.showHidden&&(o=Object.getOwnPropertyNames(r)),isError(r)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return formatError(r);if(0===o.length){if(isFunction(r)){var u=r.name?": "+r.name:"";return e.stylize("[Function"+u+"]","special")}if(isRegExp(r))return e.stylize(RegExp.prototype.toString.call(r),"regexp");if(isDate(r))return e.stylize(Date.prototype.toString.call(r),"date");if(isError(r))return formatError(r)}var c="",a=!1,l=["{","}"];if(isArray(r)&&(a=!0,l=["[","]"]),isFunction(r)){var p=r.name?": "+r.name:"";c=" [Function"+p+"]"}if(isRegExp(r)&&(c=" "+RegExp.prototype.toString.call(r)),isDate(r)&&(c=" "+Date.prototype.toUTCString.call(r)),isError(r)&&(c=" "+formatError(r)),0===o.length&&(!a||0==r.length))return l[0]+c+l[1];if(t<0)return isRegExp(r)?e.stylize(RegExp.prototype.toString.call(r),"regexp"):e.stylize("[Object]","special");e.seen.push(r);var f;return f=a?formatArray(e,r,t,s,o):o.map(function(n){return formatProperty(e,r,t,s,n,a)}),e.seen.pop(),reduceToSingleString(f,c,l)}function formatPrimitive(e,r){if(isUndefined(r))return e.stylize("undefined","undefined");if(isString(r)){var t="'"+JSON.stringify(r).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(t,"string")}return isNumber(r)?e.stylize(""+r,"number"):isBoolean(r)?e.stylize(""+r,"boolean"):isNull(r)?e.stylize("null","null"):void 0}function formatError(e){return"["+Error.prototype.toString.call(e)+"]"}function formatArray(e,r,t,n,i){for(var o=[],s=0,u=r.length;s-1&&(u=o?u.split("\n").map(function(e){return" "+e}).join("\n").substr(2):"\n"+u.split("\n").map(function(e){return" "+e}).join("\n"))):u=e.stylize("[Circular]","special")),isUndefined(s)){if(o&&i.match(/^\d+$/))return u;s=JSON.stringify(""+i),s.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(s=s.substr(1,s.length-2),s=e.stylize(s,"name")):(s=s.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),s=e.stylize(s,"string"))}return s+": "+u}function reduceToSingleString(e,r,t){var n=0,i=e.reduce(function(e,r){return n++,r.indexOf("\n")>=0&&n++,e+r.replace(/\u001b\[\d\d?m/g,"").length+1},0);return i>60?t[0]+(""===r?"":r+"\n ")+" "+e.join(",\n ")+" "+t[1]:t[0]+r+" "+e.join(", ")+" "+t[1]}function isArray(e){return Array.isArray(e)}function isBoolean(e){return"boolean"==typeof e}function isNull(e){return null===e}function isNullOrUndefined(e){return null==e}function isNumber(e){return"number"==typeof e}function isString(e){return"string"==typeof e}function isSymbol(e){return"symbol"==typeof e}function isUndefined(e){return void 0===e}function isRegExp(e){return isObject(e)&&"[object RegExp]"===objectToString(e)}function isObject(e){return"object"==typeof e&&null!==e}function isDate(e){return isObject(e)&&"[object Date]"===objectToString(e)}function isError(e){return isObject(e)&&("[object Error]"===objectToString(e)||e instanceof Error)}function isFunction(e){return"function"==typeof e}function isPrimitive(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||"undefined"==typeof e}function objectToString(e){return Object.prototype.toString.call(e)}function pad(e){return e<10?"0"+e.toString(10):e.toString(10)}function timestamp(){var e=new Date,r=[pad(e.getHours()),pad(e.getMinutes()),pad(e.getSeconds())].join(":");return[e.getDate(),months[e.getMonth()],r].join(" ")}function hasOwnProperty(e,r){return Object.prototype.hasOwnProperty.call(e,r)}var formatRegExp=/%[sdj%]/g;exports.format=function(e){if(!isString(e)){for(var r=[],t=0;t=i)return e;switch(e){case"%s":return String(n[t++]);case"%d":return Number(n[t++]);case"%j":try{return JSON.stringify(n[t++])}catch(e){return"[Circular]"}default:return e}}),s=n[t];t>3}if(a--,1===i||2===i)o+=e.readSVarint(),n+=e.readSVarint(),1===i&&(t&&s.push(t),t=[]),t.push(new Point(o,n));else{if(7!==i)throw new Error("unknown command "+i);t&&t.push(t[0].clone())}}return t&&s.push(t),s},VectorTileFeature.prototype.bbox=function(){var e=this._pbf;e.pos=this._geometry;for(var t=e.readVarint()+e.pos,r=1,i=0,a=0,o=0,n=1/0,s=-(1/0),p=1/0,h=-(1/0);e.pos>3}if(i--,1===r||2===r)a+=e.readSVarint(),o+=e.readSVarint(),as&&(s=a),oh&&(h=o);else if(7!==r)throw new Error("unknown command "+r)}return[n,p,s,h]},VectorTileFeature.prototype.toGeoJSON=function(e,t,r){function i(e){for(var t=0;t>3;t=1===a?e.readString():2===a?e.readFloat():3===a?e.readDouble():4===a?e.readVarint64():5===a?e.readVarint():6===a?e.readSVarint():7===a?e.readBoolean():null}return t}var VectorTileFeature=require("./vectortilefeature.js");module.exports=VectorTileLayer,VectorTileLayer.prototype.feature=function(e){if(e<0||e>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[e];var t=this._pbf.readVarint()+this._pbf.pos;return new VectorTileFeature(this._pbf,t,this.extent,this._keys,this._values)}; -},{"./vectortilefeature.js":36}],38:[function(require,module,exports){ -function fromVectorTileJs(e){var r=[];for(var o in e.layers)r.push(prepareLayer(e.layers[o]));var t=new Pbf;return vtpb.tile.write({layers:r},t),t.finish()}function fromGeojsonVt(e){var r={};for(var o in e)r[o]=new GeoJSONWrapper(e[o].features),r[o].name=o;return fromVectorTileJs({layers:r})}function prepareLayer(e){for(var r={name:e.name||"",version:e.version||1,extent:e.extent||4096,keys:[],values:[],features:[]},o={},t={},n=0;n>31}function encodeGeometry(e){for(var r=[],o=0,t=0,n=e.length,a=0;aArrayGroup.MAX_VERTEX_ARRAY_LENGTH)&&(e=new Segment(this.layoutVertexArray.length,this.elementArray.length),this.segments.push(e)),e},ArrayGroup.prototype.prepareSegment2=function(r){var e=this.segments2[this.segments2.length-1];return(!e||e.vertexLength+r>ArrayGroup.MAX_VERTEX_ARRAY_LENGTH)&&(e=new Segment(this.layoutVertexArray.length,this.elementArray2.length),this.segments2.push(e)),e},ArrayGroup.prototype.populatePaintArrays=function(r){var e=this;for(var t in e.layerData){var a=e.layerData[t];0!==a.paintVertexArray.bytesPerElement&&a.programConfiguration.populatePaintArray(a.layer,a.paintVertexArray,a.paintPropertyStatistics,e.layoutVertexArray.length,e.globalProperties,r)}},ArrayGroup.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},ArrayGroup.prototype.serialize=function(r){return{layoutVertexArray:this.layoutVertexArray.serialize(r),elementArray:this.elementArray&&this.elementArray.serialize(r),elementArray2:this.elementArray2&&this.elementArray2.serialize(r),paintVertexArrays:serializePaintVertexArrays(this.layerData,r),segments:this.segments,segments2:this.segments2}},ArrayGroup.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,module.exports=ArrayGroup; -},{"./program_configuration":58}],45:[function(require,module,exports){ -"use strict";var ArrayGroup=require("./array_group"),BufferGroup=require("./buffer_group"),util=require("../util/util"),Bucket=function(r,t){this.zoom=r.zoom,this.overscaling=r.overscaling,this.layers=r.layers,this.index=r.index,r.arrays?this.buffers=new BufferGroup(t,r.layers,r.zoom,r.arrays):this.arrays=new ArrayGroup(t,r.layers,r.zoom)};Bucket.prototype.populate=function(r,t){for(var e=this,i=0,a=r;i=EXTENT||o<0||o>=EXTENT)){var n=r.prepareSegment(4),u=n.vertexLength;addCircleVertex(r.layoutVertexArray,y,o,-1,-1),addCircleVertex(r.layoutVertexArray,y,o,1,-1),addCircleVertex(r.layoutVertexArray,y,o,1,1),addCircleVertex(r.layoutVertexArray,y,o,-1,1),r.elementArray.emplaceBack(u,u+1,u+2),r.elementArray.emplaceBack(u,u+3,u+2),n.vertexLength+=4,n.primitiveLength+=2}}r.populatePaintArrays(e.properties)},r}(Bucket);CircleBucket.programInterface=circleInterface,module.exports=CircleBucket; -},{"../bucket":45,"../element_array_type":53,"../extent":54,"../load_geometry":56,"../vertex_array_type":60}],47:[function(require,module,exports){ -"use strict";var Bucket=require("../bucket"),createVertexArrayType=require("../vertex_array_type"),createElementArrayType=require("../element_array_type"),loadGeometry=require("../load_geometry"),earcut=require("earcut"),classifyRings=require("../../util/classify_rings"),EARCUT_MAX_RINGS=500,fillInterface={layoutVertexArrayType:createVertexArrayType([{name:"a_pos",components:2,type:"Int16"}]),elementArrayType:createElementArrayType(3),elementArrayType2:createElementArrayType(2),paintAttributes:[{property:"fill-color",type:"Uint8"},{property:"fill-outline-color",type:"Uint8"},{property:"fill-opacity",type:"Uint8",multiplier:255}]},FillBucket=function(e){function r(r){e.call(this,r,fillInterface)}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.addFeature=function(e){for(var r=this.arrays,t=0,a=classifyRings(loadGeometry(e),EARCUT_MAX_RINGS);tEXTENT)||e.y===r.y&&(e.y<0||e.y>EXTENT)}var Bucket=require("../bucket"),createVertexArrayType=require("../vertex_array_type"),createElementArrayType=require("../element_array_type"),loadGeometry=require("../load_geometry"),EXTENT=require("../extent"),earcut=require("earcut"),classifyRings=require("../../util/classify_rings"),EARCUT_MAX_RINGS=500,fillExtrusionInterface={layoutVertexArrayType:createVertexArrayType([{name:"a_pos",components:2,type:"Int16"},{name:"a_normal",components:3,type:"Int16"},{name:"a_edgedistance",components:1,type:"Int16"}]),elementArrayType:createElementArrayType(3),paintAttributes:[{property:"fill-extrusion-base",type:"Uint16"},{property:"fill-extrusion-height",type:"Uint16"},{property:"fill-extrusion-color",type:"Uint8"}]},FACTOR=Math.pow(2,13),FillExtrusionBucket=function(e){function r(r){e.call(this,r,fillExtrusionInterface)}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.addFeature=function(e){for(var r=this.arrays,t=0,a=classifyRings(loadGeometry(e),EARCUT_MAX_RINGS);t=1){var A=d[h-1];if(!isBoundaryEdge(g,A)){var _=g.sub(A)._perp()._unit();addVertex(r.layoutVertexArray,g.x,g.y,_.x,_.y,0,0,m),addVertex(r.layoutVertexArray,g.x,g.y,_.x,_.y,0,1,m),m+=A.dist(g),addVertex(r.layoutVertexArray,A.x,A.y,_.x,_.y,0,0,m),addVertex(r.layoutVertexArray,A.x,A.y,_.x,_.y,0,1,m);var v=p.vertexLength;r.elementArray.emplaceBack(v,v+1,v+2),r.elementArray.emplaceBack(v+1,v+2,v+3),p.vertexLength+=4,p.primitiveLength+=2}}u.push(g.x),u.push(g.y)}}}for(var E=earcut(u,c),T=0;T>6)}var Bucket=require("../bucket"),createVertexArrayType=require("../vertex_array_type"),createElementArrayType=require("../element_array_type"),loadGeometry=require("../load_geometry"),EXTENT=require("../extent"),VectorTileFeature=require("vector-tile").VectorTileFeature,EXTRUDE_SCALE=63,COS_HALF_SHARP_CORNER=Math.cos(37.5*(Math.PI/180)),SHARP_CORNER_OFFSET=15,LINE_DISTANCE_BUFFER_BITS=15,LINE_DISTANCE_SCALE=.5,MAX_LINE_DISTANCE=Math.pow(2,LINE_DISTANCE_BUFFER_BITS-1)/LINE_DISTANCE_SCALE,lineInterface={layoutVertexArrayType:createVertexArrayType([{name:"a_pos",components:2,type:"Int16"},{name:"a_data",components:4,type:"Uint8"}]),paintAttributes:[{property:"line-color",type:"Uint8"},{property:"line-blur",multiplier:10,type:"Uint8"},{property:"line-opacity",multiplier:10,type:"Uint8"},{property:"line-gap-width",multiplier:10,type:"Uint8",name:"a_gapwidth"},{property:"line-offset",multiplier:1,type:"Int8"}],elementArrayType:createElementArrayType()},LineBucket=function(e){function t(t){e.call(this,t,lineInterface)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.addFeature=function(e){for(var t=this,r=this.layers[0].layout,i=r["line-join"],a=r["line-cap"],n=r["line-miter-limit"],d=r["line-round-limit"],s=0,u=loadGeometry(e,LINE_DISTANCE_BUFFER_BITS);s=2&&e[l-1].equals(e[l-2]);)l--;if(!(l<(u?3:2))){"bevel"===r&&(a=1.05);var o=SHARP_CORNER_OFFSET*(EXTENT/(512*this.overscaling)),p=e[0],c=this.arrays,_=c.prepareSegment(10*l);this.distance=0;var y,h,m,E,x,C,v,A=i,f=u?"butt":i,L=!0;this.e1=this.e2=this.e3=-1,u&&(y=e[l-2],x=p.sub(y)._unit()._perp());for(var V=0;V0){var b=y.dist(h);if(b>2*o){var R=y.sub(y.sub(h)._mult(o/b)._round());d.distance+=R.dist(h),d.addCurrentVertex(R,d.distance,E.mult(1),0,0,!1,_),h=R}}var g=h&&m,F=g?r:m?A:f;if(g&&"round"===F&&(Ia&&(F="bevel"),"bevel"===F&&(I>2&&(F="flipbevel"),I100)S=x.clone().mult(-1);else{var B=E.x*x.y-E.y*x.x>0?-1:1,k=I*E.add(x).mag()/E.sub(x).mag();S._perp()._mult(k*B)}d.addCurrentVertex(y,d.distance,S,0,0,!1,_),d.addCurrentVertex(y,d.distance,S.mult(-1),0,0,!1,_)}else if("bevel"===F||"fakeround"===F){var D=E.x*x.y-E.y*x.x>0,P=-Math.sqrt(I*I-1);if(D?(v=0,C=P):(C=0,v=P),L||d.addCurrentVertex(y,d.distance,E,C,v,!1,_),"fakeround"===F){for(var U=Math.floor(8*(.5-(T-.5))),q=void 0,M=0;M=0;O--)q=E.mult((O+1)/(U+1))._add(x)._unit(),d.addPieSliceVertex(y,d.distance,q,D,_)}m&&d.addCurrentVertex(y,d.distance,x,-C,-v,!1,_)}else"butt"===F?(L||d.addCurrentVertex(y,d.distance,E,0,0,!1,_),m&&d.addCurrentVertex(y,d.distance,x,0,0,!1,_)):"square"===F?(L||(d.addCurrentVertex(y,d.distance,E,1,1,!1,_),d.e1=d.e2=-1),m&&d.addCurrentVertex(y,d.distance,x,-1,-1,!1,_)):"round"===F&&(L||(d.addCurrentVertex(y,d.distance,E,0,0,!1,_),d.addCurrentVertex(y,d.distance,E,1,1,!0,_),d.e1=d.e2=-1),m&&(d.addCurrentVertex(y,d.distance,x,-1,-1,!0,_),d.addCurrentVertex(y,d.distance,x,0,0,!1,_)));if(N&&V2*o){var H=y.add(m.sub(y)._mult(o/X)._round());d.distance+=H.dist(y),d.addCurrentVertex(H,d.distance,x.mult(1),0,0,!1,_),y=H}}L=!1}c.populatePaintArrays(s)}},t.prototype.addCurrentVertex=function(e,t,r,i,a,n,d){var s,u=n?1:0,l=this.arrays,o=l.layoutVertexArray,p=l.elementArray;s=r.clone(),i&&s._sub(r.perp()._mult(i)),addLineVertex(o,e,s,u,0,i,t),this.e3=d.vertexLength++,this.e1>=0&&this.e2>=0&&(p.emplaceBack(this.e1,this.e2,this.e3),d.primitiveLength++),this.e1=this.e2,this.e2=this.e3,s=r.mult(-1),a&&s._sub(r.perp()._mult(a)),addLineVertex(o,e,s,u,1,-a,t),this.e3=d.vertexLength++,this.e1>=0&&this.e2>=0&&(p.emplaceBack(this.e1,this.e2,this.e3),d.primitiveLength++),this.e1=this.e2,this.e2=this.e3,t>MAX_LINE_DISTANCE/2&&(this.distance=0,this.addCurrentVertex(e,this.distance,r,i,a,n,d))},t.prototype.addPieSliceVertex=function(e,t,r,i,a){var n=i?1:0;r=r.mult(i?-1:1);var d=this.arrays,s=d.layoutVertexArray,u=d.elementArray;addLineVertex(s,e,r,0,n,0,t),this.e3=a.vertexLength++,this.e1>=0&&this.e2>=0&&(u.emplaceBack(this.e1,this.e2,this.e3),a.primitiveLength++),i?this.e2=this.e3:this.e1=this.e3},t}(Bucket);LineBucket.programInterface=lineInterface,module.exports=LineBucket; -},{"../bucket":45,"../element_array_type":53,"../extent":54,"../load_geometry":56,"../vertex_array_type":60,"vector-tile":34}],50:[function(require,module,exports){ -"use strict";function addVertex(e,t,o,r,a,i,n,l,s,c,y){e.emplaceBack(t,o,Math.round(64*r),Math.round(64*a),i/4,n/4,10*(c||0),y,10*(l||0),10*Math.min(s||25,25))}function addCollisionBoxVertex(e,t,o,r,a){return e.emplaceBack(t.x,t.y,Math.round(o.x),Math.round(o.y),10*r,10*a)}var Point=require("point-geometry"),ArrayGroup=require("../array_group"),BufferGroup=require("../buffer_group"),createVertexArrayType=require("../vertex_array_type"),createElementArrayType=require("../element_array_type"),EXTENT=require("../extent"),Anchor=require("../../symbol/anchor"),getAnchors=require("../../symbol/get_anchors"),resolveTokens=require("../../util/token"),Quads=require("../../symbol/quads"),Shaping=require("../../symbol/shaping"),resolveText=require("../../symbol/resolve_text"),mergeLines=require("../../symbol/mergelines"),clipLine=require("../../symbol/clip_line"),util=require("../../util/util"),scriptDetection=require("../../util/script_detection"),loadGeometry=require("../load_geometry"),CollisionFeature=require("../../symbol/collision_feature"),findPoleOfInaccessibility=require("../../util/find_pole_of_inaccessibility"),classifyRings=require("../../util/classify_rings"),VectorTileFeature=require("vector-tile").VectorTileFeature,rtlTextPlugin=require("../../source/rtl_text_plugin"),shapeText=Shaping.shapeText,shapeIcon=Shaping.shapeIcon,WritingMode=Shaping.WritingMode,getGlyphQuads=Quads.getGlyphQuads,getIconQuads=Quads.getIconQuads,elementArrayType=createElementArrayType(),layoutVertexArrayType=createVertexArrayType([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_texture_pos",components:2,type:"Uint16"},{name:"a_data",components:4,type:"Uint8"}]),symbolInterfaces={glyph:{layoutVertexArrayType:layoutVertexArrayType,elementArrayType:elementArrayType,paintAttributes:[{name:"a_fill_color",property:"text-color",type:"Uint8"},{name:"a_halo_color",property:"text-halo-color",type:"Uint8"},{name:"a_halo_width",property:"text-halo-width",type:"Uint16",multiplier:10},{name:"a_halo_blur",property:"text-halo-blur",type:"Uint16",multiplier:10},{name:"a_opacity",property:"text-opacity",type:"Uint8",multiplier:255}]},icon:{layoutVertexArrayType:layoutVertexArrayType,elementArrayType:elementArrayType,paintAttributes:[{name:"a_fill_color",property:"icon-color",type:"Uint8"},{name:"a_halo_color",property:"icon-halo-color",type:"Uint8"},{name:"a_halo_width",property:"icon-halo-width",type:"Uint16",multiplier:10},{name:"a_halo_blur",property:"icon-halo-blur",type:"Uint16",multiplier:10},{name:"a_opacity",property:"icon-opacity",type:"Uint8",multiplier:255}]},collisionBox:{layoutVertexArrayType:createVertexArrayType([{name:"a_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"},{name:"a_data",components:2,type:"Uint8"}]),elementArrayType:createElementArrayType(2)}},SymbolBucket=function(e){var t=this;if(this.collisionBoxArray=e.collisionBoxArray,this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.index=e.index,this.sdfIcons=e.sdfIcons,this.iconsNeedLinear=e.iconsNeedLinear,this.adjustedTextSize=e.adjustedTextSize,this.adjustedIconSize=e.adjustedIconSize,this.fontstack=e.fontstack,e.arrays){this.buffers={};for(var o in e.arrays)e.arrays[o]&&(t.buffers[o]=new BufferGroup(symbolInterfaces[o],e.layers,e.zoom,e.arrays[o]))}};SymbolBucket.prototype.populate=function(e,t){var o=this,r=this.layers[0],a=r.layout,i=a["text-font"],n=a["icon-image"],l=i&&(!r.isLayoutValueFeatureConstant("text-field")||a["text-field"]),s=n;if(this.features=[],l||s){for(var c=t.iconDependencies,y=t.glyphDependencies,p=y[i]=y[i]||{},x=0;xEXTENT||i.y<0||i.y>EXTENT);if(!x||n){var l=n||f;r.addSymbolInstance(i,a,t,o,r.layers[0],l,r.collisionBoxArray,e.index,e.sourceLayerIndex,r.index,s,h,m,y,u,g,{zoom:r.zoom},e.properties)}};if("line"===b)for(var S=0,T=clipLine(e.geometry,0,0,EXTENT,EXTENT);S=0;i--)if(o.dist(a[i])7*Math.PI/4)continue}else if(r&&a&&d<=3*Math.PI/4||d>5*Math.PI/4)continue}else if(r&&a&&(d<=Math.PI/2||d>3*Math.PI/2))continue;var m=u.tl,g=u.tr,f=u.bl,b=u.br,v=u.tex,I=u.anchorPoint,S=Math.max(y+Math.log(u.minScale)/Math.LN2,p),T=Math.min(y+Math.log(u.maxScale)/Math.LN2,25);if(!(T<=S)){S===p&&(S=0);var M=Math.round(u.glyphAngle/(2*Math.PI)*256),B=e.prepareSegment(4),A=B.vertexLength;addVertex(c,I.x,I.y,m.x,m.y,v.x,v.y,S,T,p,M),addVertex(c,I.x,I.y,g.x,g.y,v.x+v.w,v.y,S,T,p,M),addVertex(c,I.x,I.y,f.x,f.y,v.x,v.y+v.h,S,T,p,M),addVertex(c,I.x,I.y,b.x,b.y,v.x+v.w,v.y+v.h,S,T,p,M),s.emplaceBack(A,A+1,A+2),s.emplaceBack(A+1,A+2,A+3),B.vertexLength+=4,B.primitiveLength+=2}}e.populatePaintArrays(n)},SymbolBucket.prototype.addToDebugBuffers=function(e){for(var t=this,o=this.arrays.collisionBox,r=o.layoutVertexArray,a=o.elementArray,i=-e.angle,n=e.yStretch,l=0,s=t.symbolInstances;lSymbolBucket.MAX_INSTANCES&&util.warnOnce("Too many symbols being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),z>SymbolBucket.MAX_INSTANCES&&util.warnOnce("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907");var _=(o[WritingMode.vertical]?WritingMode.vertical:0)|(o[WritingMode.horizontal]?WritingMode.horizontal:0);this.symbolInstances.push({textBoxStartIndex:M,textBoxEndIndex:B,iconBoxStartIndex:A,iconBoxEndIndex:z,glyphQuads:I,iconQuads:v,anchor:e,featureIndex:l,featureProperties:g,writingModes:_})},SymbolBucket.programInterfaces=symbolInterfaces,SymbolBucket.MAX_INSTANCES=65535,module.exports=SymbolBucket; -},{"../../source/rtl_text_plugin":90,"../../symbol/anchor":157,"../../symbol/clip_line":159,"../../symbol/collision_feature":161,"../../symbol/get_anchors":163,"../../symbol/mergelines":166,"../../symbol/quads":167,"../../symbol/resolve_text":168,"../../symbol/shaping":169,"../../util/classify_rings":195,"../../util/find_pole_of_inaccessibility":201,"../../util/script_detection":209,"../../util/token":211,"../../util/util":212,"../array_group":44,"../buffer_group":52,"../element_array_type":53,"../extent":54,"../load_geometry":56,"../vertex_array_type":60,"point-geometry":26,"vector-tile":34}],51:[function(require,module,exports){ -"use strict";var AttributeType={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT"},Buffer=function(e,t,r){this.arrayBuffer=e.arrayBuffer,this.length=e.length,this.attributes=t.members,this.itemSize=t.bytesPerElement,this.type=r,this.arrayType=t};Buffer.fromStructArray=function(e,t){return new Buffer(e.serialize(),e.constructor.serialize(),t)},Buffer.prototype.bind=function(e){var t=e[this.type];this.buffer?e.bindBuffer(t,this.buffer):(this.gl=e,this.buffer=e.createBuffer(),e.bindBuffer(t,this.buffer),e.bufferData(t,this.arrayBuffer,e.STATIC_DRAW),this.arrayBuffer=null)},Buffer.prototype.setVertexAttribPointers=function(e,t,r){for(var f=this,i=0;i0?t+2*e:e}function translate(e,t,r,i,a){if(!t[0]&&!t[1])return e;t=Point.convert(t),"viewport"===r&&t._rotate(-i);for(var n=[],s=0;sr.max||d.yr.max)&&util.warnOnce("Geometry exceeds allowed extent, reduce your vector tile buffer size")}return u}; -},{"../util/util":212,"./extent":54}],57:[function(require,module,exports){ -"use strict";var createStructArrayType=require("../util/struct_array"),PosArray=createStructArrayType({members:[{name:"a_pos",type:"Int16",components:2}]});module.exports=PosArray; -},{"../util/struct_array":210}],58:[function(require,module,exports){ -"use strict";function getPaintAttributeValue(t,r,e,i){if(!t.zoomStops)return r.getPaintValue(t.property,e,i);var a=t.zoomStops.map(function(a){return r.getPaintValue(t.property,util.extend({},e,{zoom:a}),i)});return 1===a.length?a[0]:a}function normalizePaintAttribute(t,r){var e=t.name;e||(e=t.property.replace(r.type+"-","").replace(/-/g,"_"));var i="color"===r._paintSpecifications[t.property].type;return util.extend({name:"a_"+e,components:i?4:1,multiplier:i?255:1,dimensions:i?4:1},t)}var createVertexArrayType=require("./vertex_array_type"),util=require("../util/util"),ProgramConfiguration=function(){this.attributes=[],this.uniforms=[],this.interpolationUniforms=[],this.pragmas={vertex:{},fragment:{}},this.cacheKey=""};ProgramConfiguration.createDynamic=function(t,r,e){for(var i=new ProgramConfiguration,a=0,n=t;a90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};LngLat.prototype.wrap=function(){return new LngLat(wrap(this.lng,-180,180),this.lat)},LngLat.prototype.toArray=function(){return[this.lng,this.lat]},LngLat.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},LngLat.convert=function(t){if(t instanceof LngLat)return t;if(t&&t.hasOwnProperty("lng")&&t.hasOwnProperty("lat"))return new LngLat(t.lng,t.lat);if(Array.isArray(t)&&2===t.length)return new LngLat(t[0],t[1]);throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, or an array of [, ]")},module.exports=LngLat; -},{"../util/util":212}],63:[function(require,module,exports){ -"use strict";var LngLat=require("./lng_lat"),LngLatBounds=function(t,n){t&&(n?this.setSouthWest(t).setNorthEast(n):4===t.length?this.setSouthWest([t[0],t[1]]).setNorthEast([t[2],t[3]]):this.setSouthWest(t[0]).setNorthEast(t[1]))};LngLatBounds.prototype.setNorthEast=function(t){return this._ne=LngLat.convert(t),this},LngLatBounds.prototype.setSouthWest=function(t){return this._sw=LngLat.convert(t),this},LngLatBounds.prototype.extend=function(t){var n,e,s=this._sw,o=this._ne;if(t instanceof LngLat)n=t,e=t;else{if(!(t instanceof LngLatBounds))return Array.isArray(t)?t.every(Array.isArray)?this.extend(LngLatBounds.convert(t)):this.extend(LngLat.convert(t)):this;if(n=t._sw,e=t._ne,!n||!e)return this}return s||o?(s.lng=Math.min(n.lng,s.lng),s.lat=Math.min(n.lat,s.lat),o.lng=Math.max(e.lng,o.lng),o.lat=Math.max(e.lat,o.lat)):(this._sw=new LngLat(n.lng,n.lat),this._ne=new LngLat(e.lng,e.lat)),this},LngLatBounds.prototype.getCenter=function(){return new LngLat((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},LngLatBounds.prototype.getSouthWest=function(){return this._sw},LngLatBounds.prototype.getNorthEast=function(){return this._ne},LngLatBounds.prototype.getNorthWest=function(){return new LngLat(this.getWest(),this.getNorth())},LngLatBounds.prototype.getSouthEast=function(){return new LngLat(this.getEast(),this.getSouth())},LngLatBounds.prototype.getWest=function(){return this._sw.lng},LngLatBounds.prototype.getSouth=function(){return this._sw.lat},LngLatBounds.prototype.getEast=function(){return this._ne.lng},LngLatBounds.prototype.getNorth=function(){return this._ne.lat},LngLatBounds.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},LngLatBounds.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},LngLatBounds.convert=function(t){return!t||t instanceof LngLatBounds?t:new LngLatBounds(t)},module.exports=LngLatBounds; -},{"./lng_lat":62}],64:[function(require,module,exports){ -"use strict";var LngLat=require("./lng_lat"),Point=require("point-geometry"),Coordinate=require("./coordinate"),util=require("../util/util"),interp=require("../util/interpolate"),TileCoord=require("../source/tile_coord"),EXTENT=require("../data/extent"),glmatrix=require("@mapbox/gl-matrix"),vec4=glmatrix.vec4,mat4=glmatrix.mat4,mat2=glmatrix.mat2,Transform=function(t,i,o){this.tileSize=512,this._renderWorldCopies=void 0===o||o,this._minZoom=t||0,this._maxZoom=i||22,this.latRange=[-85.05113,85.05113],this.width=0,this.height=0,this._center=new LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0},prototypeAccessors={minZoom:{},maxZoom:{},worldSize:{},centerPoint:{},size:{},bearing:{},pitch:{},fov:{},zoom:{},center:{},unmodified:{},x:{},y:{},point:{}};prototypeAccessors.minZoom.get=function(){return this._minZoom},prototypeAccessors.minZoom.set=function(t){this._minZoom!==t&&(this._minZoom=t,this.zoom=Math.max(this.zoom,t))},prototypeAccessors.maxZoom.get=function(){return this._maxZoom},prototypeAccessors.maxZoom.set=function(t){this._maxZoom!==t&&(this._maxZoom=t,this.zoom=Math.min(this.zoom,t))},prototypeAccessors.worldSize.get=function(){return this.tileSize*this.scale},prototypeAccessors.centerPoint.get=function(){return this.size._div(2)},prototypeAccessors.size.get=function(){return new Point(this.width,this.height)},prototypeAccessors.bearing.get=function(){return-this.angle/Math.PI*180},prototypeAccessors.bearing.set=function(t){var i=-util.wrap(t,-180,180)*Math.PI/180;this.angle!==i&&(this._unmodified=!1,this.angle=i,this._calcMatrices(),this.rotationMatrix=mat2.create(),mat2.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},prototypeAccessors.pitch.get=function(){return this._pitch/Math.PI*180},prototypeAccessors.pitch.set=function(t){var i=util.clamp(t,0,60)/180*Math.PI;this._pitch!==i&&(this._unmodified=!1,this._pitch=i,this._calcMatrices())},prototypeAccessors.fov.get=function(){return this._fov/Math.PI*180},prototypeAccessors.fov.set=function(t){t=Math.max(.01,Math.min(60,t)),this._fov!==t&&(this._unmodified=!1,this._fov=t/180*Math.PI,this._calcMatrices())},prototypeAccessors.zoom.get=function(){return this._zoom},prototypeAccessors.zoom.set=function(t){var i=Math.min(Math.max(t,this.minZoom),this.maxZoom);this._zoom!==i&&(this._unmodified=!1,this._zoom=i,this.scale=this.zoomScale(i),this.tileZoom=Math.floor(i),this.zoomFraction=i-this.tileZoom,this._constrain(),this._calcMatrices())},prototypeAccessors.center.get=function(){return this._center},prototypeAccessors.center.set=function(t){t.lat===this._center.lat&&t.lng===this._center.lng||(this._unmodified=!1,this._center=t,this._constrain(),this._calcMatrices())},Transform.prototype.coveringZoomLevel=function(t){return(t.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/t.tileSize))},Transform.prototype.coveringTiles=function(t){var i=this.coveringZoomLevel(t),o=i;if(it.maxzoom&&(i=t.maxzoom);var e=this.pointCoordinate(this.centerPoint,i),r=new Point(e.column-.5,e.row-.5),n=[this.pointCoordinate(new Point(0,0),i),this.pointCoordinate(new Point(this.width,0),i),this.pointCoordinate(new Point(this.width,this.height),i),this.pointCoordinate(new Point(0,this.height),i)];return TileCoord.cover(i,n,t.reparseOverscaled?o:i,this._renderWorldCopies).sort(function(t,i){return r.dist(t)-r.dist(i)})},Transform.prototype.resize=function(t,i){this.width=t,this.height=i,this.pixelsToGLUnits=[2/t,-2/i],this._constrain(),this._calcMatrices()},prototypeAccessors.unmodified.get=function(){return this._unmodified},Transform.prototype.zoomScale=function(t){return Math.pow(2,t)},Transform.prototype.scaleZoom=function(t){return Math.log(t)/Math.LN2},Transform.prototype.project=function(t){return new Point(this.lngX(t.lng),this.latY(t.lat))},Transform.prototype.unproject=function(t){return new LngLat(this.xLng(t.x),this.yLat(t.y))},prototypeAccessors.x.get=function(){return this.lngX(this.center.lng)},prototypeAccessors.y.get=function(){return this.latY(this.center.lat)},prototypeAccessors.point.get=function(){return new Point(this.x,this.y)},Transform.prototype.lngX=function(t){return(180+t)*this.worldSize/360},Transform.prototype.latY=function(t){var i=180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360));return(180-i)*this.worldSize/360},Transform.prototype.xLng=function(t){return 360*t/this.worldSize-180},Transform.prototype.yLat=function(t){var i=180-360*t/this.worldSize;return 360/Math.PI*Math.atan(Math.exp(i*Math.PI/180))-90},Transform.prototype.setLocationAtPoint=function(t,i){var o=this.pointCoordinate(i)._sub(this.pointCoordinate(this.centerPoint));this.center=this.coordinateLocation(this.locationCoordinate(t)._sub(o))},Transform.prototype.locationPoint=function(t){return this.coordinatePoint(this.locationCoordinate(t))},Transform.prototype.pointLocation=function(t){return this.coordinateLocation(this.pointCoordinate(t))},Transform.prototype.locationCoordinate=function(t){return new Coordinate(this.lngX(t.lng)/this.tileSize,this.latY(t.lat)/this.tileSize,this.zoom).zoomTo(this.tileZoom)},Transform.prototype.coordinateLocation=function(t){var i=t.zoomTo(this.zoom);return new LngLat(this.xLng(i.column*this.tileSize),this.yLat(i.row*this.tileSize))},Transform.prototype.pointCoordinate=function(t,i){void 0===i&&(i=this.tileZoom);var o=0,e=[t.x,t.y,0,1],r=[t.x,t.y,1,1];vec4.transformMat4(e,e,this.pixelMatrixInverse),vec4.transformMat4(r,r,this.pixelMatrixInverse);var n=e[3],s=r[3],a=e[0]/n,h=r[0]/s,c=e[1]/n,m=r[1]/s,p=e[2]/n,l=r[2]/s,u=p===l?0:(o-p)/(l-p);return new Coordinate(interp(a,h,u)/this.tileSize,interp(c,m,u)/this.tileSize,this.zoom)._zoomTo(i)},Transform.prototype.coordinatePoint=function(t){var i=t.zoomTo(this.zoom),o=[i.column*this.tileSize,i.row*this.tileSize,0,1];return vec4.transformMat4(o,o,this.pixelMatrix),new Point(o[0]/o[3],o[1]/o[3])},Transform.prototype.calculatePosMatrix=function(t,i){var o=t.toCoordinate(i),e=this.worldSize/this.zoomScale(o.zoom),r=mat4.identity(new Float64Array(16));return mat4.translate(r,r,[o.column*e,o.row*e,0]),mat4.scale(r,r,[e/EXTENT,e/EXTENT,1]),mat4.multiply(r,this.projMatrix,r),new Float32Array(r)},Transform.prototype._constrain=function(){if(this.center&&this.width&&this.height&&!this._constraining){this._constraining=!0;var t,i,o,e,r,n,s,a,h=this.size,c=this._unmodified;this.latRange&&(t=this.latY(this.latRange[1]),i=this.latY(this.latRange[0]),r=i-ti&&(a=i-l)}if(this.lngRange){var u=this.x,f=h.x/2;u-fe&&(s=e-f)}void 0===s&&void 0===a||(this.center=this.unproject(new Point(void 0!==s?s:this.x,void 0!==a?a:this.y))),this._unmodified=c,this._constraining=!1}},Transform.prototype._calcMatrices=function(){if(this.height){this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height;var t=this._fov/2,i=Math.PI/2+this._pitch,o=Math.sin(t)*this.cameraToCenterDistance/Math.sin(Math.PI-i-t),e=Math.cos(Math.PI/2-this._pitch)*o+this.cameraToCenterDistance,r=1.01*e,n=new Float64Array(16);mat4.perspective(n,this._fov,this.width/this.height,1,r),mat4.scale(n,n,[1,-1,1]),mat4.translate(n,n,[0,0,-this.cameraToCenterDistance]),mat4.rotateX(n,n,this._pitch),mat4.rotateZ(n,n,this.angle),mat4.translate(n,n,[-this.x,-this.y,0]);var s=this.worldSize/(2*Math.PI*6378137*Math.abs(Math.cos(this.center.lat*(Math.PI/180))));if(mat4.scale(n,n,[1,1,s,1]),this.projMatrix=n,n=mat4.create(),mat4.scale(n,n,[this.width/2,-this.height/2,1]),mat4.translate(n,n,[1,-1,0]),this.pixelMatrix=mat4.multiply(new Float64Array(16),n,this.projMatrix),n=mat4.invert(new Float64Array(16),this.pixelMatrix),!n)throw new Error("failed to invert matrix");this.pixelMatrixInverse=n}},Object.defineProperties(Transform.prototype,prototypeAccessors),module.exports=Transform; -},{"../data/extent":54,"../source/tile_coord":94,"../util/interpolate":204,"../util/util":212,"./coordinate":61,"./lng_lat":62,"@mapbox/gl-matrix":1,"point-geometry":26}],65:[function(require,module,exports){ -"use strict";var browser=require("./util/browser"),mapboxgl=module.exports={};mapboxgl.version=require("../package.json").version,mapboxgl.workerCount=Math.max(Math.floor(browser.hardwareConcurrency/2),1),mapboxgl.Map=require("./ui/map"),mapboxgl.NavigationControl=require("./ui/control/navigation_control"),mapboxgl.GeolocateControl=require("./ui/control/geolocate_control"),mapboxgl.AttributionControl=require("./ui/control/attribution_control"),mapboxgl.ScaleControl=require("./ui/control/scale_control"),mapboxgl.FullscreenControl=require("./ui/control/fullscreen_control"),mapboxgl.Popup=require("./ui/popup"),mapboxgl.Marker=require("./ui/marker"),mapboxgl.Style=require("./style/style"),mapboxgl.LngLat=require("./geo/lng_lat"),mapboxgl.LngLatBounds=require("./geo/lng_lat_bounds"),mapboxgl.Point=require("point-geometry"),mapboxgl.Evented=require("./util/evented"),mapboxgl.supported=require("./util/browser").supported;var config=require("./util/config");mapboxgl.config=config;var rtlTextPlugin=require("./source/rtl_text_plugin");mapboxgl.setRTLTextPlugin=rtlTextPlugin.setRTLTextPlugin,Object.defineProperty(mapboxgl,"accessToken",{get:function(){return config.ACCESS_TOKEN},set:function(o){config.ACCESS_TOKEN=o}}); -},{"../package.json":43,"./geo/lng_lat":62,"./geo/lng_lat_bounds":63,"./source/rtl_text_plugin":90,"./style/style":146,"./ui/control/attribution_control":173,"./ui/control/fullscreen_control":174,"./ui/control/geolocate_control":175,"./ui/control/navigation_control":177,"./ui/control/scale_control":178,"./ui/map":187,"./ui/marker":188,"./ui/popup":189,"./util/browser":192,"./util/config":196,"./util/evented":200,"point-geometry":26}],66:[function(require,module,exports){ -"use strict";function drawBackground(r,t,e){var a=r.gl,i=r.transform,n=i.tileSize,o=e.paint["background-color"],l=e.paint["background-pattern"],u=e.paint["background-opacity"],f=!l&&1===o[3]&&1===u;if(r.isOpaquePass===f){a.disable(a.STENCIL_TEST),r.setDepthSublayer(0);var s;l?(s=r.useProgram("fillPattern",r.basicFillProgramConfiguration),pattern.prepare(l,r,s),r.tileExtentPatternVAO.bind(a,s,r.tileExtentBuffer)):(s=r.useProgram("fill",r.basicFillProgramConfiguration),a.uniform4fv(s.u_color,o),r.tileExtentVAO.bind(a,s,r.tileExtentBuffer)),a.uniform1f(s.u_opacity,u);for(var c=i.coveringTiles({tileSize:n}),g=0,p=c;g":[24,[4,18,20,9,4,0]],"?":[18,[3,16,3,17,4,19,5,20,7,21,11,21,13,20,14,19,15,17,15,15,14,13,13,12,9,10,9,7,-1,-1,9,2,8,1,9,0,10,1,9,2]],"@":[27,[18,13,17,15,15,16,12,16,10,15,9,14,8,11,8,8,9,6,11,5,14,5,16,6,17,8,-1,-1,12,16,10,14,9,11,9,8,10,6,11,5,-1,-1,18,16,17,8,17,6,19,5,21,5,23,7,24,10,24,12,23,15,22,17,20,19,18,20,15,21,12,21,9,20,7,19,5,17,4,15,3,12,3,9,4,6,5,4,7,2,9,1,12,0,15,0,18,1,20,2,21,3,-1,-1,19,16,18,8,18,6,19,5]],A:[18,[9,21,1,0,-1,-1,9,21,17,0,-1,-1,4,7,14,7]],B:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,15,17,13,16,12,13,11,-1,-1,4,11,13,11,16,10,17,9,18,7,18,4,17,2,16,1,13,0,4,0]],C:[21,[18,16,17,18,15,20,13,21,9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5]],D:[21,[4,21,4,0,-1,-1,4,21,11,21,14,20,16,18,17,16,18,13,18,8,17,5,16,3,14,1,11,0,4,0]],E:[19,[4,21,4,0,-1,-1,4,21,17,21,-1,-1,4,11,12,11,-1,-1,4,0,17,0]],F:[18,[4,21,4,0,-1,-1,4,21,17,21,-1,-1,4,11,12,11]],G:[21,[18,16,17,18,15,20,13,21,9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,18,8,-1,-1,13,8,18,8]],H:[22,[4,21,4,0,-1,-1,18,21,18,0,-1,-1,4,11,18,11]],I:[8,[4,21,4,0]],J:[16,[12,21,12,5,11,2,10,1,8,0,6,0,4,1,3,2,2,5,2,7]],K:[21,[4,21,4,0,-1,-1,18,21,4,7,-1,-1,9,12,18,0]],L:[17,[4,21,4,0,-1,-1,4,0,16,0]],M:[24,[4,21,4,0,-1,-1,4,21,12,0,-1,-1,20,21,12,0,-1,-1,20,21,20,0]],N:[22,[4,21,4,0,-1,-1,4,21,18,0,-1,-1,18,21,18,0]],O:[22,[9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,19,8,19,13,18,16,17,18,15,20,13,21,9,21]],P:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,14,17,12,16,11,13,10,4,10]],Q:[22,[9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,19,8,19,13,18,16,17,18,15,20,13,21,9,21,-1,-1,12,4,18,-2]],R:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,15,17,13,16,12,13,11,4,11,-1,-1,11,11,18,0]],S:[20,[17,18,15,20,12,21,8,21,5,20,3,18,3,16,4,14,5,13,7,12,13,10,15,9,16,8,17,6,17,3,15,1,12,0,8,0,5,1,3,3]],T:[16,[8,21,8,0,-1,-1,1,21,15,21]],U:[22,[4,21,4,6,5,3,7,1,10,0,12,0,15,1,17,3,18,6,18,21]],V:[18,[1,21,9,0,-1,-1,17,21,9,0]],W:[24,[2,21,7,0,-1,-1,12,21,7,0,-1,-1,12,21,17,0,-1,-1,22,21,17,0]],X:[20,[3,21,17,0,-1,-1,17,21,3,0]],Y:[18,[1,21,9,11,9,0,-1,-1,17,21,9,11]],Z:[20,[17,21,3,0,-1,-1,3,21,17,21,-1,-1,3,0,17,0]],"[":[14,[4,25,4,-7,-1,-1,5,25,5,-7,-1,-1,4,25,11,25,-1,-1,4,-7,11,-7]],"\\":[14,[0,21,14,-3]],"]":[14,[9,25,9,-7,-1,-1,10,25,10,-7,-1,-1,3,25,10,25,-1,-1,3,-7,10,-7]],"^":[16,[6,15,8,18,10,15,-1,-1,3,12,8,17,13,12,-1,-1,8,17,8,0]],_:[16,[0,-2,16,-2]],"`":[10,[6,21,5,20,4,18,4,16,5,15,6,16,5,17]],a:[19,[15,14,15,0,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],b:[19,[4,21,4,0,-1,-1,4,11,6,13,8,14,11,14,13,13,15,11,16,8,16,6,15,3,13,1,11,0,8,0,6,1,4,3]],c:[18,[15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],d:[19,[15,21,15,0,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],e:[18,[3,8,15,8,15,10,14,12,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],f:[12,[10,21,8,21,6,20,5,17,5,0,-1,-1,2,14,9,14]],g:[19,[15,14,15,-2,14,-5,13,-6,11,-7,8,-7,6,-6,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],h:[19,[4,21,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0]],i:[8,[3,21,4,20,5,21,4,22,3,21,-1,-1,4,14,4,0]],j:[10,[5,21,6,20,7,21,6,22,5,21,-1,-1,6,14,6,-3,5,-6,3,-7,1,-7]],k:[17,[4,21,4,0,-1,-1,14,14,4,4,-1,-1,8,8,15,0]],l:[8,[4,21,4,0]],m:[30,[4,14,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0,-1,-1,15,10,18,13,20,14,23,14,25,13,26,10,26,0]],n:[19,[4,14,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0]],o:[19,[8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3,16,6,16,8,15,11,13,13,11,14,8,14]],p:[19,[4,14,4,-7,-1,-1,4,11,6,13,8,14,11,14,13,13,15,11,16,8,16,6,15,3,13,1,11,0,8,0,6,1,4,3]],q:[19,[15,14,15,-7,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],r:[13,[4,14,4,0,-1,-1,4,8,5,11,7,13,9,14,12,14]],s:[17,[14,11,13,13,10,14,7,14,4,13,3,11,4,9,6,8,11,7,13,6,14,4,14,3,13,1,10,0,7,0,4,1,3,3]],t:[12,[5,21,5,4,6,1,8,0,10,0,-1,-1,2,14,9,14]],u:[19,[4,14,4,4,5,1,7,0,10,0,12,1,15,4,-1,-1,15,14,15,0]],v:[16,[2,14,8,0,-1,-1,14,14,8,0]],w:[22,[3,14,7,0,-1,-1,11,14,7,0,-1,-1,11,14,15,0,-1,-1,19,14,15,0]],x:[17,[3,14,14,0,-1,-1,14,14,3,0]],y:[16,[2,14,8,0,-1,-1,14,14,8,0,6,-4,4,-6,2,-7,1,-7]],z:[17,[14,14,3,0,-1,-1,3,14,14,14,-1,-1,3,0,14,0]],"{":[14,[9,25,7,24,6,23,5,21,5,19,6,17,7,16,8,14,8,12,6,10,-1,-1,7,24,6,22,6,20,7,18,8,17,9,15,9,13,8,11,4,9,8,7,9,5,9,3,8,1,7,0,6,-2,6,-4,7,-6,-1,-1,6,8,8,6,8,4,7,2,6,1,5,-1,5,-3,6,-5,7,-6,9,-7]],"|":[8,[4,25,4,-7]],"}":[14,[5,25,7,24,8,23,9,21,9,19,8,17,7,16,6,14,6,12,8,10,-1,-1,7,24,8,22,8,20,7,18,6,17,5,15,5,13,6,11,10,9,6,7,5,5,5,3,6,1,7,0,8,-2,8,-4,7,-6,-1,-1,8,8,6,6,6,4,7,2,8,1,9,-1,9,-3,8,-5,7,-6,5,-7]],"~":[24,[3,6,3,8,4,11,6,12,8,12,10,11,14,8,16,7,18,7,20,8,21,10,-1,-1,3,8,4,10,6,11,8,11,10,10,14,7,16,6,18,6,20,7,21,10,21,12]]}; -},{"../data/buffer":51,"../data/extent":54,"../data/pos_array":57,"../util/browser":192,"./vertex_array_object":80,"@mapbox/gl-matrix":1}],70:[function(require,module,exports){ -"use strict";function drawFill(t,e,r,i){var a=t.gl;a.enable(a.STENCIL_TEST);var l=!r.paint["fill-pattern"]&&r.isPaintValueFeatureConstant("fill-color")&&r.isPaintValueFeatureConstant("fill-opacity")&&1===r.paint["fill-color"][3]&&1===r.paint["fill-opacity"];t.isOpaquePass===l&&(t.setDepthSublayer(1),drawFillTiles(t,e,r,i,drawFillTile)),!t.isOpaquePass&&r.paint["fill-antialias"]&&(t.lineWidth(2),t.depthMask(!1),t.setDepthSublayer(r.getPaintProperty("fill-outline-color")?2:0),drawFillTiles(t,e,r,i,drawStrokeTile))}function drawFillTiles(t,e,r,i,a){for(var l=!0,n=0,o=i;n0?1/(1-r):1+r}function saturationFactor(r){return r>0?1-1/(1.001-r):-r}function getFadeValues(r,t,e,a){var i=e.paint["raster-fade-duration"];if(r.sourceCache&&i>0){var o=Date.now(),n=(o-r.timeAdded)/i,u=t?(o-t.timeAdded)/i:-1,s=r.sourceCache.getSource(),c=a.coveringZoomLevel({tileSize:s.tileSize,roundZoom:s.roundZoom}),f=!t||Math.abs(t.coord.z-c)>Math.abs(r.coord.z-c),d=f&&r.refreshedUponExpiration?1:util.clamp(f?n:1-u,0,1);return r.refreshedUponExpiration&&n>=1&&(r.refreshedUponExpiration=!1),t?{opacity:1,mix:1-d}:{opacity:d,mix:0}}return{opacity:1,mix:0}}var util=require("../util/util");module.exports=drawRaster; -},{"../util/util":212}],74:[function(require,module,exports){ -"use strict";function drawSymbols(e,t,a,i){if(!e.isOpaquePass){var o=!(a.layout["text-allow-overlap"]||a.layout["icon-allow-overlap"]||a.layout["text-ignore-placement"]||a.layout["icon-ignore-placement"]),r=e.gl;o?r.disable(r.STENCIL_TEST):r.enable(r.STENCIL_TEST),e.setDepthSublayer(0),e.depthMask(!1),drawLayerSymbols(e,t,a,i,!1,a.paint["icon-translate"],a.paint["icon-translate-anchor"],a.layout["icon-rotation-alignment"],a.layout["icon-rotation-alignment"],a.layout["icon-size"]),drawLayerSymbols(e,t,a,i,!0,a.paint["text-translate"],a.paint["text-translate-anchor"],a.layout["text-rotation-alignment"],a.layout["text-pitch-alignment"],a.layout["text-size"]),t.map.showCollisionBoxes&&drawCollisionDebug(e,t,a,i)}}function drawLayerSymbols(e,t,a,i,o,r,n,l,s,u){if(o||!e.style.sprite||e.style.sprite.loaded()){var f=e.gl,m="map"===l,p="map"===s,c=p;c?f.enable(f.DEPTH_TEST):f.disable(f.DEPTH_TEST);for(var d,_,h=0,g=i;hthis.previousZoom;a--)r.changeTimes[a]=e,r.changeOpacities[a]=r.opacities[a];for(a=0;a<256;a++){var s=e-r.changeTimes[a],o=255*(i?s/i:1);a<=t?r.opacities[a]=r.changeOpacities[a]+o:r.opacities[a]=r.changeOpacities[a]-o}this.changed=!0,this.previousZoom=t},FrameHistory.prototype.bind=function(e){this.texture?(e.bindTexture(e.TEXTURE_2D,this.texture),this.changed&&(e.texSubImage2D(e.TEXTURE_2D,0,0,0,256,1,e.ALPHA,e.UNSIGNED_BYTE,this.array),this.changed=!1)):(this.texture=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.texture),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.NEAREST),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.NEAREST),e.texImage2D(e.TEXTURE_2D,0,e.ALPHA,256,1,0,e.ALPHA,e.UNSIGNED_BYTE,this.array))},module.exports=FrameHistory; -},{}],76:[function(require,module,exports){ -"use strict";var util=require("../util/util"),LineAtlas=function(t,i){this.width=t,this.height=i,this.nextRow=0,this.bytes=4,this.data=new Uint8Array(this.width*this.height*this.bytes),this.positions={}};LineAtlas.prototype.setSprite=function(t){this.sprite=t},LineAtlas.prototype.getDash=function(t,i){var e=t.join(",")+i;return this.positions[e]||(this.positions[e]=this.addDash(t,i)),this.positions[e]},LineAtlas.prototype.addDash=function(t,i){var e=this,h=i?7:0,s=2*h+1,a=128;if(this.nextRow+s>this.height)return util.warnOnce("LineAtlas out of space"),null;for(var r=0,n=0;n0?r.pop():null},Painter.prototype.getViewportTexture=function(e,r){var t=this.reusableTextures.viewport;if(t)return t.width===e&&t.height===r?t:(this.gl.deleteTexture(t),void(this.reusableTextures.viewport=null))},Painter.prototype.lineWidth=function(e){this.gl.lineWidth(util.clamp(e,this.lineWidthRange[0],this.lineWidthRange[1]))},Painter.prototype.showOverdrawInspector=function(e){if(e||this._showOverdrawInspector){this._showOverdrawInspector=e;var r=this.gl;if(e){r.blendFunc(r.CONSTANT_COLOR,r.ONE);var t=8,i=1/t;r.blendColor(i,i,i,0),r.clearColor(0,0,0,1),r.clear(r.COLOR_BUFFER_BIT)}else r.blendFunc(r.ONE,r.ONE_MINUS_SRC_ALPHA)}},Painter.prototype.createProgram=function(e,r){var t=this.gl,i=t.createProgram(),a=shaders[e],s="#define MAPBOX_GL_JS\n#define DEVICE_PIXEL_RATIO "+browser.devicePixelRatio.toFixed(1)+"\n";this._showOverdrawInspector&&(s+="#define OVERDRAW_INSPECTOR;\n");var o=r.applyPragmas(s+shaders.prelude.fragmentSource+a.fragmentSource,"fragment"),n=r.applyPragmas(s+shaders.prelude.vertexSource+a.vertexSource,"vertex"),l=t.createShader(t.FRAGMENT_SHADER);t.shaderSource(l,o),t.compileShader(l),t.attachShader(i,l);var h=t.createShader(t.VERTEX_SHADER);t.shaderSource(h,n),t.compileShader(h),t.attachShader(i,h),t.linkProgram(i);for(var u=t.getProgramParameter(i,t.ACTIVE_ATTRIBUTES),c={program:i,numAttributes:u},p=0;p>16,n>>16),o.uniform2f(i.u_pixel_coord_lower,65535&u,65535&n)}; -},{"../source/pixels_to_tile_units":87}],79:[function(require,module,exports){ -"use strict";var path=require("path");module.exports={prelude:{fragmentSource:"#ifdef GL_ES\nprecision mediump float;\n#else\n\n#if !defined(lowp)\n#define lowp\n#endif\n\n#if !defined(mediump)\n#define mediump\n#endif\n\n#if !defined(highp)\n#define highp\n#endif\n\n#endif\n",vertexSource:"#ifdef GL_ES\nprecision highp float;\n#else\n\n#if !defined(lowp)\n#define lowp\n#endif\n\n#if !defined(mediump)\n#define mediump\n#endif\n\n#if !defined(highp)\n#define highp\n#endif\n\n#endif\n\nfloat evaluate_zoom_function_1(const vec4 values, const float t) {\n if (t < 1.0) {\n return mix(values[0], values[1], t);\n } else if (t < 2.0) {\n return mix(values[1], values[2], t - 1.0);\n } else {\n return mix(values[2], values[3], t - 2.0);\n }\n}\nvec4 evaluate_zoom_function_4(const vec4 value0, const vec4 value1, const vec4 value2, const vec4 value3, const float t) {\n if (t < 1.0) {\n return mix(value0, value1, t);\n } else if (t < 2.0) {\n return mix(value1, value2, t - 1.0);\n } else {\n return mix(value2, value3, t - 2.0);\n }\n}\n\n\n// To minimize the number of attributes needed in the mapbox-gl-native shaders,\n// we encode a 4-component color into a pair of floats (i.e. a vec2) as follows:\n// [ floor(color.r * 255) * 256 + color.g * 255,\n// floor(color.b * 255) * 256 + color.g * 255 ]\nvec4 decode_color(const vec2 encodedColor) {\n float r = floor(encodedColor[0]/256.0)/255.0;\n float g = (encodedColor[0] - r*256.0*255.0)/255.0;\n float b = floor(encodedColor[1]/256.0)/255.0;\n float a = (encodedColor[1] - b*256.0*255.0)/255.0;\n return vec4(r, g, b, a);\n}\n\n// Unpack a pair of paint values and interpolate between them.\nfloat unpack_mix_vec2(const vec2 packedValue, const float t) {\n return mix(packedValue[0], packedValue[1], t);\n}\n\n// Unpack a pair of paint values and interpolate between them.\nvec4 unpack_mix_vec4(const vec4 packedColors, const float t) {\n vec4 minColor = decode_color(vec2(packedColors[0], packedColors[1]));\n vec4 maxColor = decode_color(vec2(packedColors[2], packedColors[3]));\n return mix(minColor, maxColor, t);\n}\n\n// The offset depends on how many pixels are between the world origin and the edge of the tile:\n// vec2 offset = mod(pixel_coord, size)\n//\n// At high zoom levels there are a ton of pixels between the world origin and the edge of the tile.\n// The glsl spec only guarantees 16 bits of precision for highp floats. We need more than that.\n//\n// The pixel_coord is passed in as two 16 bit values:\n// pixel_coord_upper = floor(pixel_coord / 2^16)\n// pixel_coord_lower = mod(pixel_coord, 2^16)\n//\n// The offset is calculated in a series of steps that should preserve this precision:\nvec2 get_pattern_pos(const vec2 pixel_coord_upper, const vec2 pixel_coord_lower,\n const vec2 pattern_size, const float tile_units_to_pixels, const vec2 pos) {\n\n vec2 offset = mod(mod(mod(pixel_coord_upper, pattern_size) * 256.0, pattern_size) * 256.0 + pixel_coord_lower, pattern_size);\n return (tile_units_to_pixels * pos + offset) / pattern_size;\n}\n"},circle:{fragmentSource:"#pragma mapbox: define lowp 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 lowp vec4 stroke_color\n#pragma mapbox: define mediump float stroke_width\n#pragma mapbox: define lowp float stroke_opacity\n\nvarying vec2 v_extrude;\nvarying lowp float v_antialiasblur;\n\nvoid main() {\n #pragma mapbox: initialize lowp 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 lowp vec4 stroke_color\n #pragma mapbox: initialize mediump float stroke_width\n #pragma mapbox: initialize lowp float stroke_opacity\n\n float extrude_length = length(v_extrude);\n float antialiased_blur = -max(blur, v_antialiasblur);\n\n float opacity_t = smoothstep(0.0, antialiased_blur, extrude_length - 1.0);\n\n float color_t = stroke_width < 0.01 ? 0.0 : smoothstep(\n antialiased_blur,\n 0.0,\n extrude_length - radius / (radius + stroke_width)\n );\n\n gl_FragColor = opacity_t * mix(color * opacity, stroke_color * stroke_opacity, color_t);\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform bool u_scale_with_map;\nuniform vec2 u_extrude_scale;\n\nattribute vec2 a_pos;\n\n#pragma mapbox: define lowp 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 lowp vec4 stroke_color\n#pragma mapbox: define mediump float stroke_width\n#pragma mapbox: define lowp float stroke_opacity\n\nvarying vec2 v_extrude;\nvarying lowp float v_antialiasblur;\n\nvoid main(void) {\n #pragma mapbox: initialize lowp 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 lowp vec4 stroke_color\n #pragma mapbox: initialize mediump float stroke_width\n #pragma mapbox: initialize lowp float stroke_opacity\n\n // unencode the extrusion vector that we snuck into the a_pos vector\n v_extrude = vec2(mod(a_pos, 2.0) * 2.0 - 1.0);\n\n vec2 extrude = v_extrude * (radius + stroke_width) * u_extrude_scale;\n // multiply a_pos by 0.5, since we had it * 2 in order to sneak\n // in extrusion data\n gl_Position = u_matrix * vec4(floor(a_pos * 0.5), 0, 1);\n\n if (u_scale_with_map) {\n gl_Position.xy += extrude;\n } else {\n gl_Position.xy += extrude * gl_Position.w;\n }\n\n // This is a minimum blur distance that serves as a faux-antialiasing for\n // the circle. since blur is a ratio of the circle's size and the intent is\n // to keep the blur at roughly 1px, the two are inversely related.\n v_antialiasblur = 1.0 / DEVICE_PIXEL_RATIO / (radius + stroke_width);\n}\n"},collisionBox:{fragmentSource:"uniform float u_zoom;\nuniform float u_maxzoom;\n\nvarying float v_max_zoom;\nvarying float v_placement_zoom;\n\nvoid main() {\n\n float alpha = 0.5;\n\n gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0) * alpha;\n\n if (v_placement_zoom > u_zoom) {\n gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0) * alpha;\n }\n\n if (u_zoom >= v_max_zoom) {\n gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0) * alpha * 0.25;\n }\n\n if (v_placement_zoom >= u_maxzoom) {\n gl_FragColor = vec4(0.0, 0.0, 1.0, 1.0) * alpha * 0.2;\n }\n}\n",vertexSource:"attribute vec2 a_pos;\nattribute vec2 a_extrude;\nattribute vec2 a_data;\n\nuniform mat4 u_matrix;\nuniform float u_scale;\n\nvarying float v_max_zoom;\nvarying float v_placement_zoom;\n\nvoid main() {\n gl_Position = u_matrix * vec4(a_pos + a_extrude / u_scale, 0.0, 1.0);\n\n v_max_zoom = a_data.x;\n v_placement_zoom = a_data.y;\n}\n"},debug:{fragmentSource:"uniform lowp vec4 u_color;\n\nvoid main() {\n gl_FragColor = u_color;\n}\n",vertexSource:"attribute vec2 a_pos;\n\nuniform mat4 u_matrix;\n\nvoid main() {\n gl_Position = u_matrix * vec4(a_pos, step(32767.0, a_pos.x), 1);\n}\n"},fill:{fragmentSource:"#pragma mapbox: define lowp vec4 color\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp vec4 color\n #pragma mapbox: initialize lowp float opacity\n\n gl_FragColor = color * opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"attribute vec2 a_pos;\n\nuniform mat4 u_matrix;\n\n#pragma mapbox: define lowp vec4 color\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp vec4 color\n #pragma mapbox: initialize lowp float opacity\n\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\n}\n"},fillOutline:{fragmentSource:"#pragma mapbox: define lowp vec4 outline_color\n#pragma mapbox: define lowp float opacity\n\nvarying vec2 v_pos;\n\nvoid main() {\n #pragma mapbox: initialize lowp vec4 outline_color\n #pragma mapbox: initialize lowp float opacity\n\n float dist = length(v_pos - gl_FragCoord.xy);\n float alpha = smoothstep(1.0, 0.0, dist);\n gl_FragColor = outline_color * (alpha * opacity);\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"attribute vec2 a_pos;\n\nuniform mat4 u_matrix;\nuniform vec2 u_world;\n\nvarying vec2 v_pos;\n\n#pragma mapbox: define lowp vec4 outline_color\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp vec4 outline_color\n #pragma mapbox: initialize lowp float opacity\n\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\n v_pos = (gl_Position.xy / gl_Position.w + 1.0) / 2.0 * u_world;\n}\n"},fillOutlinePattern:{fragmentSource:"uniform vec2 u_pattern_tl_a;\nuniform vec2 u_pattern_br_a;\nuniform vec2 u_pattern_tl_b;\nuniform vec2 u_pattern_br_b;\nuniform float u_mix;\n\nuniform sampler2D u_image;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\nvarying vec2 v_pos;\n\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp float opacity\n\n vec2 imagecoord = mod(v_pos_a, 1.0);\n vec2 pos = mix(u_pattern_tl_a, u_pattern_br_a, imagecoord);\n vec4 color1 = texture2D(u_image, pos);\n\n vec2 imagecoord_b = mod(v_pos_b, 1.0);\n vec2 pos2 = mix(u_pattern_tl_b, u_pattern_br_b, imagecoord_b);\n vec4 color2 = texture2D(u_image, pos2);\n\n // find distance to outline for alpha interpolation\n\n float dist = length(v_pos - gl_FragCoord.xy);\n float alpha = smoothstep(1.0, 0.0, dist);\n\n\n gl_FragColor = mix(color1, color2, u_mix) * alpha * opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec2 u_world;\nuniform vec2 u_pattern_size_a;\nuniform vec2 u_pattern_size_b;\nuniform vec2 u_pixel_coord_upper;\nuniform vec2 u_pixel_coord_lower;\nuniform float u_scale_a;\nuniform float u_scale_b;\nuniform float u_tile_units_to_pixels;\n\nattribute vec2 a_pos;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\nvarying vec2 v_pos;\n\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp float opacity\n\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\n\n 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);\n 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);\n\n v_pos = (gl_Position.xy / gl_Position.w + 1.0) / 2.0 * u_world;\n}\n"},fillPattern:{fragmentSource:"uniform vec2 u_pattern_tl_a;\nuniform vec2 u_pattern_br_a;\nuniform vec2 u_pattern_tl_b;\nuniform vec2 u_pattern_br_b;\nuniform float u_mix;\n\nuniform sampler2D u_image;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\n\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp float opacity\n\n vec2 imagecoord = mod(v_pos_a, 1.0);\n vec2 pos = mix(u_pattern_tl_a, u_pattern_br_a, imagecoord);\n vec4 color1 = texture2D(u_image, pos);\n\n vec2 imagecoord_b = mod(v_pos_b, 1.0);\n vec2 pos2 = mix(u_pattern_tl_b, u_pattern_br_b, imagecoord_b);\n vec4 color2 = texture2D(u_image, pos2);\n\n gl_FragColor = mix(color1, color2, u_mix) * opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec2 u_pattern_size_a;\nuniform vec2 u_pattern_size_b;\nuniform vec2 u_pixel_coord_upper;\nuniform vec2 u_pixel_coord_lower;\nuniform float u_scale_a;\nuniform float u_scale_b;\nuniform float u_tile_units_to_pixels;\n\nattribute vec2 a_pos;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\n\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp float opacity\n\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\n\n 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);\n 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);\n}\n"},fillExtrusion:{fragmentSource:"varying vec4 v_color;\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n#pragma mapbox: define lowp vec4 color\n\nvoid main() {\n #pragma mapbox: initialize lowp float base\n #pragma mapbox: initialize lowp float height\n #pragma mapbox: initialize lowp vec4 color\n\n gl_FragColor = v_color;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec3 u_lightcolor;\nuniform lowp vec3 u_lightpos;\nuniform lowp float u_lightintensity;\n\nattribute vec2 a_pos;\nattribute vec3 a_normal;\nattribute float a_edgedistance;\n\nvarying vec4 v_color;\n\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n\n#pragma mapbox: define lowp vec4 color\n\nvoid main() {\n #pragma mapbox: initialize lowp float base\n #pragma mapbox: initialize lowp float height\n #pragma mapbox: initialize lowp vec4 color\n\n float ed = a_edgedistance; // use each attrib in order to not trip a VAO assert\n float t = mod(a_normal.x, 2.0);\n\n gl_Position = u_matrix * vec4(a_pos, t > 0.0 ? height : base, 1);\n\n // Relative luminance (how dark/bright is the surface color?)\n float colorvalue = color.r * 0.2126 + color.g * 0.7152 + color.b * 0.0722;\n\n v_color = vec4(0.0, 0.0, 0.0, 1.0);\n\n // Add slight ambient lighting so no extrusions are totally black\n vec4 ambientlight = vec4(0.03, 0.03, 0.03, 1.0);\n color += ambientlight;\n\n // Calculate cos(theta), where theta is the angle between surface normal and diffuse light ray\n float directional = clamp(dot(a_normal / 16384.0, u_lightpos), 0.0, 1.0);\n\n // Adjust directional so that\n // the range of values for highlight/shading is narrower\n // with lower light intensity\n // and with lighter/brighter surface colors\n directional = mix((1.0 - u_lightintensity), max((1.0 - colorvalue + u_lightintensity), 1.0), directional);\n\n // Add gradient along z axis of side surfaces\n if (a_normal.y != 0.0) {\n directional *= clamp((t + base) * pow(height / 150.0, 0.5), mix(0.7, 0.98, 1.0 - u_lightintensity), 1.0);\n }\n\n // Assign final color based on surface + ambient light color, diffuse light directional, and light color\n // with lower bounds adjusted to hue of light\n // so that shading is tinted with the complementary (opposite) color to the light color\n v_color.r += clamp(color.r * directional * u_lightcolor.r, mix(0.0, 0.3, 1.0 - u_lightcolor.r), 1.0);\n v_color.g += clamp(color.g * directional * u_lightcolor.g, mix(0.0, 0.3, 1.0 - u_lightcolor.g), 1.0);\n v_color.b += clamp(color.b * directional * u_lightcolor.b, mix(0.0, 0.3, 1.0 - u_lightcolor.b), 1.0);\n}\n"},fillExtrusionPattern:{fragmentSource:"uniform vec2 u_pattern_tl_a;\nuniform vec2 u_pattern_br_a;\nuniform vec2 u_pattern_tl_b;\nuniform vec2 u_pattern_br_b;\nuniform float u_mix;\n\nuniform sampler2D u_image;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\nvarying vec4 v_lighting;\n\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n\nvoid main() {\n #pragma mapbox: initialize lowp float base\n #pragma mapbox: initialize lowp float height\n\n vec2 imagecoord = mod(v_pos_a, 1.0);\n vec2 pos = mix(u_pattern_tl_a, u_pattern_br_a, imagecoord);\n vec4 color1 = texture2D(u_image, pos);\n\n vec2 imagecoord_b = mod(v_pos_b, 1.0);\n vec2 pos2 = mix(u_pattern_tl_b, u_pattern_br_b, imagecoord_b);\n vec4 color2 = texture2D(u_image, pos2);\n\n vec4 mixedColor = mix(color1, color2, u_mix);\n\n gl_FragColor = mixedColor * v_lighting;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec2 u_pattern_size_a;\nuniform vec2 u_pattern_size_b;\nuniform vec2 u_pixel_coord_upper;\nuniform vec2 u_pixel_coord_lower;\nuniform float u_scale_a;\nuniform float u_scale_b;\nuniform float u_tile_units_to_pixels;\nuniform float u_height_factor;\n\nuniform vec3 u_lightcolor;\nuniform lowp vec3 u_lightpos;\nuniform lowp float u_lightintensity;\n\nattribute vec2 a_pos;\nattribute vec3 a_normal;\nattribute float a_edgedistance;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\nvarying vec4 v_lighting;\nvarying float v_directional;\n\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n\nvoid main() {\n #pragma mapbox: initialize lowp float base\n #pragma mapbox: initialize lowp float height\n\n float t = mod(a_normal.x, 2.0);\n float z = t > 0.0 ? height : base;\n\n gl_Position = u_matrix * vec4(a_pos, z, 1);\n\n vec2 pos = a_normal.x == 1.0 && a_normal.y == 0.0 && a_normal.z == 16384.0\n ? a_pos // extrusion top\n : vec2(a_edgedistance, z * u_height_factor); // extrusion side\n\n 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, pos);\n 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, pos);\n\n v_lighting = vec4(0.0, 0.0, 0.0, 1.0);\n float directional = clamp(dot(a_normal / 16383.0, u_lightpos), 0.0, 1.0);\n directional = mix((1.0 - u_lightintensity), max((0.5 + u_lightintensity), 1.0), directional);\n\n if (a_normal.y != 0.0) {\n directional *= clamp((t + base) * pow(height / 150.0, 0.5), mix(0.7, 0.98, 1.0 - u_lightintensity), 1.0);\n }\n\n v_lighting.rgb += clamp(directional * u_lightcolor, mix(vec3(0.0), vec3(0.3), 1.0 - u_lightcolor), vec3(1.0));\n}\n"},extrusionTexture:{fragmentSource:"uniform sampler2D u_texture;\nuniform float u_opacity;\n\nvarying vec2 v_pos;\n\nvoid main() {\n gl_FragColor = texture2D(u_texture, v_pos) * u_opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(0.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform int u_xdim;\nuniform int u_ydim;\nattribute vec2 a_pos;\nvarying vec2 v_pos;\n\nvoid main() {\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\n\n v_pos.x = a_pos.x / float(u_xdim);\n v_pos.y = 1.0 - a_pos.y / float(u_ydim);\n}\n"},line:{fragmentSource:"#pragma mapbox: define lowp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n\nvarying vec2 v_width2;\nvarying vec2 v_normal;\nvarying float v_gamma_scale;\n\nvoid main() {\n #pragma mapbox: initialize lowp vec4 color\n #pragma mapbox: initialize lowp float blur\n #pragma mapbox: initialize lowp float opacity\n\n // Calculate the distance of the pixel from the line in pixels.\n float dist = length(v_normal) * v_width2.s;\n\n // Calculate the antialiasing fade factor. This is either when fading in\n // the line in case of an offset line (v_width2.t) or when fading out\n // (v_width2.s)\n float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\n float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\n\n gl_FragColor = color * (alpha * opacity);\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"\n\n// the distance over which the line edge fades out.\n// Retina devices need a smaller distance to avoid aliasing.\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\n\n// floor(127 / 2) == 63.0\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\n// there are also \"special\" normals that have a bigger length (of up to 126 in\n// this case).\n// #define scale 63.0\n#define scale 0.015873016\n\nattribute vec2 a_pos;\nattribute vec4 a_data;\n\nuniform mat4 u_matrix;\nuniform mediump float u_ratio;\nuniform mediump float u_width;\nuniform vec2 u_gl_units_to_pixels;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying float v_gamma_scale;\n\n#pragma mapbox: define lowp 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\nvoid main() {\n #pragma mapbox: initialize lowp 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\n vec2 a_extrude = a_data.xy - 128.0;\n float a_direction = mod(a_data.z, 4.0) - 1.0;\n\n // We store the texture normals in the most insignificant bit\n // transform y so that 0 => -1 and 1 => 1\n // In the texture normal, x is 0 if the normal points straight up/down and 1 if it's a round cap\n // y is 1 if the normal points up, and -1 if it points down\n mediump vec2 normal = mod(a_pos, 2.0);\n normal.y = sign(normal.y - 0.5);\n v_normal = normal;\n\n\n // these transformations used to be applied in the JS and native code bases. \n // moved them into the shader for clarity and simplicity. \n gapwidth = gapwidth / 2.0;\n float width = u_width / 2.0;\n offset = -1.0 * offset; \n\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\n float outset = gapwidth + width * (gapwidth > 0.0 ? 2.0 : 1.0) + ANTIALIASING;\n\n // Scale the extrusion vector down to a normal and then up by the line width\n // of this vertex.\n mediump vec2 dist = outset * a_extrude * scale;\n\n // Calculate the offset when drawing a line that is to the side of the actual line.\n // We do this by creating a vector that points towards the extrude, but rotate\n // it when we're drawing round end points (a_direction = -1 or 1) since their\n // extrude vector points in another direction.\n mediump float u = 0.5 * a_direction;\n mediump float t = 1.0 - abs(u);\n mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\n\n // Remove the texture normal bit to get the position\n vec2 pos = floor(a_pos * 0.5);\n\n vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\n gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\n\n // calculate how much the perspective view squishes or stretches the extrude\n float extrude_length_without_perspective = length(dist);\n float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\n v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\n\n v_width2 = vec2(outset, inset);\n}\n"},linePattern:{fragmentSource:"uniform vec2 u_pattern_size_a;\nuniform vec2 u_pattern_size_b;\nuniform vec2 u_pattern_tl_a;\nuniform vec2 u_pattern_br_a;\nuniform vec2 u_pattern_tl_b;\nuniform vec2 u_pattern_br_b;\nuniform float u_fade;\n\nuniform sampler2D u_image;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying float v_linesofar;\nvarying float v_gamma_scale;\n\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp float blur\n #pragma mapbox: initialize lowp float opacity\n\n // Calculate the distance of the pixel from the line in pixels.\n float dist = length(v_normal) * v_width2.s;\n\n // Calculate the antialiasing fade factor. This is either when fading in\n // the line in case of an offset line (v_width2.t) or when fading out\n // (v_width2.s)\n float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\n float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\n\n float x_a = mod(v_linesofar / u_pattern_size_a.x, 1.0);\n float x_b = mod(v_linesofar / u_pattern_size_b.x, 1.0);\n float y_a = 0.5 + (v_normal.y * v_width2.s / u_pattern_size_a.y);\n float y_b = 0.5 + (v_normal.y * v_width2.s / u_pattern_size_b.y);\n vec2 pos_a = mix(u_pattern_tl_a, u_pattern_br_a, vec2(x_a, y_a));\n vec2 pos_b = mix(u_pattern_tl_b, u_pattern_br_b, vec2(x_b, y_b));\n\n vec4 color = mix(texture2D(u_image, pos_a), texture2D(u_image, pos_b), u_fade);\n\n gl_FragColor = color * alpha * opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"// floor(127 / 2) == 63.0\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\n// there are also \"special\" normals that have a bigger length (of up to 126 in\n// this case).\n// #define scale 63.0\n#define scale 0.015873016\n\n// We scale the distance before adding it to the buffers so that we can store\n// long distances for long segments. Use this value to unscale the distance.\n#define LINE_DISTANCE_SCALE 2.0\n\n// the distance over which the line edge fades out.\n// Retina devices need a smaller distance to avoid aliasing.\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\n\nattribute vec2 a_pos;\nattribute vec4 a_data;\n\nuniform mat4 u_matrix;\nuniform mediump float u_ratio;\nuniform mediump float u_width;\nuniform vec2 u_gl_units_to_pixels;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying float v_linesofar;\nvarying float v_gamma_scale;\n\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\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\n vec2 a_extrude = a_data.xy - 128.0;\n float a_direction = mod(a_data.z, 4.0) - 1.0;\n float a_linesofar = (floor(a_data.z / 4.0) + a_data.w * 64.0) * LINE_DISTANCE_SCALE;\n\n // We store the texture normals in the most insignificant bit\n // transform y so that 0 => -1 and 1 => 1\n // In the texture normal, x is 0 if the normal points straight up/down and 1 if it's a round cap\n // y is 1 if the normal points up, and -1 if it points down\n mediump vec2 normal = mod(a_pos, 2.0);\n normal.y = sign(normal.y - 0.5);\n v_normal = normal;\n\n // these transformations used to be applied in the JS and native code bases. \n // moved them into the shader for clarity and simplicity. \n gapwidth = gapwidth / 2.0;\n float width = u_width / 2.0;\n offset = -1.0 * offset; \n\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\n float outset = gapwidth + width * (gapwidth > 0.0 ? 2.0 : 1.0) + ANTIALIASING;\n\n // Scale the extrusion vector down to a normal and then up by the line width\n // of this vertex.\n mediump vec2 dist = outset * a_extrude * scale;\n\n // Calculate the offset when drawing a line that is to the side of the actual line.\n // We do this by creating a vector that points towards the extrude, but rotate\n // it when we're drawing round end points (a_direction = -1 or 1) since their\n // extrude vector points in another direction.\n mediump float u = 0.5 * a_direction;\n mediump float t = 1.0 - abs(u);\n mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\n\n // Remove the texture normal bit to get the position\n vec2 pos = floor(a_pos * 0.5);\n\n vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\n gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\n\n // calculate how much the perspective view squishes or stretches the extrude\n float extrude_length_without_perspective = length(dist);\n float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\n v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\n\n v_linesofar = a_linesofar;\n v_width2 = vec2(outset, inset);\n}\n"},lineSDF:{fragmentSource:"\nuniform sampler2D u_image;\nuniform float u_sdfgamma;\nuniform float u_mix;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying vec2 v_tex_a;\nvarying vec2 v_tex_b;\nvarying float v_gamma_scale;\n\n#pragma mapbox: define lowp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp vec4 color\n #pragma mapbox: initialize lowp float blur\n #pragma mapbox: initialize lowp float opacity\n\n // Calculate the distance of the pixel from the line in pixels.\n float dist = length(v_normal) * v_width2.s;\n\n // Calculate the antialiasing fade factor. This is either when fading in\n // the line in case of an offset line (v_width2.t) or when fading out\n // (v_width2.s)\n float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\n float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\n\n float sdfdist_a = texture2D(u_image, v_tex_a).a;\n float sdfdist_b = texture2D(u_image, v_tex_b).a;\n float sdfdist = mix(sdfdist_a, sdfdist_b, u_mix);\n alpha *= smoothstep(0.5 - u_sdfgamma, 0.5 + u_sdfgamma, sdfdist);\n\n gl_FragColor = color * (alpha * opacity);\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"// floor(127 / 2) == 63.0\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\n// there are also \"special\" normals that have a bigger length (of up to 126 in\n// this case).\n// #define scale 63.0\n#define scale 0.015873016\n\n// We scale the distance before adding it to the buffers so that we can store\n// long distances for long segments. Use this value to unscale the distance.\n#define LINE_DISTANCE_SCALE 2.0\n\n// the distance over which the line edge fades out.\n// Retina devices need a smaller distance to avoid aliasing.\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\n\nattribute vec2 a_pos;\nattribute vec4 a_data;\n\nuniform mat4 u_matrix;\nuniform mediump float u_ratio;\nuniform vec2 u_patternscale_a;\nuniform float u_tex_y_a;\nuniform vec2 u_patternscale_b;\nuniform float u_tex_y_b;\nuniform vec2 u_gl_units_to_pixels;\nuniform mediump float u_width;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying vec2 v_tex_a;\nvarying vec2 v_tex_b;\nvarying float v_gamma_scale;\n\n#pragma mapbox: define lowp 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\nvoid main() {\n #pragma mapbox: initialize lowp 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\n vec2 a_extrude = a_data.xy - 128.0;\n float a_direction = mod(a_data.z, 4.0) - 1.0;\n float a_linesofar = (floor(a_data.z / 4.0) + a_data.w * 64.0) * LINE_DISTANCE_SCALE;\n\n // We store the texture normals in the most insignificant bit\n // transform y so that 0 => -1 and 1 => 1\n // In the texture normal, x is 0 if the normal points straight up/down and 1 if it's a round cap\n // y is 1 if the normal points up, and -1 if it points down\n mediump vec2 normal = mod(a_pos, 2.0);\n normal.y = sign(normal.y - 0.5);\n v_normal = normal;\n\n // these transformations used to be applied in the JS and native code bases. \n // moved them into the shader for clarity and simplicity. \n gapwidth = gapwidth / 2.0;\n float width = u_width / 2.0;\n offset = -1.0 * offset;\n \n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\n float outset = gapwidth + width * (gapwidth > 0.0 ? 2.0 : 1.0) + ANTIALIASING;\n\n // Scale the extrusion vector down to a normal and then up by the line width\n // of this vertex.\n mediump vec2 dist =outset * a_extrude * scale;\n\n // Calculate the offset when drawing a line that is to the side of the actual line.\n // We do this by creating a vector that points towards the extrude, but rotate\n // it when we're drawing round end points (a_direction = -1 or 1) since their\n // extrude vector points in another direction.\n mediump float u = 0.5 * a_direction;\n mediump float t = 1.0 - abs(u);\n mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\n\n // Remove the texture normal bit to get the position\n vec2 pos = floor(a_pos * 0.5);\n\n vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\n gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\n\n // calculate how much the perspective view squishes or stretches the extrude\n float extrude_length_without_perspective = length(dist);\n float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\n v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\n\n v_tex_a = vec2(a_linesofar * u_patternscale_a.x, normal.y * u_patternscale_a.y + u_tex_y_a);\n v_tex_b = vec2(a_linesofar * u_patternscale_b.x, normal.y * u_patternscale_b.y + u_tex_y_b);\n\n v_width2 = vec2(outset, inset);\n}\n" -},raster:{fragmentSource:"uniform float u_fade_t;\nuniform float u_opacity;\nuniform sampler2D u_image0;\nuniform sampler2D u_image1;\nvarying vec2 v_pos0;\nvarying vec2 v_pos1;\n\nuniform float u_brightness_low;\nuniform float u_brightness_high;\n\nuniform float u_saturation_factor;\nuniform float u_contrast_factor;\nuniform vec3 u_spin_weights;\n\nvoid main() {\n\n // read and cross-fade colors from the main and parent tiles\n vec4 color0 = texture2D(u_image0, v_pos0);\n vec4 color1 = texture2D(u_image1, v_pos1);\n vec4 color = mix(color0, color1, u_fade_t);\n color.a *= u_opacity;\n vec3 rgb = color.rgb;\n\n // spin\n rgb = vec3(\n dot(rgb, u_spin_weights.xyz),\n dot(rgb, u_spin_weights.zxy),\n dot(rgb, u_spin_weights.yzx));\n\n // saturation\n float average = (color.r + color.g + color.b) / 3.0;\n rgb += (average - rgb) * u_saturation_factor;\n\n // contrast\n rgb = (rgb - 0.5) * u_contrast_factor + 0.5;\n\n // brightness\n vec3 u_high_vec = vec3(u_brightness_low, u_brightness_low, u_brightness_low);\n vec3 u_low_vec = vec3(u_brightness_high, u_brightness_high, u_brightness_high);\n\n gl_FragColor = vec4(mix(u_high_vec, u_low_vec, rgb) * color.a, color.a);\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec2 u_tl_parent;\nuniform float u_scale_parent;\nuniform float u_buffer_scale;\n\nattribute vec2 a_pos;\nattribute vec2 a_texture_pos;\n\nvarying vec2 v_pos0;\nvarying vec2 v_pos1;\n\nvoid main() {\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\n v_pos0 = (((a_texture_pos / 32767.0) - 0.5) / u_buffer_scale ) + 0.5;\n v_pos1 = (v_pos0 * u_scale_parent) + u_tl_parent;\n}\n"},symbolIcon:{fragmentSource:"uniform sampler2D u_texture;\nuniform sampler2D u_fadetexture;\n\n#pragma mapbox: define lowp float opacity\n\nvarying vec2 v_tex;\nvarying vec2 v_fade_tex;\n\nvoid main() {\n #pragma mapbox: initialize lowp float opacity\n\n lowp float alpha = texture2D(u_fadetexture, v_fade_tex).a * opacity;\n gl_FragColor = texture2D(u_texture, v_tex) * alpha;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"\nattribute vec4 a_pos_offset;\nattribute vec2 a_texture_pos;\nattribute vec4 a_data;\n\n#pragma mapbox: define lowp float opacity\n\n// matrix is for the vertex position.\nuniform mat4 u_matrix;\n\nuniform mediump float u_zoom;\nuniform bool u_rotate_with_map;\nuniform vec2 u_extrude_scale;\n\nuniform vec2 u_texsize;\n\nvarying vec2 v_tex;\nvarying vec2 v_fade_tex;\n\nvoid main() {\n #pragma mapbox: initialize lowp float opacity\n\n vec2 a_pos = a_pos_offset.xy;\n vec2 a_offset = a_pos_offset.zw;\n\n vec2 a_tex = a_texture_pos.xy;\n mediump float a_labelminzoom = a_data[0];\n mediump vec2 a_zoom = a_data.pq;\n mediump float a_minzoom = a_zoom[0];\n mediump float a_maxzoom = a_zoom[1];\n\n // u_zoom is the current zoom level adjusted for the change in font size\n mediump float z = 2.0 - step(a_minzoom, u_zoom) - (1.0 - step(a_maxzoom, u_zoom));\n\n vec2 extrude = u_extrude_scale * (a_offset / 64.0);\n if (u_rotate_with_map) {\n gl_Position = u_matrix * vec4(a_pos + extrude, 0, 1);\n gl_Position.z += z * gl_Position.w;\n } else {\n gl_Position = u_matrix * vec4(a_pos, 0, 1) + vec4(extrude, 0, 0);\n }\n\n v_tex = a_tex / u_texsize;\n v_fade_tex = vec2(a_labelminzoom / 255.0, 0.0);\n}\n"},symbolSDF:{fragmentSource:"#define SDF_PX 8.0\n#define EDGE_GAMMA 0.105/DEVICE_PIXEL_RATIO\n\nuniform bool u_is_halo;\n#pragma mapbox: define lowp vec4 fill_color\n#pragma mapbox: define lowp 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\n\nuniform sampler2D u_texture;\nuniform sampler2D u_fadetexture;\nuniform lowp float u_font_scale;\nuniform highp float u_gamma_scale;\n\nvarying vec2 v_tex;\nvarying vec2 v_fade_tex;\nvarying float v_gamma_scale;\n\nvoid main() {\n #pragma mapbox: initialize lowp vec4 fill_color\n #pragma mapbox: initialize lowp 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\n\n lowp vec4 color = fill_color;\n highp float gamma = EDGE_GAMMA / u_gamma_scale;\n lowp float buff = (256.0 - 64.0) / 256.0;\n if (u_is_halo) {\n color = halo_color;\n gamma = (halo_blur * 1.19 / SDF_PX + EDGE_GAMMA) / u_gamma_scale;\n buff = (6.0 - halo_width / u_font_scale) / SDF_PX;\n }\n\n lowp float dist = texture2D(u_texture, v_tex).a;\n lowp float fade_alpha = texture2D(u_fadetexture, v_fade_tex).a;\n highp float gamma_scaled = gamma * v_gamma_scale;\n highp float alpha = smoothstep(buff - gamma_scaled, buff + gamma_scaled, dist) * fade_alpha;\n\n gl_FragColor = color * (alpha * opacity);\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"const float PI = 3.141592653589793;\n\nattribute vec4 a_pos_offset;\nattribute vec2 a_texture_pos;\nattribute vec4 a_data;\n\n#pragma mapbox: define lowp vec4 fill_color\n#pragma mapbox: define lowp 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\n\n// matrix is for the vertex position.\nuniform mat4 u_matrix;\n\nuniform mediump float u_zoom;\nuniform bool u_rotate_with_map;\nuniform bool u_pitch_with_map;\nuniform mediump float u_pitch;\nuniform mediump float u_bearing;\nuniform mediump float u_aspect_ratio;\nuniform vec2 u_extrude_scale;\n\nuniform vec2 u_texsize;\n\nvarying vec2 v_tex;\nvarying vec2 v_fade_tex;\nvarying float v_gamma_scale;\n\nvoid main() {\n #pragma mapbox: initialize lowp vec4 fill_color\n #pragma mapbox: initialize lowp 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\n\n vec2 a_pos = a_pos_offset.xy;\n vec2 a_offset = a_pos_offset.zw;\n\n vec2 a_tex = a_texture_pos.xy;\n mediump float a_labelminzoom = a_data[0];\n mediump vec2 a_zoom = a_data.pq;\n mediump float a_minzoom = a_zoom[0];\n mediump float a_maxzoom = a_zoom[1];\n\n // u_zoom is the current zoom level adjusted for the change in font size\n mediump float z = 2.0 - step(a_minzoom, u_zoom) - (1.0 - step(a_maxzoom, u_zoom));\n\n // pitch-alignment: map\n // rotation-alignment: map | viewport\n if (u_pitch_with_map) {\n lowp float angle = u_rotate_with_map ? (a_data[1] / 256.0 * 2.0 * PI) : u_bearing;\n lowp float asin = sin(angle);\n lowp float acos = cos(angle);\n mat2 RotationMatrix = mat2(acos, asin, -1.0 * asin, acos);\n vec2 offset = RotationMatrix * a_offset;\n vec2 extrude = u_extrude_scale * (offset / 64.0);\n gl_Position = u_matrix * vec4(a_pos + extrude, 0, 1);\n gl_Position.z += z * gl_Position.w;\n // pitch-alignment: viewport\n // rotation-alignment: map\n } else if (u_rotate_with_map) {\n // foreshortening factor to apply on pitched maps\n // as a label goes from horizontal <=> vertical in angle\n // it goes from 0% foreshortening to up to around 70% foreshortening\n lowp float pitchfactor = 1.0 - cos(u_pitch * sin(u_pitch * 0.75));\n\n lowp float lineangle = a_data[1] / 256.0 * 2.0 * PI;\n\n // use the lineangle to position points a,b along the line\n // project the points and calculate the label angle in projected space\n // this calculation allows labels to be rendered unskewed on pitched maps\n vec4 a = u_matrix * vec4(a_pos, 0, 1);\n vec4 b = u_matrix * vec4(a_pos + vec2(cos(lineangle),sin(lineangle)), 0, 1);\n lowp float angle = atan((b[1]/b[3] - a[1]/a[3])/u_aspect_ratio, b[0]/b[3] - a[0]/a[3]);\n lowp float asin = sin(angle);\n lowp float acos = cos(angle);\n mat2 RotationMatrix = mat2(acos, -1.0 * asin, asin, acos);\n\n vec2 offset = RotationMatrix * (vec2((1.0-pitchfactor)+(pitchfactor*cos(angle*2.0)), 1.0) * a_offset);\n vec2 extrude = u_extrude_scale * (offset / 64.0);\n gl_Position = u_matrix * vec4(a_pos, 0, 1) + vec4(extrude, 0, 0);\n gl_Position.z += z * gl_Position.w;\n // pitch-alignment: viewport\n // rotation-alignment: viewport\n } else {\n vec2 extrude = u_extrude_scale * (a_offset / 64.0);\n gl_Position = u_matrix * vec4(a_pos, 0, 1) + vec4(extrude, 0, 0);\n }\n\n v_gamma_scale = gl_Position.w;\n\n v_tex = a_tex / u_texsize;\n v_fade_tex = vec2(a_labelminzoom / 255.0, 0.0);\n}\n"}}; -},{"path":23}],80:[function(require,module,exports){ -"use strict";var VertexArrayObject=function(){this.boundProgram=null,this.boundVertexBuffer=null,this.boundVertexBuffer2=null,this.boundElementBuffer=null,this.boundVertexOffset=null,this.vao=null};VertexArrayObject.prototype.bind=function(e,t,r,i,n,o){void 0===e.extVertexArrayObject&&(e.extVertexArrayObject=e.getExtension("OES_vertex_array_object"));var s=!this.vao||this.boundProgram!==t||this.boundVertexBuffer!==r||this.boundVertexBuffer2!==n||this.boundElementBuffer!==i||this.boundVertexOffset!==o;!e.extVertexArrayObject||s?(this.freshBind(e,t,r,i,n,o),this.gl=e):e.extVertexArrayObject.bindVertexArrayOES(this.vao)},VertexArrayObject.prototype.freshBind=function(e,t,r,i,n,o){var s,u=t.numAttributes;if(e.extVertexArrayObject)this.vao&&this.destroy(),this.vao=e.extVertexArrayObject.createVertexArrayOES(),e.extVertexArrayObject.bindVertexArrayOES(this.vao),s=0,this.boundProgram=t,this.boundVertexBuffer=r,this.boundVertexBuffer2=n,this.boundElementBuffer=i,this.boundVertexOffset=o;else{s=e.currentNumAttributes||0;for(var b=u;bthis.maxzoom?Math.pow(2,t.coord.z-this.maxzoom):1,r={type:this.type,uid:t.uid,coord:t.coord,zoom:t.coord.z,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,overscaling:i,angle:this.map.transform.angle,pitch:this.map.transform.pitch,showCollisionBoxes:this.map.showCollisionBoxes};t.workerID=this.dispatcher.send("loadTile",r,function(i,r){if(t.unloadVectorData(),!t.aborted)return i?e(i):(t.loadVectorData(r,o.map.painter),t.redoWhenDone&&(t.redoWhenDone=!1,t.redoPlacement(o)),e(null))},this.workerID)},e.prototype.abortTile=function(t){t.aborted=!0},e.prototype.unloadTile=function(t){t.unloadVectorData(),this.dispatcher.send("removeTile",{uid:t.uid,type:this.type,source:this.id},function(){},t.workerID)},e.prototype.onRemove=function(){this.dispatcher.broadcast("removeSource",{type:this.type,source:this.id},function(){})},e.prototype.serialize=function(){return{type:this.type,data:this._data}},e}(Evented);module.exports=GeoJSONSource; -},{"../data/extent":54,"../util/evented":200,"../util/util":212,"../util/window":194}],83:[function(require,module,exports){ -"use strict";var ajax=require("../util/ajax"),rewind=require("geojson-rewind"),GeoJSONWrapper=require("./geojson_wrapper"),vtpbf=require("vt-pbf"),supercluster=require("supercluster"),geojsonvt=require("geojson-vt"),VectorTileWorkerSource=require("./vector_tile_worker_source"),GeoJSONWorkerSource=function(e){function r(r,t,o){e.call(this,r,t),o&&(this.loadGeoJSON=o),this._geoJSONIndexes={}}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.loadVectorData=function(e,r){var t=e.source,o=e.coord;if(!this._geoJSONIndexes[t])return r(null,null);var n=this._geoJSONIndexes[t].getTile(Math.min(o.z,e.maxZoom),o.x,o.y);if(!n)return r(null,null);var u=new GeoJSONWrapper(n.features);u.name="_geojsonTileLayer";var a=vtpbf({layers:{_geojsonTileLayer:u}});0===a.byteOffset&&a.byteLength===a.buffer.byteLength||(a=new Uint8Array(a)),u.rawData=a.buffer,r(null,u)},r.prototype.loadData=function(e,r){var t=function(t,o){var n=this;return t?r(t):"object"!=typeof o?r(new Error("Input data is not a valid GeoJSON object.")):(rewind(o,!0),void this._indexData(o,e,function(t,o){return t?r(t):(n._geoJSONIndexes[e.source]=o,void r(null))}))}.bind(this);this.loadGeoJSON(e,t)},r.prototype.loadGeoJSON=function(e,r){if(e.url)ajax.getJSON(e.url,r);else{if("string"!=typeof e.data)return r(new Error("Input data is not a valid GeoJSON object."));try{return r(null,JSON.parse(e.data))}catch(e){return r(new Error("Input data is not a valid GeoJSON object."))}}},r.prototype.removeSource=function(e){this._geoJSONIndexes[e.source]&&delete this._geoJSONIndexes[e.source]},r.prototype._indexData=function(e,r,t){try{r.cluster?t(null,supercluster(r.superclusterOptions).load(e.features)):t(null,geojsonvt(e,r.geojsonVtOptions))}catch(e){return t(e)}},r}(VectorTileWorkerSource);module.exports=GeoJSONWorkerSource; -},{"../util/ajax":191,"./geojson_wrapper":84,"./vector_tile_worker_source":96,"geojson-rewind":7,"geojson-vt":11,"supercluster":29,"vt-pbf":38}],84:[function(require,module,exports){ -"use strict";var Point=require("point-geometry"),VectorTileFeature=require("vector-tile").VectorTileFeature,EXTENT=require("../data/extent"),FeatureWrapper=function(e){var t=this;if(this.type=e.type,1===e.type){this.rawGeometry=[];for(var r=0;rt)){var n=Math.pow(2,Math.min(a.coord.z,i._source.maxzoom)-Math.min(e.z,i._source.maxzoom));if(Math.floor(a.coord.x/n)===e.x&&Math.floor(a.coord.y/n)===e.y)for(o[s]=!0,r=!0;a&&a.coord.z-1>e.z;){var d=a.coord.parent(i._source.maxzoom).id;a=i._tiles[d],a&&a.hasData()&&(delete o[s],o[d]=!0)}}}return r},t.prototype.findLoadedParent=function(e,t,o){for(var i=this,r=e.z-1;r>=t;r--){e=e.parent(i._source.maxzoom);var s=i._tiles[e.id];if(s&&s.hasData())return o[e.id]=!0,s;if(i._cache.has(e.id))return o[e.id]=!0,i._cache.getWithoutRemoving(e.id)}},t.prototype.updateCacheSize=function(e){var t=Math.ceil(e.width/e.tileSize)+1,o=Math.ceil(e.height/e.tileSize)+1,i=t*o,r=5;this._cache.setMaxSize(Math.floor(i*r))},t.prototype.update=function(e){var o=this;if(this.transform=e,this._sourceLoaded){var i,r,s,a;this.updateCacheSize(e);var n=(this._source.roundZoom?Math.round:Math.floor)(this.getZoom(e)),d=Math.max(n-t.maxOverzooming,this._source.minzoom),c=Math.max(n+t.maxUnderzooming,this._source.minzoom),h={};this._coveredTiles={};var u;for(u=this.used?this._source.coord?[this._source.coord]:e.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}):[],i=0;i=Date.now())&&(o.findLoadedChildren(r,c,h)&&(h[_]=!0),a=o.findLoadedParent(r,d,l),a&&o.addTile(a.coord))}var f;for(f in l)h[f]||(o._coveredTiles[f]=!0);for(f in l)h[f]=!0;var T=util.keysDifference(this._tiles,h);for(i=0;ithis._source.maxzoom?Math.pow(2,r-this._source.maxzoom):1;t=new Tile(o,this._source.tileSize*s,this._source.maxzoom),this.loadTile(t,this._tileLoaded.bind(this,t,e.id,t.state))}return t.uses++,this._tiles[e.id]=t,i||this._source.fire("dataloading",{tile:t,coord:t.coord,dataType:"source"}),t},t.prototype._setTileReloadTimer=function(e,t){var o=this,i=t.getExpiryTimeout();i&&(this._timers[e]=setTimeout(function(){o.reloadTile(e,"expired"),o._timers[e]=void 0},i))},t.prototype._setCacheInvalidationTimer=function(e,t){var o=this,i=t.getExpiryTimeout();i&&(this._cacheTimers[e]=setTimeout(function(){o._cache.remove(e),o._cacheTimers[e]=void 0},i))},t.prototype.removeTile=function(e){var t=this._tiles[e];if(t&&(t.uses--,delete this._tiles[e],this._timers[e]&&(clearTimeout(this._timers[e]),this._timers[e]=void 0),!(t.uses>0)))if(t.hasData()){var o=t.coord.wrapped().id;this._cache.add(o,t),this._setCacheInvalidationTimer(o,t)}else t.aborted=!0,this.abortTile(t),this.unloadTile(t)},t.prototype.clearTiles=function(){var e=this;for(var t in e._tiles)e.removeTile(t);this._cache.reset()},t.prototype.tilesIn=function(e){for(var t=this,o={},i=this.getIds(),r=1/0,s=1/0,a=-(1/0),n=-(1/0),d=e[0].zoom,c=0;c=0&&p[1].y>=0){for(var _=[],f=0;fo)r=!1;else if(t)if(this.expirationTimei.row){var o=t;t=i,i=o}return{x0:t.column,y0:t.row,x1:i.column,y1:i.row,dx:i.column-t.column,dy:i.row-t.row}}function scanSpans(t,i,o,r,e){var n=Math.max(o,Math.floor(i.y0)),h=Math.min(r,Math.ceil(i.y1));if(t.x0===i.x0&&t.y0===i.y0?t.x0+i.dy/t.dy*t.dx0,l=i.dx<0,u=n;ua.dy&&(h=s,s=a,a=h),s.dy>d.dy&&(h=s,s=d,d=h),a.dy>d.dy&&(h=a,a=d,d=h),s.dy&&scanSpans(d,s,r,e,n),a.dy&&scanSpans(d,a,r,e,n)}function getQuadkey(t,i,o){for(var r,e="",n=t;n>0;n--)r=1<t?new TileCoord(this.z-1,this.x,this.y,this.w):new TileCoord(this.z-1,Math.floor(this.x/2),Math.floor(this.y/2),this.w)},TileCoord.prototype.wrapped=function(){return new TileCoord(this.z,this.x,this.y,0)},TileCoord.prototype.children=function(t){if(this.z>=t)return[new TileCoord(this.z+1,this.x,this.y,this.w)];var i=this.z+1,o=2*this.x,r=2*this.y;return[new TileCoord(i,o,r,this.w),new TileCoord(i,o+1,r,this.w),new TileCoord(i,o,r+1,this.w),new TileCoord(i,o+1,r+1,this.w)]},TileCoord.cover=function(t,i,o,r){function e(t,i,e){var s,a,d,y;if(e>=0&&e<=n)for(s=t;sthis.maxzoom?Math.pow(2,e.coord.z-this.maxzoom):1,r={url:normalizeURL(e.coord.url(this.tiles,this.maxzoom,this.scheme),this.url),uid:e.uid,coord:e.coord,zoom:e.coord.z,tileSize:this.tileSize*o,type:this.type,source:this.id,overscaling:o,angle:this.map.transform.angle,pitch:this.map.transform.pitch,showCollisionBoxes:this.map.showCollisionBoxes};e.workerID&&"expired"!==e.state?"loading"===e.state?e.reloadCallback=t:this.dispatcher.send("reloadTile",r,i.bind(this),e.workerID):e.workerID=this.dispatcher.send("loadTile",r,i.bind(this))},t.prototype.abortTile=function(e){this.dispatcher.send("abortTile",{uid:e.uid,type:this.type,source:this.id},null,e.workerID)},t.prototype.unloadTile=function(e){e.unloadVectorData(),this.dispatcher.send("removeTile",{uid:e.uid,type:this.type,source:this.id},null,e.workerID)},t}(Evented);module.exports=VectorTileSource; -},{"../util/evented":200,"../util/mapbox":208,"../util/util":212,"./load_tilejson":86}],96:[function(require,module,exports){ -"use strict";var ajax=require("../util/ajax"),vt=require("vector-tile"),Protobuf=require("pbf"),WorkerTile=require("./worker_tile"),util=require("../util/util"),VectorTileWorkerSource=function(e,r,t){this.actor=e,this.layerIndex=r,t&&(this.loadVectorData=t),this.loading={},this.loaded={}};VectorTileWorkerSource.prototype.loadTile=function(e,r){function t(e,t){return delete this.loading[o][i],e?r(e):t?(a.vectorTile=t,a.parse(t,this.layerIndex,this.actor,function(e,o,i){if(e)return r(e);var a={};t.expires&&(a.expires=t.expires),t.cacheControl&&(a.cacheControl=t.cacheControl),r(null,util.extend({rawTileData:t.rawData},o,a),i)}),this.loaded[o]=this.loaded[o]||{},void(this.loaded[o][i]=a)):r(null,null)}var o=e.source,i=e.uid;this.loading[o]||(this.loading[o]={});var a=this.loading[o][i]=new WorkerTile(e);a.abort=this.loadVectorData(e,t.bind(this))},VectorTileWorkerSource.prototype.reloadTile=function(e,r){function t(e,t){if(this.reloadCallback){var o=this.reloadCallback;delete this.reloadCallback,this.parse(this.vectorTile,a.layerIndex,a.actor,o)}r(e,t)}var o=this.loaded[e.source],i=e.uid,a=this;if(o&&o[i]){var l=o[i];"parsing"===l.status?l.reloadCallback=r:"done"===l.status&&l.parse(l.vectorTile,this.layerIndex,this.actor,t.bind(l))}},VectorTileWorkerSource.prototype.abortTile=function(e){var r=this.loading[e.source],t=e.uid;r&&r[t]&&r[t].abort&&(r[t].abort(),delete r[t])},VectorTileWorkerSource.prototype.removeTile=function(e){var r=this.loaded[e.source],t=e.uid;r&&r[t]&&delete r[t]},VectorTileWorkerSource.prototype.loadVectorData=function(e,r){function t(e,t){if(e)return r(e);var o=new vt.VectorTile(new Protobuf(t.data));o.rawData=t.data,o.cacheControl=t.cacheControl,o.expires=t.expires,r(e,o)}var o=ajax.getArrayBuffer(e.url,t.bind(this));return function(){o.abort()}},VectorTileWorkerSource.prototype.redoPlacement=function(e,r){var t=this.loaded[e.source],o=this.loading[e.source],i=e.uid;if(t&&t[i]){var a=t[i],l=a.redoPlacement(e.angle,e.pitch,e.showCollisionBoxes);l.result&&r(null,l.result,l.transferables)}else o&&o[i]&&(o[i].angle=e.angle)},module.exports=VectorTileWorkerSource; -},{"../util/ajax":191,"../util/util":212,"./worker_tile":99,"pbf":25,"vector-tile":34}],97:[function(require,module,exports){ -"use strict";var ajax=require("../util/ajax"),ImageSource=require("./image_source"),VideoSource=function(t){function e(e,o,i,r){t.call(this,e,o,i,r),this.roundZoom=!0,this.type="video",this.options=o}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.load=function(){var t=this,e=this.options;this.urls=e.urls,ajax.getVideo(e.urls,function(e,o){if(e)return t.fire("error",{error:e});t.video=o,t.video.loop=!0;var i;t.video.addEventListener("playing",function(){i=t.map.style.animationLoop.set(1/0),t.map._rerender()}),t.video.addEventListener("pause",function(){t.map.style.animationLoop.cancel(i)}),t.map&&t.video.play(),t._finishLoading()})},e.prototype.getVideo=function(){return this.video},e.prototype.onAdd=function(t){this.map||(this.load(),this.map=t,this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},e.prototype.prepare=function(){!this.tile||this.video.readyState<2||this._prepareImage(this.map.painter.gl,this.video)},e.prototype.serialize=function(){return{type:"video",urls:this.urls,coordinates:this.coordinates}},e}(ImageSource);module.exports=VideoSource; -},{"../util/ajax":191,"./image_source":85}],98:[function(require,module,exports){ -"use strict";var Actor=require("../util/actor"),StyleLayerIndex=require("../style/style_layer_index"),VectorTileWorkerSource=require("./vector_tile_worker_source"),GeoJSONWorkerSource=require("./geojson_worker_source"),globalRTLTextPlugin=require("./rtl_text_plugin"),Worker=function(e){var r=this;this.self=e,this.actor=new Actor(e,this),this.layerIndexes={},this.workerSourceTypes={vector:VectorTileWorkerSource,geojson:GeoJSONWorkerSource},this.workerSources={},this.self.registerWorkerSource=function(e,o){if(r.workerSourceTypes[e])throw new Error('Worker source with name "'+e+'" already registered.');r.workerSourceTypes[e]=o},this.self.registerRTLTextPlugin=function(e){if(globalRTLTextPlugin.applyArabicShaping||globalRTLTextPlugin.processBidirectionalText)throw new Error("RTL text plugin already registered.");globalRTLTextPlugin.applyArabicShaping=e.applyArabicShaping,globalRTLTextPlugin.processBidirectionalText=e.processBidirectionalText}};Worker.prototype.setLayers=function(e,r){this.getLayerIndex(e).replace(r)},Worker.prototype.updateLayers=function(e,r){this.getLayerIndex(e).update(r.layers,r.removedIds,r.symbolOrder)},Worker.prototype.loadTile=function(e,r,o){this.getWorkerSource(e,r.type).loadTile(r,o)},Worker.prototype.reloadTile=function(e,r,o){this.getWorkerSource(e,r.type).reloadTile(r,o)},Worker.prototype.abortTile=function(e,r){this.getWorkerSource(e,r.type).abortTile(r)},Worker.prototype.removeTile=function(e,r){this.getWorkerSource(e,r.type).removeTile(r)},Worker.prototype.removeSource=function(e,r){var o=this.getWorkerSource(e,r.type);void 0!==o.removeSource&&o.removeSource(r)},Worker.prototype.redoPlacement=function(e,r,o){this.getWorkerSource(e,r.type).redoPlacement(r,o)},Worker.prototype.loadWorkerSource=function(e,r,o){try{this.self.importScripts(r.url),o()}catch(e){o(e)}},Worker.prototype.loadRTLTextPlugin=function(e,r,o){try{globalRTLTextPlugin.applyArabicShaping||globalRTLTextPlugin.processBidirectionalText||this.self.importScripts(r)}catch(e){o(e)}},Worker.prototype.getLayerIndex=function(e){var r=this.layerIndexes[e];return r||(r=this.layerIndexes[e]=new StyleLayerIndex),r},Worker.prototype.getWorkerSource=function(e,r){var o=this;if(this.workerSources[e]||(this.workerSources[e]={}),!this.workerSources[e][r]){var t={send:function(r,t,i,n){o.actor.send(r,t,i,n,e)}};this.workerSources[e][r]=new this.workerSourceTypes[r](t,this.getLayerIndex(e))}return this.workerSources[e][r]},module.exports=function(e){return new Worker(e)}; -},{"../style/style_layer_index":154,"../util/actor":190,"./geojson_worker_source":83,"./rtl_text_plugin":90,"./vector_tile_worker_source":96}],99:[function(require,module,exports){ -"use strict";function recalculateLayers(e,i){for(var r=0,o=e.layers;r=B.maxzoom||B.layout&&"none"===B.layout.visibility)){for(var b=0,k=x;b=0;w--){var A=n[i.symbolOrder[w]];A&&t.symbolBuckets.push(A)}if(0===this.symbolBuckets.length)return T(new CollisionTile(this.angle,this.pitch,this.collisionBoxArray));var D=0,I=Object.keys(c.iconDependencies),O=util.mapObject(c.glyphDependencies,function(e){return Object.keys(e).map(Number)}),L=function(e){if(e)return o(e);if(D++,2===D){for(var i=new CollisionTile(t.angle,t.pitch,t.collisionBoxArray),r=0,s=t.symbolBuckets;r"===i||"<="===i||">="===i?compileComparisonOp(e[1],e[2],i,!0):"any"===i?compileLogicalOp(e.slice(1),"||"):"all"===i?compileLogicalOp(e.slice(1),"&&"):"none"===i?compileNegation(compileLogicalOp(e.slice(1),"||")):"in"===i?compileInOp(e[1],e.slice(2)):"!in"===i?compileNegation(compileInOp(e[1],e.slice(2))):"has"===i?compileHasOp(e[1]):"!has"===i?compileNegation(compileHasOp(e[1])):"true";return"("+n+")"}function compilePropertyReference(e){return"$type"===e?"f.type":"$id"===e?"f.id":"p["+JSON.stringify(e)+"]"}function compileComparisonOp(e,i,n,r){var o=compilePropertyReference(e),t="$type"===e?types.indexOf(i):JSON.stringify(i);return(r?"typeof "+o+"=== typeof "+t+"&&":"")+o+n+t}function compileLogicalOp(e,i){return e.map(compile).join(i)}function compileInOp(e,i){"$type"===e&&(i=i.map(function(e){return types.indexOf(e)}));var n=JSON.stringify(i.sort(compare)),r=compilePropertyReference(e);return i.length<=200?n+".indexOf("+r+") !== -1":"function(v, a, i, j) {while (i <= j) { var m = (i + j) >> 1; if (a[m] === v) return true; if (a[m] > v) j = m - 1; else i = m + 1;}return false; }("+r+", "+n+",0,"+(i.length-1)+")"}function compileHasOp(e){return"$id"===e?'"id" in f':JSON.stringify(e)+" in p"}function compileNegation(e){return"!("+e+")"}function compare(e,i){return ei?1:0}module.exports=createFilter;var types=["Unknown","Point","LineString","Polygon"]; -},{}],104:[function(require,module,exports){ -"use strict";function xyz2lab(r){return r>t3?Math.pow(r,1/3):r/t2+t0}function lab2xyz(r){return r>t1?r*r*r:t2*(r-t0)}function xyz2rgb(r){return 255*(r<=.0031308?12.92*r:1.055*Math.pow(r,1/2.4)-.055)}function rgb2xyz(r){return r/=255,r<=.04045?r/12.92:Math.pow((r+.055)/1.055,2.4)}function rgbToLab(r){var t=rgb2xyz(r[0]),a=rgb2xyz(r[1]),n=rgb2xyz(r[2]),b=xyz2lab((.4124564*t+.3575761*a+.1804375*n)/Xn),o=xyz2lab((.2126729*t+.7151522*a+.072175*n)/Yn),g=xyz2lab((.0193339*t+.119192*a+.9503041*n)/Zn);return[116*o-16,500*(b-o),200*(o-g),r[3]]}function labToRgb(r){var t=(r[0]+16)/116,a=isNaN(r[1])?t:t+r[1]/500,n=isNaN(r[2])?t:t-r[2]/200;return t=Yn*lab2xyz(t),a=Xn*lab2xyz(a),n=Zn*lab2xyz(n),[xyz2rgb(3.2404542*a-1.5371385*t-.4985314*n),xyz2rgb(-.969266*a+1.8760108*t+.041556*n),xyz2rgb(.0556434*a-.2040259*t+1.0572252*n),r[3]]}function rgbToHcl(r){var t=rgbToLab(r),a=t[0],n=t[1],b=t[2],o=Math.atan2(b,n)*rad2deg;return[o<0?o+360:o,Math.sqrt(n*n+b*b),a,r[3]]}function hclToRgb(r){var t=r[0]*deg2rad,a=r[1],n=r[2];return labToRgb([n,Math.cos(t)*a,Math.sin(t)*a,r[3]])}var Xn=.95047,Yn=1,Zn=1.08883,t0=4/29,t1=6/29,t2=3*t1*t1,t3=t1*t1*t1,deg2rad=Math.PI/180,rad2deg=180/Math.PI;module.exports={lab:{forward:rgbToLab,reverse:labToRgb},hcl:{forward:rgbToHcl,reverse:hclToRgb}}; -},{}],105:[function(require,module,exports){ -"use strict";function identityFunction(t){return t}function createFunction(t,e){var o,n="color"===e.type;if(isFunctionDefinition(t)){var r=t.stops&&"object"==typeof t.stops[0][0],a=r||void 0!==t.property,i=r||!a,s=t.type||("interpolated"===e.function?"exponential":"interval");n&&(t=extend({},t),t.stops&&(t.stops=t.stops.map(function(t){return[t[0],parseColor(t[1])]})),t.default?t.default=parseColor(t.default):t.default=parseColor(e.default));var u,p,l;if("exponential"===s)u=evaluateExponentialFunction;else if("interval"===s)u=evaluateIntervalFunction;else if("categorical"===s){u=evaluateCategoricalFunction,p=Object.create(null);for(var c=0,f=t.stops;c=t.stops[n-1][0])return t.stops[n-1][1];var r=binarySearchForIndex(t.stops,o);return t.stops[r][1]}function evaluateExponentialFunction(t,e,o){var n=void 0!==t.base?t.base:1;if("number"!==getType(o))return coalesce(t.default,e.default);var r=t.stops.length;if(1===r)return t.stops[0][1];if(o<=t.stops[0][0])return t.stops[0][1];if(o>=t.stops[r-1][0])return t.stops[r-1][1];var a=binarySearchForIndex(t.stops,o);return interpolate(o,n,t.stops[a][0],t.stops[a+1][0],t.stops[a][1],t.stops[a+1][1])}function evaluateIdentityFunction(t,e,o){return"color"===e.type?o=parseColor(o):getType(o)!==e.type&&(o=void 0),coalesce(o,t.default,e.default)}function binarySearchForIndex(t,e){for(var o,n,r=t.length,a=0,i=r-1,s=0;a<=i;){if(s=Math.floor((a+i)/2),o=t[s][0],n=t[s+1][0],e>=o&&ee&&(i=s-1)}return Math.max(s-1,0)}function interpolate(t,e,o,n,r,a){return"function"==typeof r?function(){var i=r.apply(void 0,arguments),s=a.apply(void 0,arguments);if(void 0!==i&&void 0!==s)return interpolate(t,e,o,n,i,s)}:r.length?interpolateArray(t,e,o,n,r,a):interpolateNumber(t,e,o,n,r,a)}function interpolateNumber(t,e,o,n,r,a){var i,s=n-o,u=t-o;return i=1===e?u/s:(Math.pow(e,u)-1)/(Math.pow(e,s)-1),r*(1-i)+a*i}function interpolateArray(t,e,o,n,r,a){for(var i=[],s=0;s255?255:e}function clamp_css_float(e){return e<0?0:e>1?1:e}function parse_css_int(e){return clamp_css_byte("%"===e[e.length-1]?parseFloat(e)/100*255:parseInt(e))}function parse_css_float(e){return clamp_css_float("%"===e[e.length-1]?parseFloat(e)/100:parseFloat(e))}function css_hue_to_rgb(e,r,l){return l<0?l+=1:l>1&&(l-=1),6*l<1?e+(r-e)*l*6:2*l<1?r:3*l<2?e+(r-e)*(2/3-l)*6:e}function parseCSSColor(e){var r=e.replace(/ /g,"").toLowerCase();if(r in kCSSColorTable)return kCSSColorTable[r].slice();if("#"===r[0]){if(4===r.length){var l=parseInt(r.substr(1),16);return l>=0&&l<=4095?[(3840&l)>>4|(3840&l)>>8,240&l|(240&l)>>4,15&l|(15&l)<<4,1]:null}if(7===r.length){var l=parseInt(r.substr(1),16);return l>=0&&l<=16777215?[(16711680&l)>>16,(65280&l)>>8,255&l,1]:null}return null}var a=r.indexOf("("),t=r.indexOf(")");if(a!==-1&&t+1===r.length){var n=r.substr(0,a),s=r.substr(a+1,t-(a+1)).split(","),o=1;switch(n){case"rgba":if(4!==s.length)return null;o=parse_css_float(s.pop());case"rgb":return 3!==s.length?null:[parse_css_int(s[0]),parse_css_int(s[1]),parse_css_int(s[2]),o];case"hsla":if(4!==s.length)return null;o=parse_css_float(s.pop());case"hsl":if(3!==s.length)return null;var i=(parseFloat(s[0])%360+360)%360/360,u=parse_css_float(s[1]),g=parse_css_float(s[2]),d=g<=.5?g*(u+1):g+u-g*u,c=2*g-d;return[clamp_css_byte(255*css_hue_to_rgb(c,d,i+1/3)),clamp_css_byte(255*css_hue_to_rgb(c,d,i)),clamp_css_byte(255*css_hue_to_rgb(c,d,i-1/3)),o];default:return null}}return null}var kCSSColorTable={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],rebeccapurple:[102,51,153,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};try{exports.parseCSSColor=parseCSSColor}catch(e){} -},{}],108:[function(require,module,exports){ -function sss(r){var e,t,s,n,u,a;switch(typeof r){case"object":if(null===r)return null;if(isArray(r)){for(s="[",t=r.length-1,e=0;e-1&&(s+=sss(r[e])),s+"]"}for(n=objKeys(r).sort(),t=n.length,s="{",u=n[e=0],a=t>0&&void 0!==r[u];e15?"\\u00"+e.toString(16):"\\u000"+e.toString(16)}};module.exports=function(r){if(void 0!==r)return""+sss(r)},module.exports.stringSearch=strReg,module.exports.stringReplace=strReplace; -},{}],109:[function(require,module,exports){ -function isObjectLike(r){return!!r&&"object"==typeof r}function arraySome(r,e){for(var a=-1,t=r.length;++as))return!1;for(;++c-1&&t%1==0&&t<=MAX_SAFE_INTEGER}function isObject(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function isObjectLike(t){return!!t&&"object"==typeof t}var MAX_SAFE_INTEGER=9007199254740991,argsTag="[object Arguments]",funcTag="[object Function]",genTag="[object GeneratorFunction]",objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,objectToString=objectProto.toString,propertyIsEnumerable=objectProto.propertyIsEnumerable;module.exports=isArguments; -},{}],113:[function(require,module,exports){ -function isObjectLike(t){return!!t&&"object"==typeof t}function getNative(t,r){var e=null==t?void 0:t[r];return isNative(e)?e:void 0}function isLength(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=MAX_SAFE_INTEGER}function isFunction(t){return isObject(t)&&objToString.call(t)==funcTag}function isObject(t){var r=typeof t;return!!t&&("object"==r||"function"==r)}function isNative(t){return null!=t&&(isFunction(t)?reIsNative.test(fnToString.call(t)):isObjectLike(t)&&reIsHostCtor.test(t))}var arrayTag="[object Array]",funcTag="[object Function]",reIsHostCtor=/^\[object .+?Constructor\]$/,objectProto=Object.prototype,fnToString=Function.prototype.toString,hasOwnProperty=objectProto.hasOwnProperty,objToString=objectProto.toString,reIsNative=RegExp("^"+fnToString.call(hasOwnProperty).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),nativeIsArray=getNative(Array,"isArray"),MAX_SAFE_INTEGER=9007199254740991,isArray=nativeIsArray||function(t){return isObjectLike(t)&&isLength(t.length)&&objToString.call(t)==arrayTag};module.exports=isArray; -},{}],114:[function(require,module,exports){ -function isEqual(a,l,i,e){i="function"==typeof i?bindCallback(i,e,3):void 0;var s=i?i(a,l):void 0;return void 0===s?baseIsEqual(a,l,i):!!s}var baseIsEqual=require("lodash._baseisequal"),bindCallback=require("lodash._bindcallback");module.exports=isEqual; -},{"lodash._baseisequal":109,"lodash._bindcallback":110}],115:[function(require,module,exports){ -function isLength(a){return"number"==typeof a&&a>-1&&a%1==0&&a<=MAX_SAFE_INTEGER}function isObjectLike(a){return!!a&&"object"==typeof a}function isTypedArray(a){return isObjectLike(a)&&isLength(a.length)&&!!typedArrayTags[objectToString.call(a)]}var MAX_SAFE_INTEGER=9007199254740991,argsTag="[object Arguments]",arrayTag="[object Array]",boolTag="[object Boolean]",dateTag="[object Date]",errorTag="[object Error]",funcTag="[object Function]",mapTag="[object Map]",numberTag="[object Number]",objectTag="[object Object]",regexpTag="[object RegExp]",setTag="[object Set]",stringTag="[object String]",weakMapTag="[object WeakMap]",arrayBufferTag="[object ArrayBuffer]",dataViewTag="[object DataView]",float32Tag="[object Float32Array]",float64Tag="[object Float64Array]",int8Tag="[object Int8Array]",int16Tag="[object Int16Array]",int32Tag="[object Int32Array]",uint8Tag="[object Uint8Array]",uint8ClampedTag="[object Uint8ClampedArray]",uint16Tag="[object Uint16Array]",uint32Tag="[object Uint32Array]",typedArrayTags={};typedArrayTags[float32Tag]=typedArrayTags[float64Tag]=typedArrayTags[int8Tag]=typedArrayTags[int16Tag]=typedArrayTags[int32Tag]=typedArrayTags[uint8Tag]=typedArrayTags[uint8ClampedTag]=typedArrayTags[uint16Tag]=typedArrayTags[uint32Tag]=!0,typedArrayTags[argsTag]=typedArrayTags[arrayTag]=typedArrayTags[arrayBufferTag]=typedArrayTags[boolTag]=typedArrayTags[dataViewTag]=typedArrayTags[dateTag]=typedArrayTags[errorTag]=typedArrayTags[funcTag]=typedArrayTags[mapTag]=typedArrayTags[numberTag]=typedArrayTags[objectTag]=typedArrayTags[regexpTag]=typedArrayTags[setTag]=typedArrayTags[stringTag]=typedArrayTags[weakMapTag]=!1;var objectProto=Object.prototype,objectToString=objectProto.toString;module.exports=isTypedArray; -},{}],116:[function(require,module,exports){ -function baseProperty(e){return function(t){return null==t?void 0:t[e]}}function isArrayLike(e){return null!=e&&isLength(getLength(e))}function isIndex(e,t){return e="number"==typeof e||reIsUint.test(e)?+e:-1,t=null==t?MAX_SAFE_INTEGER:t,e>-1&&e%1==0&&e-1&&e%1==0&&e<=MAX_SAFE_INTEGER}function shimKeys(e){for(var t=keysIn(e),r=t.length,n=r&&e.length,s=!!n&&isLength(n)&&(isArray(e)||isArguments(e)),o=-1,i=[];++o0;++n":{},">=":{},"<":{},"<=":{},"in":{},"!in":{},"all":{},"any":{},"none":{},"has":{},"!has":{}}},"geometry_type":{"type":"enum","values":{"Point":{},"LineString":{},"Polygon":{}}},"function":{"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":false}},"function_stop":{"type":"array","minimum":0,"maximum":22,"value":["number","color"],"length":2},"light":{"anchor":{"type":"enum","default":"viewport","values":{"map":{},"viewport":{}},"transition":false},"position":{"type":"array","default":[1.15,210,30],"length":3,"value":"number","transition":true,"function":"interpolated","zoom-function":true,"property-function":false},"color":{"type":"color","default":"#ffffff","function":"interpolated","zoom-function":true,"property-function":false,"transition":true},"intensity":{"type":"number","default":0.5,"minimum":0,"maximum":1,"function":"interpolated","zoom-function":true,"property-function":false,"transition":true}},"paint":["paint_fill","paint_line","paint_circle","paint_fill-extrusion","paint_symbol","paint_raster","paint_background"],"paint_fill":{"fill-antialias":{"type":"boolean","function":"piecewise-constant","zoom-function":true,"default":true},"fill-opacity":{"type":"number","function":"interpolated","zoom-function":true,"property-function":true,"default":1,"minimum":0,"maximum":1,"transition":true},"fill-color":{"type":"color","default":"#000000","function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"requires":[{"!":"fill-pattern"}]},"fill-outline-color":{"type":"color","function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"requires":[{"!":"fill-pattern"},{"fill-antialias":true}]},"fill-translate":{"type":"array","value":"number","length":2,"default":[0,0],"function":"interpolated","zoom-function":true,"transition":true,"units":"pixels"},"fill-translate-anchor":{"type":"enum","function":"piecewise-constant","zoom-function":true,"values":{"map":{},"viewport":{}},"default":"map","requires":["fill-translate"]},"fill-pattern":{"type":"string","function":"piecewise-constant","zoom-function":true,"transition":true}},"paint_fill-extrusion":{"fill-extrusion-opacity":{"type":"number","function":"interpolated","zoom-function":true,"property-function":false,"default":1,"minimum":0,"maximum":1,"transition":true},"fill-extrusion-color":{"type":"color","default":"#000000","function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"requires":[{"!":"fill-extrusion-pattern"}]},"fill-extrusion-translate":{"type":"array","value":"number","length":2,"default":[0,0],"function":"interpolated","zoom-function":true,"transition":true,"units":"pixels"},"fill-extrusion-translate-anchor":{"type":"enum","function":"piecewise-constant","zoom-function":true,"values":{"map":{},"viewport":{}},"default":"map","requires":["fill-extrusion-translate"]},"fill-extrusion-pattern":{"type":"string","function":"piecewise-constant","zoom-function":true,"transition":true},"fill-extrusion-height":{"type":"number","function":"interpolated","zoom-function":true,"property-function":true,"default":0,"minimum":0,"units":"meters","transition":true},"fill-extrusion-base":{"type":"number","function":"interpolated","zoom-function":true,"property-function":true,"default":0,"minimum":0,"units":"meters","transition":true,"requires":["fill-extrusion-height"]}},"paint_line":{"line-opacity":{"type":"number","function":"interpolated","zoom-function":true,"property-function":true,"default":1,"minimum":0,"maximum":1,"transition":true},"line-color":{"type":"color","default":"#000000","function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"requires":[{"!":"line-pattern"}]},"line-translate":{"type":"array","value":"number","length":2,"default":[0,0],"function":"interpolated","zoom-function":true,"transition":true,"units":"pixels"},"line-translate-anchor":{"type":"enum","function":"piecewise-constant","zoom-function":true,"values":{"map":{},"viewport":{}},"default":"map","requires":["line-translate"]},"line-width":{"type":"number","default":1,"minimum":0,"function":"interpolated","zoom-function":true,"transition":true,"units":"pixels"},"line-gap-width":{"type":"number","default":0,"minimum":0,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"units":"pixels"},"line-offset":{"type":"number","default":0,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"units":"pixels"},"line-blur":{"type":"number","default":0,"minimum":0,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"units":"pixels"},"line-dasharray":{"type":"array","value":"number","function":"piecewise-constant","zoom-function":true,"minimum":0,"transition":true,"units":"line widths","requires":[{"!":"line-pattern"}]},"line-pattern":{"type":"string","function":"piecewise-constant","zoom-function":true,"transition":true}},"paint_circle":{"circle-radius":{"type":"number","default":5,"minimum":0,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"units":"pixels"},"circle-color":{"type":"color","default":"#000000","function":"interpolated","zoom-function":true,"property-function":true,"transition":true},"circle-blur":{"type":"number","default":0,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true},"circle-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true},"circle-translate":{"type":"array","value":"number","length":2,"default":[0,0],"function":"interpolated","zoom-function":true,"transition":true,"units":"pixels"},"circle-translate-anchor":{"type":"enum","function":"piecewise-constant","zoom-function":true,"values":{"map":{},"viewport":{}},"default":"map","requires":["circle-translate"]},"circle-pitch-scale":{"type":"enum","function":"piecewise-constant","zoom-function":true,"values":{"map":{},"viewport":{}},"default":"map"},"circle-stroke-width":{"type":"number","default":0,"minimum":0,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"units":"pixels"},"circle-stroke-color":{"type":"color","default":"#000000","function":"interpolated","zoom-function":true,"property-function":true,"transition":true},"circle-stroke-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true}},"paint_symbol":{"icon-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"requires":["icon-image"]},"icon-color":{"type":"color","default":"#000000","function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"requires":["icon-image"]},"icon-halo-color":{"type":"color","default":"rgba(0, 0, 0, 0)","function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"requires":["icon-image"]},"icon-halo-width":{"type":"number","default":0,"minimum":0,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"units":"pixels","requires":["icon-image"]},"icon-halo-blur":{"type":"number","default":0,"minimum":0,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"units":"pixels","requires":["icon-image"]},"icon-translate":{"type":"array","value":"number","length":2,"default":[0,0],"function":"interpolated","zoom-function":true,"transition":true,"units":"pixels","requires":["icon-image"]},"icon-translate-anchor":{"type":"enum","function":"piecewise-constant","zoom-function":true,"values":{"map":{},"viewport":{}},"default":"map","requires":["icon-image","icon-translate"]},"text-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"requires":["text-field"]},"text-color":{"type":"color","default":"#000000","function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"requires":["text-field"]},"text-halo-color":{"type":"color","default":"rgba(0, 0, 0, 0)","function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"requires":["text-field"]},"text-halo-width":{"type":"number","default":0,"minimum":0,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"units":"pixels","requires":["text-field"]},"text-halo-blur":{"type":"number","default":0,"minimum":0,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"units":"pixels","requires":["text-field"]},"text-translate":{"type":"array","value":"number","length":2,"default":[0,0],"function":"interpolated","zoom-function":true,"transition":true,"units":"pixels","requires":["text-field"]},"text-translate-anchor":{"type":"enum","function":"piecewise-constant","zoom-function":true,"values":{"map":{},"viewport":{}},"default":"map","requires":["text-field","text-translate"]}},"paint_raster":{"raster-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"function":"interpolated","zoom-function":true,"transition":true},"raster-hue-rotate":{"type":"number","default":0,"period":360,"function":"interpolated","zoom-function":true,"transition":true,"units":"degrees"},"raster-brightness-min":{"type":"number","function":"interpolated","zoom-function":true,"default":0,"minimum":0,"maximum":1,"transition":true},"raster-brightness-max":{"type":"number","function":"interpolated","zoom-function":true,"default":1,"minimum":0,"maximum":1,"transition":true},"raster-saturation":{"type":"number","default":0,"minimum":-1,"maximum":1,"function":"interpolated","zoom-function":true,"transition":true},"raster-contrast":{"type":"number","default":0,"minimum":-1,"maximum":1,"function":"interpolated","zoom-function":true,"transition":true},"raster-fade-duration":{"type":"number","default":300,"minimum":0,"function":"interpolated","zoom-function":true,"transition":true,"units":"milliseconds"}},"paint_background":{"background-color":{"type":"color","default":"#000000","function":"interpolated","zoom-function":true,"transition":true,"requires":[{"!":"background-pattern"}]},"background-pattern":{"type":"string","function":"piecewise-constant","zoom-function":true,"transition":true},"background-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"function":"interpolated","zoom-function":true,"transition":true}},"transition":{"duration":{"type":"number","default":300,"minimum":0,"units":"milliseconds"},"delay":{"type":"number","default":0,"minimum":0,"units":"milliseconds"}}} -},{}],119:[function(require,module,exports){ -"use strict";module.exports=function(r){for(var t=arguments,e=1;e7)return[new ValidationError(u,a,"constants have been deprecated as of v8")];if(!(a in l.constants))return[new ValidationError(u,a,'constant "%s" not found',a)];e=extend({},e,{value:l.constants[a]})}return n.function&&"object"===getType(a)?r(e):n.type&&i[n.type]?i[n.type](e):t(extend({},e,{valueSpec:n.type?o[n.type]:n}))}; -},{"../error/validation_error":102,"../util/extend":119,"../util/get_type":120,"./validate_array":125,"./validate_boolean":126,"./validate_color":127,"./validate_constants":128,"./validate_enum":129,"./validate_filter":130,"./validate_function":131,"./validate_layer":133,"./validate_light":135,"./validate_number":136,"./validate_object":137,"./validate_source":140,"./validate_string":141}],125:[function(require,module,exports){ -"use strict";var getType=require("../util/get_type"),validate=require("./validate"),ValidationError=require("../error/validation_error");module.exports=function(e){var r=e.value,t=e.valueSpec,a=e.style,n=e.styleSpec,l=e.key,i=e.arrayElementValidator||validate;if("array"!==getType(r))return[new ValidationError(l,r,"array expected, %s found",getType(r))];if(t.length&&r.length!==t.length)return[new ValidationError(l,r,"array length %d expected, length %d found",t.length,r.length)];if(t["min-length"]&&r.length7)return t?[new ValidationError(e,t,"constants have been deprecated as of v8")]:[];var o=getType(t);if("object"!==o)return[new ValidationError(e,t,"object expected, %s found",o)];var n=[];for(var i in t)"@"!==i[0]&&n.push(new ValidationError(e+"."+i,t[i],'constants must start with "@"'));return n}; -},{"../error/validation_error":102,"../util/get_type":120}],129:[function(require,module,exports){ -"use strict";var ValidationError=require("../error/validation_error"),unbundle=require("../util/unbundle_jsonlint");module.exports=function(e){var r=e.key,n=e.value,u=e.valueSpec,o=[];return Array.isArray(u.values)?u.values.indexOf(unbundle(n))===-1&&o.push(new ValidationError(r,n,"expected one of [%s], %s found",u.values.join(", "),n)):Object.keys(u.values).indexOf(unbundle(n))===-1&&o.push(new ValidationError(r,n,"expected one of [%s], %s found",Object.keys(u.values).join(", "),n)),o}; -},{"../error/validation_error":102,"../util/unbundle_jsonlint":123}],130:[function(require,module,exports){ -"use strict";var ValidationError=require("../error/validation_error"),validateEnum=require("./validate_enum"),getType=require("../util/get_type"),unbundle=require("../util/unbundle_jsonlint");module.exports=function e(r){var t,a=r.value,n=r.key,l=r.styleSpec,s=[];if("array"!==getType(a))return[new ValidationError(n,a,"array expected, %s found",getType(a))];if(a.length<1)return[new ValidationError(n,a,"filter array must have at least 1 element")];switch(s=s.concat(validateEnum({key:n+"[0]",value:a[0],valueSpec:l.filter_operator,style:r.style,styleSpec:r.styleSpec})),unbundle(a[0])){case"<":case"<=":case">":case">=":a.length>=2&&"$type"===unbundle(a[1])&&s.push(new ValidationError(n,a,'"$type" cannot be use with operator "%s"',a[0]));case"==":case"!=":3!==a.length&&s.push(new ValidationError(n,a,'filter array for operator "%s" must have 3 elements',a[0]));case"in":case"!in":a.length>=2&&(t=getType(a[1]),"string"!==t&&s.push(new ValidationError(n+"[1]",a[1],"string expected, %s found",t)));for(var o=2;ounbundle(r[0].zoom))return[new ValidationError(o,r[0].zoom,"stop zoom values must appear in ascending order")];unbundle(r[0].zoom)!==l&&(l=unbundle(r[0].zoom),i=void 0,s={}),t=t.concat(validateObject({key:o+"[0]",value:r[0],valueSpec:{zoom:{}},style:e.style,styleSpec:e.styleSpec,objectElementValidators:{zoom:validateNumber,value:a}}))}else t=t.concat(a({key:o+"[0]",value:r[0],valueSpec:{},style:e.style,styleSpec:e.styleSpec}));return t.concat(validate({key:o+"[1]",value:r[1],valueSpec:u,style:e.style,styleSpec:e.styleSpec}))}function a(e){var t=getType(e.value),r=unbundle(e.value);if(n){if(t!==n)return[new ValidationError(e.key,e.value,"%s stop domain type must match previous stop domain type %s",t,n)]}else n=t;if("number"!==t&&"string"!==t&&"boolean"!==t)return[new ValidationError(e.key,e.value,"stop domain value must be a number, string, or boolean")];if("number"!==t&&"categorical"!==p){var a="number expected, %s found";return u["property-function"]&&void 0===p&&(a+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new ValidationError(e.key,e.value,a,t)]}return"categorical"!==p||"number"!==t||isFinite(r)&&Math.floor(r)===r?"number"===t&&void 0!==i&&r=8&&(d&&!e.valueSpec["property-function"]?v.push(new ValidationError(e.key,e.value,"property functions not supported")):y&&!e.valueSpec["zoom-function"]&&v.push(new ValidationError(e.key,e.value,"zoom functions not supported"))),"categorical"!==p&&!c||void 0!==e.value.property||v.push(new ValidationError(e.key,e.value,'"property" property is required')),v}; -},{"../error/validation_error":102,"../util/get_type":120,"../util/unbundle_jsonlint":123,"./validate":124,"./validate_array":125,"./validate_number":136,"./validate_object":137}],132:[function(require,module,exports){ -"use strict";var ValidationError=require("../error/validation_error"),validateString=require("./validate_string");module.exports=function(r){var e=r.value,t=r.key,a=validateString(r);return a.length?a:(e.indexOf("{fontstack}")===-1&&a.push(new ValidationError(t,e,'"glyphs" url must include a "{fontstack}" token')),e.indexOf("{range}")===-1&&a.push(new ValidationError(t,e,'"glyphs" url must include a "{range}" token')),a)}; -},{"../error/validation_error":102,"./validate_string":141}],133:[function(require,module,exports){ -"use strict";var ValidationError=require("../error/validation_error"),unbundle=require("../util/unbundle_jsonlint"),validateObject=require("./validate_object"),validateFilter=require("./validate_filter"),validatePaintProperty=require("./validate_paint_property"),validateLayoutProperty=require("./validate_layout_property"),extend=require("../util/extend");module.exports=function(e){var r=[],t=e.value,a=e.key,i=e.style,l=e.styleSpec;t.type||t.ref||r.push(new ValidationError(a,t,'either "type" or "ref" is required'));var u=unbundle(t.type),n=unbundle(t.ref);if(t.id)for(var o=unbundle(t.id),s=0;sm.maximum?[new ValidationError(r,i,"%s is greater than the maximum value %s",i,m.maximum)]:[]}; -},{"../error/validation_error":102,"../util/get_type":120}],137:[function(require,module,exports){ -"use strict";var ValidationError=require("../error/validation_error"),getType=require("../util/get_type"),validateSpec=require("./validate");module.exports=function(e){var r=e.key,t=e.value,i=e.valueSpec||{},a=e.objectElementValidators||{},o=e.style,l=e.styleSpec,n=[],u=getType(t);if("object"!==u)return[new ValidationError(r,t,"object expected, %s found",u)];for(var d in t){var p=d.split(".")[0],s=i[p]||i["*"],c=void 0;if(a[p])c=a[p];else if(i[p])c=validateSpec;else if(a["*"])c=a["*"];else{if(!i["*"]){n.push(new ValidationError(r,t[d],'unknown property "%s"',d));continue}c=validateSpec}n=n.concat(c({key:(r?r+".":r)+d,value:t[d],valueSpec:s,style:o,styleSpec:l,object:t,objectKey:d}))}for(var v in i)i[v].required&&void 0===i[v].default&&void 0===t[v]&&n.push(new ValidationError(r,t,'missing required property "%s"',v));return n}; -},{"../error/validation_error":102,"../util/get_type":120,"./validate":124}],138:[function(require,module,exports){ -"use strict";var validateProperty=require("./validate_property");module.exports=function(r){return validateProperty(r,"paint")}; -},{"./validate_property":139}],139:[function(require,module,exports){ -"use strict";var validate=require("./validate"),ValidationError=require("../error/validation_error"),getType=require("../util/get_type");module.exports=function(e,t){var r=e.key,i=e.style,a=e.styleSpec,n=e.value,o=e.objectKey,l=a[t+"_"+e.layerType];if(!l)return[];var y=o.match(/^(.*)-transition$/);if("paint"===t&&y&&l[y[1]]&&l[y[1]].transition)return validate({key:r,value:n,valueSpec:a.transition,style:i,styleSpec:a});var p=e.valueSpec||l[o];if(!p)return[new ValidationError(r,n,'unknown property "%s"',o)];var s;if("string"===getType(n)&&p["property-function"]&&!p.tokens&&(s=/^{([^}]+)}$/.exec(n)))return[new ValidationError(r,n,'"%s" does not support interpolation syntax\nUse an identity property function instead: `{ "type": "identity", "property": %s` }`.',o,JSON.stringify(s[1]))];var u=[];return"symbol"===e.layerType&&"text-field"===o&&i&&!i.glyphs&&u.push(new ValidationError(r,n,'use of "text-field" requires a style "glyphs" property')),u.concat(validate({key:e.key,value:n,valueSpec:p,style:i,styleSpec:a}))}; -},{"../error/validation_error":102,"../util/get_type":120,"./validate":124}],140:[function(require,module,exports){ -"use strict";var ValidationError=require("../error/validation_error"),unbundle=require("../util/unbundle_jsonlint"),validateObject=require("./validate_object"),validateEnum=require("./validate_enum");module.exports=function(e){var a=e.value,t=e.key,r=e.styleSpec,l=e.style;if(!a.type)return[new ValidationError(t,a,'"type" is required')];var u=unbundle(a.type),i=[];switch(u){case"vector":case"raster":if(i=i.concat(validateObject({key:t,value:a,valueSpec:r.source_tile,style:e.style,styleSpec:r})),"url"in a)for(var s in a)["type","url","tileSize"].indexOf(s)<0&&i.push(new ValidationError(t+"."+s,a[s],'a source with a "url" property may not include a "%s" property',s));return i;case"geojson":return validateObject({key:t,value:a,valueSpec:r.source_geojson,style:l,styleSpec:r});case"video":return validateObject({key:t,value:a,valueSpec:r.source_video,style:l,styleSpec:r});case"image":return validateObject({key:t,value:a,valueSpec:r.source_image,style:l,styleSpec:r});case"canvas":return validateObject({key:t,value:a,valueSpec:r.source_canvas,style:l,styleSpec:r});default:return validateEnum({key:t+".type",value:a.type,valueSpec:{values:["vector","raster","geojson","video","image","canvas"]},style:l,styleSpec:r})}}; -},{"../error/validation_error":102,"../util/unbundle_jsonlint":123,"./validate_enum":129,"./validate_object":137}],141:[function(require,module,exports){ -"use strict";var getType=require("../util/get_type"),ValidationError=require("../error/validation_error");module.exports=function(r){var e=r.value,t=r.key,i=getType(e);return"string"!==i?[new ValidationError(t,e,"string expected, %s found",i)]:[]}; -},{"../error/validation_error":102,"../util/get_type":120}],142:[function(require,module,exports){ -"use strict";function validateStyleMin(e,a){a=a||latestStyleSpec;var t=[];return t=t.concat(validate({key:"",value:e,valueSpec:a.$root,styleSpec:a,style:e,objectElementValidators:{glyphs:validateGlyphsURL,"*":function(){return[]}}})),a.$version>7&&e.constants&&(t=t.concat(validateConstants({key:"constants",value:e.constants,style:e,styleSpec:a}))),sortErrors(t)}function sortErrors(e){return[].concat(e).sort(function(e,a){return e.line-a.line})}function wrapCleanErrors(e){return function(){return sortErrors(e.apply(this,arguments))}}var validateConstants=require("./validate/validate_constants"),validate=require("./validate/validate"),latestStyleSpec=require("./reference/latest"),validateGlyphsURL=require("./validate/validate_glyphs_url");validateStyleMin.source=wrapCleanErrors(require("./validate/validate_source")),validateStyleMin.light=wrapCleanErrors(require("./validate/validate_light")),validateStyleMin.layer=wrapCleanErrors(require("./validate/validate_layer")),validateStyleMin.filter=wrapCleanErrors(require("./validate/validate_filter")),validateStyleMin.paintProperty=wrapCleanErrors(require("./validate/validate_paint_property")),validateStyleMin.layoutProperty=wrapCleanErrors(require("./validate/validate_layout_property")),module.exports=validateStyleMin; -},{"./reference/latest":117,"./validate/validate":124,"./validate/validate_constants":128,"./validate/validate_filter":130,"./validate/validate_glyphs_url":132,"./validate/validate_layer":133,"./validate/validate_layout_property":134,"./validate/validate_light":135,"./validate/validate_paint_property":138,"./validate/validate_source":140}],143:[function(require,module,exports){ -"use strict";var AnimationLoop=function(){this.n=0,this.times=[]};AnimationLoop.prototype.stopped=function(){return this.times=this.times.filter(function(t){return t.time>=(new Date).getTime()}),!this.times.length},AnimationLoop.prototype.set=function(t){return this.times.push({id:this.n,time:t+(new Date).getTime()}),this.n++},AnimationLoop.prototype.cancel=function(t){this.times=this.times.filter(function(i){return i.id!==t})},module.exports=AnimationLoop; -},{}],144:[function(require,module,exports){ -"use strict";var Evented=require("../util/evented"),ajax=require("../util/ajax"),browser=require("../util/browser"),normalizeURL=require("../util/mapbox").normalizeSpriteURL,SpritePosition=function(){this.x=0,this.y=0,this.width=0,this.height=0,this.pixelRatio=1,this.sdf=!1},ImageSprite=function(t){function i(i,e){var a=this;t.call(this),this.base=i,this.retina=browser.devicePixelRatio>1,this.setEventedParent(e);var r=this.retina?"@2x":"";ajax.getJSON(normalizeURL(i,r,".json"),function(t,i){return t?void a.fire("error",{error:t}):(a.data=i,void(a.imgData&&a.fire("data",{dataType:"style"})))}),ajax.getImage(normalizeURL(i,r,".png"),function(t,i){if(t)return void a.fire("error",{error:t});a.imgData=browser.getImageData(i);for(var e=0;e1!==this.retina){var e=new i(this.base);e.on("data",function(){t.data=e.data,t.imgData=e.imgData,t.width=e.width,t.retina=e.retina})}},i.prototype.getSpritePosition=function(t){if(!this.loaded())return new SpritePosition;var i=this.data&&this.data[t];return i&&this.imgData?i:new SpritePosition},i}(Evented);module.exports=ImageSprite; -},{"../util/ajax":191,"../util/browser":192,"../util/evented":200,"../util/mapbox":208}],145:[function(require,module,exports){ -"use strict";var styleSpec=require("../style-spec/reference/latest"),util=require("../util/util"),Evented=require("../util/evented"),validateStyle=require("./validate_style"),StyleDeclaration=require("./style_declaration"),StyleTransition=require("./style_transition"),TRANSITION_SUFFIX="-transition",Light=function(t){function i(i){t.call(this),this.properties=["anchor","color","position","intensity"],this._specifications=styleSpec.light,this.set(i)}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.set=function(t){var i=this;if(!this._validate(validateStyle.light,t)){this._declarations={},this._transitions={},this._transitionOptions={},this.calculated={},t=util.extend({anchor:this._specifications.anchor.default,color:this._specifications.color.default,position:this._specifications.position.default,intensity:this._specifications.intensity.default},t);for(var e=0,o=i.properties;eMath.floor(e)&&(t.lastIntegerZoom=Math.floor(e+1),t.lastIntegerZoomTime=Date.now()),t.lastZoom=e},t.prototype._checkLoaded=function(){if(!this._loaded)throw new Error("Style is not done loading")},t.prototype.update=function(e,t){var r=this;if(this._changed){var i=Object.keys(this._updatedLayers),o=Object.keys(this._removedLayers);(i.length||o.length||this._updatedSymbolOrder)&&this._updateWorkerLayers(i,o);for(var s in r._updatedSources){var a=r._updatedSources[s];"reload"===a?r._reloadSource(s):"clear"===a&&r._clearSource(s)}this._applyClasses(e,t),this._resetUpdates(),this.fire("data",{dataType:"style"})}},t.prototype._updateWorkerLayers=function(e,t){var r=this,i=this._updatedSymbolOrder?this._order.filter(function(e){return"symbol"===r._layers[e].type}):null;this.dispatcher.broadcast("updateLayers",{layers:this._serializeLayers(e),removedIds:t,symbolOrder:i})},t.prototype._resetUpdates=function(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSymbolOrder=!1,this._updatedSources={},this._updatedPaintProps={},this._updatedAllPaintProps=!1},t.prototype.setState=function(e){var t=this;if(this._checkLoaded(),validateStyle.emitErrors(this,validateStyle(e)))return!1;e=util.extend({},e),e.layers=deref(e.layers);var r=diff(this.serialize(),e).filter(function(e){return!(e.command in ignoredDiffOperations)});if(0===r.length)return!1;var i=r.filter(function(e){return!(e.command in supportedDiffOperations)});if(i.length>0)throw new Error("Unimplemented: "+i.map(function(e){return e.command}).join(", ")+".");return r.forEach(function(e){"setTransition"!==e.command&&t[e.command].apply(t,e.args)}),this.stylesheet=e,!0},t.prototype.addSource=function(e,t,r){var i=this;if(this._checkLoaded(),void 0!==this.sourceCaches[e])throw new Error("There is already a source with this ID");if(!t.type)throw new Error("The type property must be defined, but the only the following properties were given: "+Object.keys(t)+".");var o=["vector","raster","geojson","video","image","canvas"],s=o.indexOf(t.type)>=0;if(!s||!this._validate(validateStyle.source,"sources."+e,t,null,r)){var a=this.sourceCaches[e]=new SourceCache(e,t,this.dispatcher);a.style=this,a.setEventedParent(this,function(){return{isSourceLoaded:i.loaded(),source:a.serialize(),sourceId:e}}),a.onAdd(this.map),this._changed=!0}},t.prototype.removeSource=function(e){if(this._checkLoaded(),void 0===this.sourceCaches[e])throw new Error("There is no source with this ID");var t=this.sourceCaches[e];delete this.sourceCaches[e],delete this._updatedSources[e],t.setEventedParent(null),t.clearTiles(),t.onRemove&&t.onRemove(this.map),this._changed=!0},t.prototype.getSource=function(e){return this.sourceCaches[e]&&this.sourceCaches[e].getSource()},t.prototype.addLayer=function(e,t,r){this._checkLoaded();var i=e.id;if("object"==typeof e.source&&(this.addSource(i,e.source),e=util.extend(e,{source:i})),!this._validate(validateStyle.layer,"layers."+i,e,{arrayIndex:-1},r)){var o=StyleLayer.create(e);this._validateLayer(o),o.setEventedParent(this,{layer:{id:i}});var s=t?this._order.indexOf(t):this._order.length;if(this._order.splice(s,0,i),this._layers[i]=o,this._removedLayers[i]&&o.source){var a=this._removedLayers[i];delete this._removedLayers[i],this._updatedSources[o.source]=a.type!==o.type?"clear":"reload"}this._updateLayer(o),"symbol"===o.type&&(this._updatedSymbolOrder=!0),this.updateClasses(i)}},t.prototype.moveLayer=function(e,t){this._checkLoaded(),this._changed=!0;var r=this._layers[e];if(!r)return void this.fire("error",{error:new Error("The layer '"+e+"' does not exist in the map's style and cannot be moved.")});var i=this._order.indexOf(e);this._order.splice(i,1);var o=t?this._order.indexOf(t):this._order.length;this._order.splice(o,0,e),"symbol"===r.type&&(this._updatedSymbolOrder=!0,r.source&&!this._updatedSources[r.source]&&(this._updatedSources[r.source]="reload"))},t.prototype.removeLayer=function(e){this._checkLoaded();var t=this._layers[e];if(!t)return void this.fire("error",{error:new Error("The layer '"+e+"' does not exist in the map's style and cannot be removed.")});t.setEventedParent(null);var r=this._order.indexOf(e);this._order.splice(r,1),"symbol"===t.type&&(this._updatedSymbolOrder=!0),this._changed=!0,this._removedLayers[e]=t,delete this._layers[e],delete this._updatedLayers[e],delete this._updatedPaintProps[e]},t.prototype.getLayer=function(e){return this._layers[e]},t.prototype.setLayerZoomRange=function(e,t,r){this._checkLoaded();var i=this.getLayer(e);return i?void(i.minzoom===t&&i.maxzoom===r||(null!=t&&(i.minzoom=t),null!=r&&(i.maxzoom=r),this._updateLayer(i))):void this.fire("error",{error:new Error("The layer '"+e+"' does not exist in the map's style and cannot have zoom extent.")})},t.prototype.setFilter=function(e,t){this._checkLoaded();var r=this.getLayer(e);return r?void(null!==t&&void 0!==t&&this._validate(validateStyle.filter,"layers."+r.id+".filter",t)||util.deepEqual(r.filter,t)||(r.filter=util.clone(t),this._updateLayer(r))):void this.fire("error",{error:new Error("The layer '"+e+"' does not exist in the map's style and cannot be filtered.")})},t.prototype.getFilter=function(e){return util.clone(this.getLayer(e).filter)},t.prototype.setLayoutProperty=function(e,t,r){this._checkLoaded();var i=this.getLayer(e);return i?void(util.deepEqual(i.getLayoutProperty(t),r)||(i.setLayoutProperty(t,r),this._updateLayer(i))):void this.fire("error",{error:new Error("The layer '"+e+"' does not exist in the map's style and cannot be styled.")})},t.prototype.getLayoutProperty=function(e,t){return this.getLayer(e).getLayoutProperty(t)},t.prototype.setPaintProperty=function(e,t,r,i){this._checkLoaded();var o=this.getLayer(e);if(!o)return void this.fire("error",{error:new Error("The layer '"+e+"' does not exist in the map's style and cannot be styled.")});if(!util.deepEqual(o.getPaintProperty(t,i),r)){var s=o.isPaintValueFeatureConstant(t);o.setPaintProperty(t,r,i);var a=!(r&&MapboxGLFunction.isFunctionDefinition(r)&&"$zoom"!==r.property&&void 0!==r.property);a&&s||this._updateLayer(o),this.updateClasses(e,t)}},t.prototype.getPaintProperty=function(e,t,r){return this.getLayer(e).getPaintProperty(t,r)},t.prototype.getTransition=function(){return util.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},t.prototype.updateClasses=function(e,t){if(this._changed=!0,e){var r=this._updatedPaintProps;r[e]||(r[e]={}),r[e][t||"all"]=!0}else this._updatedAllPaintProps=!0},t.prototype.serialize=function(){var e=this;return util.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:util.mapObject(this.sourceCaches,function(e){return e.serialize()}),layers:this._order.map(function(t){return e._layers[t].serialize()})},function(e){return void 0!==e})},t.prototype._updateLayer=function(e){this._updatedLayers[e.id]=!0,e.source&&!this._updatedSources[e.source]&&(this._updatedSources[e.source]="reload"),this._changed=!0},t.prototype._flattenRenderedFeatures=function(e){for(var t=this,r=[],i=this._order.length-1;i>=0;i--)for(var o=t._order[i],s=0,a=e;s=this.maxzoom)||"none"===this.layout.visibility)},i.prototype.updatePaintTransitions=function(t,i,a,e,n){for(var o=this,r=util.extend({},this._paintDeclarations[""]),s=0;s=this.endTime)return e;var a=this.oldTransition.calculate(t,i,this.startTime),n=util.easeCubicInOut((o-this.startTime-this.delay)/this.duration);return this.interp(a,e,n)},StyleTransition.prototype._calculateTargetValue=function(t,i){if(!this.zoomTransitioned)return this.declaration.calculate(t,i);var o=t.zoom,e=this.zoomHistory.lastIntegerZoom,a=o>e?2:.5,n=this.declaration.calculate({zoom:o>e?o-1:o+1},i),r=this.declaration.calculate({zoom:o},i),s=Math.min((Date.now()-this.zoomHistory.lastIntegerZoomTime)/this.duration,1),l=Math.abs(o-e),u=interpolate(s,1,l);return void 0!==n&&void 0!==r?{from:n,fromScale:a,to:r,toScale:1,t:u}:void 0},module.exports=StyleTransition; -},{"../util/interpolate":204,"../util/util":212}],156:[function(require,module,exports){ -"use strict";module.exports=require("../style-spec/validate_style.min"),module.exports.emitErrors=function(r,e){if(e&&e.length){for(var t=0;t-a/2;){if(s--,s<0)return!1;f-=e[s].dist(i),i=e[s]}f+=e[s].dist(e[s+1]),s++;for(var l=[],o=0;fr;)o-=l.shift().angleDelta;if(o>n)return!1;s++,f+=c.dist(g)}return!0}module.exports=checkMaxAngle; -},{}],159:[function(require,module,exports){ -"use strict";function clipLine(n,x,y,o,e){for(var r=[],t=0;t=o&&w.x>=o||(P.x>=o?P=new Point(o,P.y+(w.y-P.y)*((o-P.x)/(w.x-P.x)))._round():w.x>=o&&(w=new Point(o,P.y+(w.y-P.y)*((o-P.x)/(w.x-P.x)))._round()),P.y>=e&&w.y>=e||(P.y>=e?P=new Point(P.x+(w.x-P.x)*((e-P.y)/(w.y-P.y)),e)._round():w.y>=e&&(w=new Point(P.x+(w.x-P.x)*((e-P.y)/(w.y-P.y)),e)._round()),u&&P.equals(u[u.length-1])||(u=[P],r.push(u)),u.push(w)))))}return r}var Point=require("point-geometry");module.exports=clipLine; -},{"point-geometry":26}],160:[function(require,module,exports){ -"use strict";var createStructArrayType=require("../util/struct_array"),Point=require("point-geometry"),CollisionBoxArray=createStructArrayType({members:[{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:"Float32",name:"maxScale"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"},{type:"Int16",name:"bbox0"},{type:"Int16",name:"bbox1"},{type:"Int16",name:"bbox2"},{type:"Int16",name:"bbox3"},{type:"Float32",name:"placementScale"}]});Object.defineProperty(CollisionBoxArray.prototype.StructType.prototype,"anchorPoint",{get:function(){return new Point(this.anchorPointX,this.anchorPointY)}}),module.exports=CollisionBoxArray; -},{"../util/struct_array":210,"point-geometry":26}],161:[function(require,module,exports){ -"use strict";var CollisionFeature=function(t,e,i,o,s,a,n,r,l,d,u){var h=n.top*r-l,x=n.bottom*r+l,f=n.left*r-l,m=n.right*r+l;if(this.boxStartIndex=t.length,d){var _=x-h,b=m-f;if(_>0)if(_=Math.max(10*r,_),u){var v=e[i.segment+1].sub(e[i.segment])._unit()._mult(b),c=[i.sub(v),i.add(v)];this._addLineCollisionBoxes(t,c,i,0,b,_,o,s,a)}else this._addLineCollisionBoxes(t,e,i,i.segment,b,_,o,s,a)}else t.emplaceBack(i.x,i.y,f,h,m,x,1/0,o,s,a,0,0,0,0,0);this.boxEndIndex=t.length};CollisionFeature.prototype._addLineCollisionBoxes=function(t,e,i,o,s,a,n,r,l){var d=a/2,u=Math.floor(s/d),h=-a/2,x=this.boxes,f=i,m=o+1,_=h;do{if(m--,m<0)return x;_-=e[m].dist(f),f=e[m]}while(_>-s/2);for(var b=e[m].dist(e[m+1]),v=0;v=e.length)return x;b=e[m].dist(e[m+1])}var g=c-_,p=e[m],C=e[m+1],B=C.sub(p)._unit()._mult(g)._add(p)._round(),M=Math.max(Math.abs(c-h)-d/2,0),y=s/2/M;t.emplaceBack(B.x,B.y,-a/2,-a/2,a/2,a/2,y,n,r,l,0,0,0,0,0)}return x},module.exports=CollisionFeature; -},{}],162:[function(require,module,exports){ -"use strict";var Point=require("point-geometry"),EXTENT=require("../data/extent"),Grid=require("grid-index"),intersectionTests=require("../util/intersection_tests"),CollisionTile=function(t,e,i){if("object"==typeof t){var r=t;i=e,t=r.angle,e=r.pitch,this.grid=new Grid(r.grid),this.ignoredGrid=new Grid(r.ignoredGrid)}else this.grid=new Grid(EXTENT,12,6),this.ignoredGrid=new Grid(EXTENT,12,0);this.minScale=.5,this.maxScale=2,this.angle=t,this.pitch=e;var a=Math.sin(t),o=Math.cos(t);if(this.rotationMatrix=[o,-a,a,o],this.reverseRotationMatrix=[o,a,-a,o],this.yStretch=1/Math.cos(e/180*Math.PI),this.yStretch=Math.pow(this.yStretch,1.3),this.collisionBoxArray=i,0===i.length){i.emplaceBack();var n=32767;i.emplaceBack(0,0,0,-n,0,n,n,0,0,0,0,0,0,0,0,0),i.emplaceBack(EXTENT,0,0,-n,0,n,n,0,0,0,0,0,0,0,0,0),i.emplaceBack(0,0,-n,0,n,0,n,0,0,0,0,0,0,0,0,0),i.emplaceBack(0,EXTENT,-n,0,n,0,n,0,0,0,0,0,0,0,0,0)}this.tempCollisionBox=i.get(0),this.edges=[i.get(1),i.get(2),i.get(3),i.get(4)]};CollisionTile.prototype.serialize=function(t){var e=this.grid.toArrayBuffer(),i=this.ignoredGrid.toArrayBuffer();return t&&(t.push(e),t.push(i)),{angle:this.angle,pitch:this.pitch,grid:e,ignoredGrid:i}},CollisionTile.prototype.placeCollisionFeature=function(t,e,i){for(var r=this,a=this.collisionBoxArray,o=this.minScale,n=this.rotationMatrix,l=this.yStretch,h=t.boxStartIndex;h=r.maxScale)return o}if(i){var S=void 0;if(r.angle){var P=r.reverseRotationMatrix,b=new Point(s.x1,s.y1).matMult(P),T=new Point(s.x2,s.y1).matMult(P),w=new Point(s.x1,s.y2).matMult(P),N=new Point(s.x2,s.y2).matMult(P);S=r.tempCollisionBox,S.anchorPointX=s.anchorPoint.x,S.anchorPointY=s.anchorPoint.y,S.x1=Math.min(b.x,T.x,w.x,N.x),S.y1=Math.min(b.y,T.x,w.x,N.x),S.x2=Math.max(b.x,T.x,w.x,N.x),S.y2=Math.max(b.y,T.x,w.x,N.x),S.maxScale=s.maxScale}else S=s;for(var B=0;B=r.maxScale)return o}}}return o},CollisionTile.prototype.queryRenderedSymbols=function(t,e){var i={},r=[];if(0===t.length||0===this.grid.length&&0===this.ignoredGrid.length)return r;for(var a=this.collisionBoxArray,o=this.rotationMatrix,n=this.yStretch,l=[],h=1/0,s=1/0,x=-(1/0),c=-(1/0),g=0;gS.maxScale)){var T=S.anchorPoint.matMult(o),w=T.x+S.x1/e,N=T.y+S.y1/e*n,B=T.x+S.x2/e,G=T.y+S.y2/e*n,E=[new Point(w,N),new Point(B,N),new Point(B,G),new Point(w,G)];intersectionTests.polygonIntersectsPolygon(l,E)&&(i[P][b]=!0,r.push(u[v]))}}return r},CollisionTile.prototype.getPlacementScale=function(t,e,i,r,a){var o=e.x-r.x,n=e.y-r.y,l=(a.x1-i.x2)/o,h=(a.x2-i.x1)/o,s=(a.y1-i.y2)*this.yStretch/n,x=(a.y2-i.y1)*this.yStretch/n;(isNaN(l)||isNaN(h))&&(l=h=1),(isNaN(s)||isNaN(x))&&(s=x=1);var c=Math.min(Math.max(l,h),Math.max(s,x)),g=a.maxScale,y=i.maxScale;return c>g&&(c=g),c>y&&(c=y),c>t&&c>=a.placementScale&&(t=c),t},CollisionTile.prototype.insertCollisionFeature=function(t,e,i){for(var r=this,a=i?this.ignoredGrid:this.grid,o=this.collisionBoxArray,n=t.boxStartIndex;n=0&&k=0&&q=0&&p+c<=s){var M=new Anchor(k,q,y,f)._round();n&&!checkMaxAngle(e,M,l,n,a)||x.push(M)}}g+=A}return i||x.length||o||(x=resample(e,g/2,t,n,a,l,o,!0,h)),x}var interpolate=require("../util/interpolate"),Anchor=require("../symbol/anchor"),checkMaxAngle=require("./check_max_angle");module.exports=getAnchors; -},{"../symbol/anchor":157,"../util/interpolate":204,"./check_max_angle":158}],164:[function(require,module,exports){ -"use strict";var ShelfPack=require("@mapbox/shelf-pack"),util=require("../util/util"),SIZE_GROWTH_RATE=4,DEFAULT_SIZE=128,MAX_SIZE=2048,GlyphAtlas=function(){this.width=DEFAULT_SIZE,this.height=DEFAULT_SIZE,this.atlas=new ShelfPack(this.width,this.height),this.index={},this.ids={},this.data=new Uint8Array(this.width*this.height)};GlyphAtlas.prototype.getGlyphs=function(){var t,i,e,h=this,r={};for(var s in h.ids)t=s.split("#"),i=t[0],e=t[1],r[i]||(r[i]=[]),r[i].push(e);return r},GlyphAtlas.prototype.getRects=function(){var t,i,e,h=this,r={};for(var s in h.ids)t=s.split("#"),i=t[0],e=t[1],r[i]||(r[i]={}),r[i][e]=h.index[s];return r},GlyphAtlas.prototype.addGlyph=function(t,i,e,h){var r=this;if(!e)return null;var s=i+"#"+e.id;if(this.index[s])return this.ids[s].indexOf(t)<0&&this.ids[s].push(t),this.index[s];if(!e.bitmap)return null;var a=e.width+2*h,E=e.height+2*h,n=1,l=a+2*n,T=E+2*n;l+=4-l%4,T+=4-T%4;var u=this.atlas.packOne(l,T);if(u||(this.resize(),u=this.atlas.packOne(l,T)),!u)return util.warnOnce("glyph bitmap overflow"),null;this.index[s]=u,this.ids[s]=[t];for(var d=this.data,p=e.bitmap,A=0;A=MAX_SIZE||e>=MAX_SIZE)){this.texture&&(this.gl&&this.gl.deleteTexture(this.texture),this.texture=null),this.width*=SIZE_GROWTH_RATE,this.height*=SIZE_GROWTH_RATE,this.atlas.resize(this.width,this.height);for(var h=new ArrayBuffer(this.width*this.height),r=0;r65535)return a("glyphs > 65535 not supported");void 0===this.loading[t]&&(this.loading[t]={});var l=this.loading[t];if(l[e])l[e].push(a);else{l[e]=[a];var i=256*e+"-"+(256*e+255),r=glyphUrl(t,i,this.url);ajax.getArrayBuffer(r,function(t,a){for(var i=!t&&new Glyphs(new Protobuf(a.data)),r=0;r1?2:1,this.canvas&&(this.canvas.width=this.width*this.pixelRatio,this.canvas.height=this.height*this.pixelRatio)),this.sprite=t},i.prototype.addIcons=function(t,i){for(var e=this,r=0;r1||(b?(clearTimeout(b),b=null,h("dblclick",t)):b=setTimeout(l,300))}function i(e){f("touchmove",e)}function c(e){f("touchend",e)}function d(e){f("touchcancel",e)}function l(){b=null}function s(e){var t=DOM.mousePos(g,e);t.equals(L)&&h("click",e)}function v(e){h("dblclick",e),e.preventDefault()}function m(t){var n=e.dragRotate&&e.dragRotate.isActive();E||n?E&&(p=t):h("contextmenu",t),t.preventDefault()}function h(t,n){var o=DOM.mousePos(g,n);return e.fire(t,{lngLat:e.unproject(o),point:o,originalEvent:n})}function f(t,n){var o=DOM.touchPos(g,n),r=o.reduce(function(e,t,n,o){return e.add(t.div(o.length))},new Point(0,0));return e.fire(t,{lngLat:e.unproject(r),point:r,lngLats:o.map(function(t){return e.unproject(t)},this),points:o,originalEvent:n})}var g=e.getCanvasContainer(),p=null,E=!1,L=null,b=null;for(var q in handlers)e[q]=new handlers[q](e,t),t.interactive&&t[q]&&e[q].enable(t[q]);g.addEventListener("mouseout",n,!1),g.addEventListener("mousedown",o,!1),g.addEventListener("mouseup",r,!1),g.addEventListener("mousemove",a,!1),g.addEventListener("touchstart",u,!1),g.addEventListener("touchend",c,!1),g.addEventListener("touchmove",i,!1),g.addEventListener("touchcancel",d,!1),g.addEventListener("click",s,!1),g.addEventListener("dblclick",v,!1),g.addEventListener("contextmenu",m,!1)}; -},{"../util/dom":199,"./handler/box_zoom":179,"./handler/dblclick_zoom":180,"./handler/drag_pan":181,"./handler/drag_rotate":182,"./handler/keyboard":183,"./handler/scroll_zoom":184,"./handler/touch_zoom_rotate":185,"point-geometry":26}],172:[function(require,module,exports){ -"use strict";var util=require("../util/util"),interpolate=require("../util/interpolate"),browser=require("../util/browser"),LngLat=require("../geo/lng_lat"),LngLatBounds=require("../geo/lng_lat_bounds"),Point=require("point-geometry"),Evented=require("../util/evented"),Camera=function(t){function i(i,e){t.call(this),this.moving=!1,this.transform=i,this._bearingSnap=e.bearingSnap}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.getCenter=function(){return this.transform.center},i.prototype.setCenter=function(t,i){return this.jumpTo({center:t},i),this},i.prototype.panBy=function(t,i,e){return this.panTo(this.transform.center,util.extend({offset:Point.convert(t).mult(-1)},i),e),this},i.prototype.panTo=function(t,i,e){return this.easeTo(util.extend({center:t},i),e)},i.prototype.getZoom=function(){return this.transform.zoom},i.prototype.setZoom=function(t,i){return this.jumpTo({zoom:t},i),this},i.prototype.zoomTo=function(t,i,e){return this.easeTo(util.extend({zoom:t},i),e)},i.prototype.zoomIn=function(t,i){return this.zoomTo(this.getZoom()+1,t,i),this},i.prototype.zoomOut=function(t,i){return this.zoomTo(this.getZoom()-1,t,i),this},i.prototype.getBearing=function(){return this.transform.bearing},i.prototype.setBearing=function(t,i){return this.jumpTo({bearing:t},i),this},i.prototype.rotateTo=function(t,i,e){return this.easeTo(util.extend({bearing:t},i),e)},i.prototype.resetNorth=function(t,i){return this.rotateTo(0,util.extend({duration:1e3},t),i),this},i.prototype.snapToNorth=function(t,i){return Math.abs(this.getBearing())i?1:0}),["bottom","left","right","top"]))return void util.warnOnce("options.padding must be a positive number, or an Object with keys 'bottom', 'left', 'right', 'top'");t=LngLatBounds.convert(t);var n=[i.padding.left-i.padding.right,i.padding.top-i.padding.bottom],r=Math.min(i.padding.right,i.padding.left),s=Math.min(i.padding.top,i.padding.bottom);i.offset=[i.offset[0]+n[0],i.offset[1]+n[1]];var a=Point.convert(i.offset),h=this.transform,u=h.project(t.getNorthWest()),p=h.project(t.getSouthEast()),c=p.sub(u),g=(h.width-2*r-2*Math.abs(a.x))/c.x,m=(h.height-2*s-2*Math.abs(a.y))/c.y;return m<0||g<0?void util.warnOnce("Map cannot fit within canvas with the given bounds, padding, and/or offset."):(i.center=h.unproject(u.add(p).div(2)),i.zoom=Math.min(h.scaleZoom(h.scale*Math.min(g,m)),i.maxZoom),i.bearing=0,i.linear?this.easeTo(i,e):this.flyTo(i,e))},i.prototype.jumpTo=function(t,i){this.stop();var e=this.transform,o=!1,n=!1,r=!1;return"zoom"in t&&e.zoom!==+t.zoom&&(o=!0,e.zoom=+t.zoom),"center"in t&&(e.center=LngLat.convert(t.center)),"bearing"in t&&e.bearing!==+t.bearing&&(n=!0,e.bearing=+t.bearing),"pitch"in t&&e.pitch!==+t.pitch&&(r=!0,e.pitch=+t.pitch),this.fire("movestart",i).fire("move",i),o&&this.fire("zoomstart",i).fire("zoom",i).fire("zoomend",i),n&&this.fire("rotate",i),r&&this.fire("pitch",i),this.fire("moveend",i)},i.prototype.easeTo=function(t,i){var e=this;this.stop(),t=util.extend({offset:[0,0],duration:500,easing:util.ease},t);var o,n,r=this.transform,s=Point.convert(t.offset),a=this.getZoom(),h=this.getBearing(),u=this.getPitch(),p="zoom"in t?+t.zoom:a,c="bearing"in t?this._normalizeBearing(t.bearing,h):h,g="pitch"in t?+t.pitch:u;"center"in t?(o=LngLat.convert(t.center),n=r.centerPoint.add(s)):"around"in t?(o=LngLat.convert(t.around),n=r.locationPoint(o)):(n=r.centerPoint.add(s),o=r.pointLocation(n));var m=r.locationPoint(o);return t.animate===!1&&(t.duration=0),this.zooming=p!==a,this.rotating=h!==c,this.pitching=g!==u,t.smoothEasing&&0!==t.duration&&(t.easing=this._smoothOutEasing(t.duration)),t.noMoveStart||(this.moving=!0,this.fire("movestart",i)),this.zooming&&this.fire("zoomstart",i),clearTimeout(this._onEaseEnd),this._ease(function(t){this.zooming&&(r.zoom=interpolate(a,p,t)),this.rotating&&(r.bearing=interpolate(h,c,t)),this.pitching&&(r.pitch=interpolate(u,g,t)),r.setLocationAtPoint(o,m.add(n.sub(m)._mult(t))),this.fire("move",i),this.zooming&&this.fire("zoom",i),this.rotating&&this.fire("rotate",i),this.pitching&&this.fire("pitch",i)},function(){t.delayEndEvents?e._onEaseEnd=setTimeout(e._easeToEnd.bind(e,i),t.delayEndEvents):e._easeToEnd(i)},t),this},i.prototype._easeToEnd=function(t){var i=this.zooming;this.moving=!1,this.zooming=!1,this.rotating=!1,this.pitching=!1,i&&this.fire("zoomend",t),this.fire("moveend",t)},i.prototype.flyTo=function(t,i){function e(t){var i=(y*y-z*z+(t?-1:1)*E*E*_*_)/(2*(t?y:z)*E*_);return Math.log(Math.sqrt(i*i+1)-i)}function o(t){return(Math.exp(t)-Math.exp(-t))/2}function n(t){return(Math.exp(t)+Math.exp(-t))/2}function r(t){return o(t)/n(t)}this.stop(),t=util.extend({offset:[0,0],speed:1.2,curve:1.42,easing:util.ease},t);var s=this.transform,a=Point.convert(t.offset),h=this.getZoom(),u=this.getBearing(),p=this.getPitch(),c="center"in t?LngLat.convert(t.center):this.getCenter(),g="zoom"in t?+t.zoom:h,m="bearing"in t?this._normalizeBearing(t.bearing,u):u,f="pitch"in t?+t.pitch:p;Math.abs(s.center.lng)+Math.abs(c.lng)>180&&(s.center.lng>0&&c.lng<0?c.lng+=360:s.center.lng<0&&c.lng>0&&(c.lng-=360));var d=s.zoomScale(g-h),l=s.point,v="center"in t?s.project(c).sub(a.div(d)):l,b=t.curve,z=Math.max(s.width,s.height),y=z/d,_=v.sub(l).mag();if("minZoom"in t){var M=util.clamp(Math.min(t.minZoom,h,g),s.minZoom,s.maxZoom),T=z/s.zoomScale(M-h);b=Math.sqrt(T/_*2)}var E=b*b,x=e(0),L=function(t){return n(x)/n(x+b*t)},Z=function(t){return z*((n(x)*r(x+b*t)-o(x))/E)/_},P=(e(1)-x)/b;if(Math.abs(_)<1e-6){if(Math.abs(z-y)<1e-6)return this.easeTo(t,i);var j=y=0)return!1;return!0}),this._container.innerHTML=i.join(" | "),this._editLink=null}},AttributionControl.prototype._updateCompact=function(){var t=this._map.getCanvasContainer().offsetWidth<=640;this._container.classList[t?"add":"remove"]("compact")},module.exports=AttributionControl; -},{"../../util/dom":199,"../../util/util":212}],174:[function(require,module,exports){ -"use strict";var DOM=require("../../util/dom"),util=require("../../util/util"),window=require("../../util/window"),FullscreenControl=function(){this._fullscreen=!1,util.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in window.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in window.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in window.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in window.document&&(this._fullscreenchange="MSFullscreenChange")};FullscreenControl.prototype.onAdd=function(e){var n="mapboxgl-ctrl",t=this._container=DOM.create("div",n+" mapboxgl-ctrl-group"),l=this._fullscreenButton=DOM.create("button",n+"-icon "+n+"-fullscreen",this._container);return l.setAttribute("aria-label","Toggle fullscreen"),l.type="button",this._fullscreenButton.addEventListener("click",this._onClickFullscreen),this._mapContainer=e.getContainer(),window.document.addEventListener(this._fullscreenchange,this._changeIcon),t},FullscreenControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},FullscreenControl.prototype._isFullscreen=function(){return this._fullscreen},FullscreenControl.prototype._changeIcon=function(e){if(e.target===this._mapContainer){this._fullscreen=!this._fullscreen;var n="mapboxgl-ctrl";this._fullscreenButton.classList.toggle(n+"-shrink"),this._fullscreenButton.classList.toggle(n+"-fullscreen")}},FullscreenControl.prototype._onClickFullscreen=function(){this._isFullscreen()?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._mapContainer.requestFullscreen?this._mapContainer.requestFullscreen():this._mapContainer.mozRequestFullScreen?this._mapContainer.mozRequestFullScreen():this._mapContainer.msRequestFullscreen?this._mapContainer.msRequestFullscreen():this._mapContainer.webkitRequestFullscreen&&this._mapContainer.webkitRequestFullscreen()},module.exports=FullscreenControl; -},{"../../util/dom":199,"../../util/util":212,"../../util/window":194}],175:[function(require,module,exports){ -"use strict";function checkGeolocationSupport(t){void 0!==supportsGeolocation?t(supportsGeolocation):void 0!==window.navigator.permissions?window.navigator.permissions.query({name:"geolocation"}).then(function(o){supportsGeolocation="denied"!==o.state,t(supportsGeolocation)}):(supportsGeolocation=!!window.navigator.geolocation,t(supportsGeolocation))}var Evented=require("../../util/evented"),DOM=require("../../util/dom"),window=require("../../util/window"),util=require("../../util/util"),defaultGeoPositionOptions={enableHighAccuracy:!1,timeout:6e3},className="mapboxgl-ctrl",supportsGeolocation,GeolocateControl=function(t){function o(o){t.call(this),this.options=o||{},util.bindAll(["_onSuccess","_onError","_finish","_setupUI"],this)}return t&&(o.__proto__=t),o.prototype=Object.create(t&&t.prototype),o.prototype.constructor=o,o.prototype.onAdd=function(t){return this._map=t,this._container=DOM.create("div",className+" "+className+"-group"),checkGeolocationSupport(this._setupUI),this._container},o.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map=void 0},o.prototype._onSuccess=function(t){this._map.jumpTo({center:[t.coords.longitude,t.coords.latitude],zoom:17,bearing:0,pitch:0}),this.fire("geolocate",t),this._finish()},o.prototype._onError=function(t){this.fire("error",t),this._finish()},o.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},o.prototype._setupUI=function(t){t!==!1&&(this._container.addEventListener("contextmenu",function(t){return t.preventDefault()}),this._geolocateButton=DOM.create("button",className+"-icon "+className+"-geolocate",this._container),this._geolocateButton.type="button",this._geolocateButton.setAttribute("aria-label","Geolocate"),this.options.watchPosition&&this._geolocateButton.setAttribute("aria-pressed",!1),this._geolocateButton.addEventListener("click",this._onClickGeolocate.bind(this)))},o.prototype._onClickGeolocate=function(){var t=util.extend(defaultGeoPositionOptions,this.options&&this.options.positionOptions||{});this.options.watchPosition?void 0!==this._geolocationWatchID?(this._geolocateButton.classList.remove("watching"),this._geolocateButton.setAttribute("aria-pressed",!1),window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0):(this._geolocateButton.classList.add("watching"),this._geolocateButton.setAttribute("aria-pressed",!0),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,t)):(window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,t),this._timeoutId=setTimeout(this._finish,1e4))},o}(Evented);module.exports=GeolocateControl; -},{"../../util/dom":199,"../../util/evented":200,"../../util/util":212,"../../util/window":194}],176:[function(require,module,exports){ -"use strict";var DOM=require("../../util/dom"),util=require("../../util/util"),LogoControl=function(){util.bindAll(["_updateLogo"],this)};LogoControl.prototype.onAdd=function(o){return this._map=o,this._container=DOM.create("div","mapboxgl-ctrl"),this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._container},LogoControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off("sourcedata",this._updateLogo)},LogoControl.prototype.getDefaultPosition=function(){return"bottom-left"},LogoControl.prototype._updateLogo=function(o){if(o&&"metadata"===o.sourceDataType)if(!this._container.childNodes.length&&this._logoRequired()){var t=DOM.create("a","mapboxgl-ctrl-logo");t.target="_blank",t.href="https://www.mapbox.com/",t.setAttribute("aria-label","Mapbox logo"),this._container.appendChild(t),this._map.off("data",this._updateLogo)}else this._container.childNodes.length&&!this._logoRequired()&&this.onRemove()},LogoControl.prototype._logoRequired=function(){if(this._map.style){var o=this._map.style.sourceCaches;for(var t in o){var e=o[t].getSource();if(e.mapbox_logo)return!0}return!1}},module.exports=LogoControl; -},{"../../util/dom":199,"../../util/util":212}],177:[function(require,module,exports){ -"use strict";function copyMouseEvent(t){return new window.MouseEvent(t.type,{button:2,buttons:2,bubbles:!0,cancelable:!0,detail:t.detail,view:t.view,screenX:t.screenX,screenY:t.screenY,clientX:t.clientX,clientY:t.clientY,movementX:t.movementX,movementY:t.movementY,ctrlKey:t.ctrlKey,shiftKey:t.shiftKey,altKey:t.altKey,metaKey:t.metaKey})}var DOM=require("../../util/dom"),window=require("../../util/window"),util=require("../../util/util"),className="mapboxgl-ctrl",NavigationControl=function(){util.bindAll(["_rotateCompassArrow"],this)};NavigationControl.prototype._rotateCompassArrow=function(){var t="rotate("+this._map.transform.angle*(180/Math.PI)+"deg)";this._compassArrow.style.transform=t},NavigationControl.prototype.onAdd=function(t){return this._map=t,this._container=DOM.create("div",className+" "+className+"-group",t.getContainer()),this._container.addEventListener("contextmenu",this._onContextMenu.bind(this)),this._zoomInButton=this._createButton(className+"-icon "+className+"-zoom-in","Zoom In",t.zoomIn.bind(t)),this._zoomOutButton=this._createButton(className+"-icon "+className+"-zoom-out","Zoom Out",t.zoomOut.bind(t)),this._compass=this._createButton(className+"-icon "+className+"-compass","Reset North",t.resetNorth.bind(t)),this._compassArrow=DOM.create("span",className+"-compass-arrow",this._compass),this._compass.addEventListener("mousedown",this._onCompassDown.bind(this)),this._onCompassMove=this._onCompassMove.bind(this),this._onCompassUp=this._onCompassUp.bind(this),this._map.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._container},NavigationControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off("rotate",this._rotateCompassArrow),this._map=void 0},NavigationControl.prototype._onContextMenu=function(t){t.preventDefault()},NavigationControl.prototype._onCompassDown=function(t){0===t.button&&(DOM.disableDrag(),window.document.addEventListener("mousemove",this._onCompassMove),window.document.addEventListener("mouseup",this._onCompassUp),this._map.getCanvasContainer().dispatchEvent(copyMouseEvent(t)),t.stopPropagation())},NavigationControl.prototype._onCompassMove=function(t){0===t.button&&(this._map.getCanvasContainer().dispatchEvent(copyMouseEvent(t)),t.stopPropagation())},NavigationControl.prototype._onCompassUp=function(t){0===t.button&&(window.document.removeEventListener("mousemove",this._onCompassMove),window.document.removeEventListener("mouseup",this._onCompassUp),DOM.enableDrag(),this._map.getCanvasContainer().dispatchEvent(copyMouseEvent(t)),t.stopPropagation())},NavigationControl.prototype._createButton=function(t,o,e){var n=DOM.create("button",t,this._container);return n.type="button",n.setAttribute("aria-label",o),n.addEventListener("click",function(){e()}),n},module.exports=NavigationControl; -},{"../../util/dom":199,"../../util/util":212,"../../util/window":194}],178:[function(require,module,exports){ -"use strict";function updateScale(t,e,o){var n=o&&o.maxWidth||100,i=t._container.clientHeight/2,a=getDistance(t.unproject([0,i]),t.unproject([n,i]));if(o&&"imperial"===o.unit){var r=3.2808*a;if(r>5280){var l=r/5280;setScale(e,n,l,"mi")}else setScale(e,n,r,"ft")}else setScale(e,n,a,"m")}function setScale(t,e,o,n){var i=getRoundNum(o),a=i/o;"m"===n&&i>=1e3&&(i/=1e3,n="km"),t.style.width=e*a+"px",t.innerHTML=i+n}function getDistance(t,e){var o=6371e3,n=Math.PI/180,i=t.lat*n,a=e.lat*n,r=Math.sin(i)*Math.sin(a)+Math.cos(i)*Math.cos(a)*Math.cos((e.lng-t.lng)*n),l=o*Math.acos(Math.min(r,1));return l}function getRoundNum(t){var e=Math.pow(10,(""+Math.floor(t)).length-1),o=t/e;return o=o>=10?10:o>=5?5:o>=3?3:o>=2?2:1,e*o}var DOM=require("../../util/dom"),util=require("../../util/util"),ScaleControl=function(t){this.options=t,util.bindAll(["_onMove"],this)};ScaleControl.prototype.getDefaultPosition=function(){return"bottom-left"},ScaleControl.prototype._onMove=function(){updateScale(this._map,this._container,this.options)},ScaleControl.prototype.onAdd=function(t){return this._map=t,this._container=DOM.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",t.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},ScaleControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off("move",this._onMove),this._map=void 0},module.exports=ScaleControl; -},{"../../util/dom":199,"../../util/util":212}],179:[function(require,module,exports){ -"use strict";var DOM=require("../../util/dom"),LngLatBounds=require("../../geo/lng_lat_bounds"),util=require("../../util/util"),window=require("../../util/window"),BoxZoomHandler=function(o){this._map=o,this._el=o.getCanvasContainer(),this._container=o.getContainer(),util.bindAll(["_onMouseDown","_onMouseMove","_onMouseUp","_onKeyDown"],this)};BoxZoomHandler.prototype.isEnabled=function(){return!!this._enabled},BoxZoomHandler.prototype.isActive=function(){return!!this._active},BoxZoomHandler.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener("mousedown",this._onMouseDown,!1),this._enabled=!0)},BoxZoomHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("mousedown",this._onMouseDown),this._enabled=!1)},BoxZoomHandler.prototype._onMouseDown=function(o){o.shiftKey&&0===o.button&&(window.document.addEventListener("mousemove",this._onMouseMove,!1),window.document.addEventListener("keydown",this._onKeyDown,!1),window.document.addEventListener("mouseup",this._onMouseUp,!1),DOM.disableDrag(),this._startPos=DOM.mousePos(this._el,o),this._active=!0)},BoxZoomHandler.prototype._onMouseMove=function(o){var e=this._startPos,t=DOM.mousePos(this._el,o);this._box||(this._box=DOM.create("div","mapboxgl-boxzoom",this._container),this._container.classList.add("mapboxgl-crosshair"),this._fireEvent("boxzoomstart",o));var n=Math.min(e.x,t.x),i=Math.max(e.x,t.x),s=Math.min(e.y,t.y),r=Math.max(e.y,t.y);DOM.setTransform(this._box,"translate("+n+"px,"+s+"px)"),this._box.style.width=i-n+"px",this._box.style.height=r-s+"px"},BoxZoomHandler.prototype._onMouseUp=function(o){if(0===o.button){var e=this._startPos,t=DOM.mousePos(this._el,o),n=(new LngLatBounds).extend(this._map.unproject(e)).extend(this._map.unproject(t));this._finish(),e.x===t.x&&e.y===t.y?this._fireEvent("boxzoomcancel",o):this._map.fitBounds(n,{linear:!0}).fire("boxzoomend",{originalEvent:o,boxZoomBounds:n})}},BoxZoomHandler.prototype._onKeyDown=function(o){27===o.keyCode&&(this._finish(),this._fireEvent("boxzoomcancel",o))},BoxZoomHandler.prototype._finish=function(){this._active=!1,window.document.removeEventListener("mousemove",this._onMouseMove,!1),window.document.removeEventListener("keydown",this._onKeyDown,!1),window.document.removeEventListener("mouseup",this._onMouseUp,!1),this._container.classList.remove("mapboxgl-crosshair"),this._box&&(this._box.parentNode.removeChild(this._box),this._box=null),DOM.enableDrag()},BoxZoomHandler.prototype._fireEvent=function(o,e){return this._map.fire(o,{originalEvent:e})},module.exports=BoxZoomHandler; -},{"../../geo/lng_lat_bounds":63,"../../util/dom":199,"../../util/util":212,"../../util/window":194}],180:[function(require,module,exports){ -"use strict";var DoubleClickZoomHandler=function(o){this._map=o,this._onDblClick=this._onDblClick.bind(this)};DoubleClickZoomHandler.prototype.isEnabled=function(){return!!this._enabled},DoubleClickZoomHandler.prototype.enable=function(){this.isEnabled()||(this._map.on("dblclick",this._onDblClick),this._enabled=!0)},DoubleClickZoomHandler.prototype.disable=function(){this.isEnabled()&&(this._map.off("dblclick",this._onDblClick),this._enabled=!1)},DoubleClickZoomHandler.prototype._onDblClick=function(o){this._map.zoomTo(this._map.getZoom()+(o.originalEvent.shiftKey?-1:1),{around:o.lngLat},o)},module.exports=DoubleClickZoomHandler; -},{}],181:[function(require,module,exports){ -"use strict";var DOM=require("../../util/dom"),util=require("../../util/util"),window=require("../../util/window"),inertiaLinearity=.3,inertiaEasing=util.bezier(0,0,inertiaLinearity,1),inertiaMaxSpeed=1400,inertiaDeceleration=2500,DragPanHandler=function(t){this._map=t,this._el=t.getCanvasContainer(),util.bindAll(["_onDown","_onMove","_onUp","_onTouchEnd","_onMouseUp"],this)};DragPanHandler.prototype.isEnabled=function(){return!!this._enabled},DragPanHandler.prototype.isActive=function(){return!!this._active},DragPanHandler.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener("mousedown",this._onDown),this._el.addEventListener("touchstart",this._onDown),this._enabled=!0)},DragPanHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("mousedown",this._onDown),this._el.removeEventListener("touchstart",this._onDown),this._enabled=!1)},DragPanHandler.prototype._onDown=function(t){this._ignoreEvent(t)||this.isActive()||(t.touches?(window.document.addEventListener("touchmove",this._onMove),window.document.addEventListener("touchend",this._onTouchEnd)):(window.document.addEventListener("mousemove",this._onMove),window.document.addEventListener("mouseup",this._onMouseUp)),window.addEventListener("blur",this._onMouseUp),this._active=!1,this._startPos=this._pos=DOM.mousePos(this._el,t),this._inertia=[[Date.now(),this._pos]])},DragPanHandler.prototype._onMove=function(t){if(!this._ignoreEvent(t)){this.isActive()||(this._active=!0,this._map.moving=!0,this._fireEvent("dragstart",t),this._fireEvent("movestart",t));var e=DOM.mousePos(this._el,t),n=this._map;n.stop(),this._drainInertiaBuffer(),this._inertia.push([Date.now(),e]),n.transform.setLocationAtPoint(n.transform.pointLocation(this._pos),e),this._fireEvent("drag",t),this._fireEvent("move",t),this._pos=e,t.preventDefault()}},DragPanHandler.prototype._onUp=function(t){var e=this;if(this.isActive()){this._active=!1,this._fireEvent("dragend",t),this._drainInertiaBuffer();var n=function(){e._map.moving=!1,e._fireEvent("moveend",t)},i=this._inertia;if(i.length<2)return void n();var o=i[i.length-1],r=i[0],a=o[1].sub(r[1]),s=(o[0]-r[0])/1e3;if(0===s||o[1].equals(r[1]))return void n();var u=a.mult(inertiaLinearity/s),d=u.mag();d>inertiaMaxSpeed&&(d=inertiaMaxSpeed,u._unit()._mult(d));var h=d/(inertiaDeceleration*inertiaLinearity),v=u.mult(-h/2);this._map.panBy(v,{duration:1e3*h,easing:inertiaEasing,noMoveStart:!0},{originalEvent:t})}},DragPanHandler.prototype._onMouseUp=function(t){this._ignoreEvent(t)||(this._onUp(t),window.document.removeEventListener("mousemove",this._onMove),window.document.removeEventListener("mouseup",this._onMouseUp),window.removeEventListener("blur",this._onMouseUp))},DragPanHandler.prototype._onTouchEnd=function(t){this._ignoreEvent(t)||(this._onUp(t),window.document.removeEventListener("touchmove",this._onMove),window.document.removeEventListener("touchend",this._onTouchEnd))},DragPanHandler.prototype._fireEvent=function(t,e){return this._map.fire(t,{originalEvent:e})},DragPanHandler.prototype._ignoreEvent=function(t){var e=this._map;if(e.boxZoom&&e.boxZoom.isActive())return!0;if(e.dragRotate&&e.dragRotate.isActive())return!0;if(t.touches)return t.touches.length>1;if(t.ctrlKey)return!0;var n=1,i=0;return"mousemove"===t.type?t.buttons&0===n:t.button&&t.button!==i},DragPanHandler.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now(),n=160;t.length>0&&e-t[0][0]>n;)t.shift()},module.exports=DragPanHandler; -},{"../../util/dom":199,"../../util/util":212,"../../util/window":194}],182:[function(require,module,exports){ -"use strict";var DOM=require("../../util/dom"),util=require("../../util/util"),window=require("../../util/window"),inertiaLinearity=.25,inertiaEasing=util.bezier(0,0,inertiaLinearity,1),inertiaMaxSpeed=180,inertiaDeceleration=720,DragRotateHandler=function(t,e){this._map=t,this._el=t.getCanvasContainer(),this._bearingSnap=e.bearingSnap,this._pitchWithRotate=e.pitchWithRotate!==!1,util.bindAll(["_onDown","_onMove","_onUp"],this)};DragRotateHandler.prototype.isEnabled=function(){return!!this._enabled},DragRotateHandler.prototype.isActive=function(){return!!this._active},DragRotateHandler.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener("mousedown",this._onDown),this._enabled=!0)},DragRotateHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("mousedown",this._onDown),this._enabled=!1)},DragRotateHandler.prototype._onDown=function(t){this._ignoreEvent(t)||this.isActive()||(window.document.addEventListener("mousemove",this._onMove),window.document.addEventListener("mouseup",this._onUp),window.addEventListener("blur",this._onUp),this._active=!1,this._inertia=[[Date.now(),this._map.getBearing()]],this._startPos=this._pos=DOM.mousePos(this._el,t),this._center=this._map.transform.centerPoint,t.preventDefault())},DragRotateHandler.prototype._onMove=function(t){if(!this._ignoreEvent(t)){this.isActive()||(this._active=!0,this._map.moving=!0,this._fireEvent("rotatestart",t),this._fireEvent("movestart",t));var e=this._map;e.stop();var i=this._pos,n=DOM.mousePos(this._el,t),r=.8*(i.x-n.x),a=(i.y-n.y)*-.5,o=e.getBearing()-r,s=e.getPitch()-a,h=this._inertia,v=h[h.length-1];this._drainInertiaBuffer(),h.push([Date.now(),e._normalizeBearing(o,v[1])]),e.transform.bearing=o,this._pitchWithRotate&&(e.transform.pitch=s),this._fireEvent("rotate",t),this._fireEvent("move",t),this._pos=n}},DragRotateHandler.prototype._onUp=function(t){var e=this;if(!this._ignoreEvent(t)&&(window.document.removeEventListener("mousemove",this._onMove),window.document.removeEventListener("mouseup",this._onUp),window.removeEventListener("blur",this._onUp),this.isActive())){this._active=!1,this._fireEvent("rotateend",t),this._drainInertiaBuffer();var i=this._map,n=i.getBearing(),r=this._inertia,a=function(){Math.abs(n)inertiaMaxSpeed&&(p=inertiaMaxSpeed);var l=p/(inertiaDeceleration*inertiaLinearity),g=u*p*(l/2);v+=g,Math.abs(i._normalizeBearing(v,0))1;var i=t.ctrlKey?1:2,n=t.ctrlKey?0:2,r=t.button;return"undefined"!=typeof InstallTrigger&&2===t.button&&t.ctrlKey&&window.navigator.platform.toUpperCase().indexOf("MAC")>=0&&(r=0),"mousemove"===t.type?t.buttons&0===i:!this.isActive()&&r!==n},DragRotateHandler.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now(),i=160;t.length>0&&e-t[0][0]>i;)t.shift()},module.exports=DragRotateHandler; -},{"../../util/dom":199,"../../util/util":212,"../../util/window":194}],183:[function(require,module,exports){ -"use strict";function easeOut(e){return e*(2-e)}var panStep=100,bearingStep=15,pitchStep=10,KeyboardHandler=function(e){this._map=e,this._el=e.getCanvasContainer(),this._onKeyDown=this._onKeyDown.bind(this)};KeyboardHandler.prototype.isEnabled=function(){return!!this._enabled},KeyboardHandler.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener("keydown",this._onKeyDown,!1),this._enabled=!0)},KeyboardHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("keydown",this._onKeyDown),this._enabled=!1)},KeyboardHandler.prototype._onKeyDown=function(e){if(!(e.altKey||e.ctrlKey||e.metaKey)){var t=0,n=0,a=0,i=0,r=0;switch(e.keyCode){case 61:case 107:case 171:case 187:t=1;break;case 189:case 109:case 173:t=-1;break;case 37:e.shiftKey?n=-1:(e.preventDefault(),i=-1);break;case 39:e.shiftKey?n=1:(e.preventDefault(),i=1);break;case 38:e.shiftKey?a=1:(e.preventDefault(),r=-1);break;case 40:e.shiftKey?a=-1:(r=1,e.preventDefault())}var s=this._map,o=s.getZoom(),d={duration:300,delayEndEvents:500,easing:easeOut,zoom:t?Math.round(o)+t*(e.shiftKey?2:1):o,bearing:s.getBearing()+n*bearingStep,pitch:s.getPitch()+a*pitchStep,offset:[-i*panStep,-r*panStep],center:s.getCenter()};s.easeTo(d,{originalEvent:e})}},module.exports=KeyboardHandler; -},{}],184:[function(require,module,exports){ -"use strict";var DOM=require("../../util/dom"),util=require("../../util/util"),browser=require("../../util/browser"),window=require("../../util/window"),ua=window.navigator.userAgent.toLowerCase(),firefox=ua.indexOf("firefox")!==-1,safari=ua.indexOf("safari")!==-1&&ua.indexOf("chrom")===-1,ScrollZoomHandler=function(e){this._map=e,this._el=e.getCanvasContainer(),util.bindAll(["_onWheel","_onTimeout"],this)};ScrollZoomHandler.prototype.isEnabled=function(){return!!this._enabled},ScrollZoomHandler.prototype.enable=function(e){this.isEnabled()||(this._el.addEventListener("wheel",this._onWheel,!1),this._el.addEventListener("mousewheel",this._onWheel,!1),this._enabled=!0,this._aroundCenter=e&&"center"===e.around)},ScrollZoomHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("wheel",this._onWheel),this._el.removeEventListener("mousewheel",this._onWheel),this._enabled=!1)},ScrollZoomHandler.prototype._onWheel=function(e){var t;"wheel"===e.type?(t=e.deltaY,firefox&&e.deltaMode===window.WheelEvent.DOM_DELTA_PIXEL&&(t/=browser.devicePixelRatio),e.deltaMode===window.WheelEvent.DOM_DELTA_LINE&&(t*=40)):"mousewheel"===e.type&&(t=-e.wheelDeltaY,safari&&(t/=3));var o=browser.now(),i=o-(this._time||0);this._pos=DOM.mousePos(this._el,e),this._time=o,0!==t&&t%4.000244140625===0?this._type="wheel":0!==t&&Math.abs(t)<4?this._type="trackpad":i>400?(this._type=null,this._lastValue=t,this._timeout=setTimeout(this._onTimeout,40)):this._type||(this._type=Math.abs(i*t)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,t+=this._lastValue)),e.shiftKey&&t&&(t/=4),this._type&&this._zoom(-t,e),e.preventDefault()},ScrollZoomHandler.prototype._onTimeout=function(){this._type="wheel",this._zoom(-this._lastValue)},ScrollZoomHandler.prototype._zoom=function(e,t){if(0!==e){var o=this._map,i=2/(1+Math.exp(-Math.abs(e/100)));e<0&&0!==i&&(i=1/i);var l=o.ease?o.ease.to:o.transform.scale,s=o.transform.scaleZoom(l*i);o.zoomTo(s,{duration:"wheel"===this._type?200:0,around:this._aroundCenter?o.getCenter():o.unproject(this._pos),delayEndEvents:200,smoothEasing:!0},{originalEvent:t})}},module.exports=ScrollZoomHandler; -},{"../../util/browser":192,"../../util/dom":199,"../../util/util":212,"../../util/window":194}],185:[function(require,module,exports){ -"use strict";var DOM=require("../../util/dom"),util=require("../../util/util"),window=require("../../util/window"),inertiaLinearity=.15,inertiaEasing=util.bezier(0,0,inertiaLinearity,1),inertiaDeceleration=12,inertiaMaxSpeed=2.5,significantScaleThreshold=.15,significantRotateThreshold=4,TouchZoomRotateHandler=function(t){this._map=t,this._el=t.getCanvasContainer(),util.bindAll(["_onStart","_onMove","_onEnd"],this)};TouchZoomRotateHandler.prototype.isEnabled=function(){return!!this._enabled},TouchZoomRotateHandler.prototype.enable=function(t){this.isEnabled()||(this._el.addEventListener("touchstart",this._onStart,!1),this._enabled=!0,this._aroundCenter=t&&"center"===t.around)},TouchZoomRotateHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("touchstart",this._onStart),this._enabled=!1)},TouchZoomRotateHandler.prototype.disableRotation=function(){this._rotationDisabled=!0},TouchZoomRotateHandler.prototype.enableRotation=function(){this._rotationDisabled=!1},TouchZoomRotateHandler.prototype._onStart=function(t){if(2===t.touches.length){var e=DOM.mousePos(this._el,t.touches[0]),o=DOM.mousePos(this._el,t.touches[1]);this._startVec=e.sub(o),this._startScale=this._map.transform.scale,this._startBearing=this._map.transform.bearing,this._gestureIntent=void 0,this._inertia=[],window.document.addEventListener("touchmove",this._onMove,!1),window.document.addEventListener("touchend",this._onEnd,!1)}},TouchZoomRotateHandler.prototype._onMove=function(t){if(2===t.touches.length){var e=DOM.mousePos(this._el,t.touches[0]),o=DOM.mousePos(this._el,t.touches[1]),i=e.add(o).div(2),n=e.sub(o),a=n.mag()/this._startVec.mag(),r=this._rotationDisabled?0:180*n.angleWith(this._startVec)/Math.PI,s=this._map;if(this._gestureIntent){var h={duration:0,around:s.unproject(i)};"rotate"===this._gestureIntent&&(h.bearing=this._startBearing+r),"zoom"!==this._gestureIntent&&"rotate"!==this._gestureIntent||(h.zoom=s.transform.scaleZoom(this._startScale*a)),s.stop(),this._drainInertiaBuffer(),this._inertia.push([Date.now(),a,i]),s.easeTo(h,{originalEvent:t})}else{var u=Math.abs(1-a)>significantScaleThreshold,d=Math.abs(r)>significantRotateThreshold;d?this._gestureIntent="rotate":u&&(this._gestureIntent="zoom"),this._gestureIntent&&(this._startVec=n,this._startScale=s.transform.scale,this._startBearing=s.transform.bearing)}t.preventDefault()}},TouchZoomRotateHandler.prototype._onEnd=function(t){window.document.removeEventListener("touchmove",this._onMove),window.document.removeEventListener("touchend",this._onEnd),this._drainInertiaBuffer();var e=this._inertia,o=this._map;if(e.length<2)return void o.snapToNorth({},{originalEvent:t});var i=e[e.length-1],n=e[0],a=o.transform.scaleZoom(this._startScale*i[1]),r=o.transform.scaleZoom(this._startScale*n[1]),s=a-r,h=(i[0]-n[0])/1e3,u=i[2];if(0===h||a===r)return void o.snapToNorth({},{originalEvent:t});var d=s*inertiaLinearity/h;Math.abs(d)>inertiaMaxSpeed&&(d=d>0?inertiaMaxSpeed:-inertiaMaxSpeed);var l=1e3*Math.abs(d/(inertiaDeceleration*inertiaLinearity)),c=a+d*l/2e3;c<0&&(c=0),o.easeTo({zoom:c,duration:l,easing:inertiaEasing,around:this._aroundCenter?o.getCenter():o.unproject(u)},{originalEvent:t})},TouchZoomRotateHandler.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now(),o=160;t.length>2&&e-t[0][0]>o;)t.shift()},module.exports=TouchZoomRotateHandler; -},{"../../util/dom":199,"../../util/util":212,"../../util/window":194}],186:[function(require,module,exports){ -"use strict";var util=require("../util/util"),window=require("../util/window"),Hash=function(){util.bindAll(["_onHashChange","_updateHash"],this)};Hash.prototype.addTo=function(t){return this._map=t,window.addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this},Hash.prototype.remove=function(){return window.removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),delete this._map,this},Hash.prototype._onHashChange=function(){var t=window.location.hash.replace("#","").split("/");return t.length>=3&&(this._map.jumpTo({center:[+t[2],+t[1]],zoom:+t[0],bearing:+(t[3]||0),pitch:+(t[4]||0)}),!0)},Hash.prototype._updateHash=function(){var t=this._map.getCenter(),e=this._map.getZoom(),a=this._map.getBearing(),h=this._map.getPitch(),i=Math.max(0,Math.ceil(Math.log(e)/Math.LN2)),n="#"+Math.round(100*e)/100+"/"+t.lat.toFixed(i)+"/"+t.lng.toFixed(i);(a||h)&&(n+="/"+Math.round(10*a)/10),h&&(n+="/"+Math.round(h)),window.history.replaceState("","",n)},module.exports=Hash; -},{"../util/util":212,"../util/window":194}],187:[function(require,module,exports){ -"use strict";function removeNode(t){t.parentNode&&t.parentNode.removeChild(t)}var util=require("../util/util"),browser=require("../util/browser"),window=require("../util/window"),DOM=require("../util/dom"),Style=require("../style/style"),AnimationLoop=require("../style/animation_loop"),Painter=require("../render/painter"),Transform=require("../geo/transform"),Hash=require("./hash"),bindHandlers=require("./bind_handlers"),Camera=require("./camera"),LngLat=require("../geo/lng_lat"),LngLatBounds=require("../geo/lng_lat_bounds"),Point=require("point-geometry"),AttributionControl=require("./control/attribution_control"),LogoControl=require("./control/logo_control"),isSupported=require("mapbox-gl-supported"),defaultMinZoom=0,defaultMaxZoom=22,defaultOptions={center:[0,0],zoom:0,bearing:0,pitch:0,minZoom:defaultMinZoom,maxZoom:defaultMaxZoom,interactive:!0,scrollZoom:!0,boxZoom:!0,dragRotate:!0,dragPan:!0,keyboard:!0,doubleClickZoom:!0,touchZoomRotate:!0,bearingSnap:7,hash:!1,attributionControl:!0,failIfMajorPerformanceCaveat:!1,preserveDrawingBuffer:!1,trackResize:!0,renderWorldCopies:!0,refreshExpiredTiles:!0},Map=function(t){function e(e){var o=this;if(e=util.extend({},defaultOptions,e),null!=e.minZoom&&null!=e.maxZoom&&e.minZoom>e.maxZoom)throw new Error("maxZoom must be greater than minZoom");var i=new Transform(e.minZoom,e.maxZoom,e.renderWorldCopies);if(t.call(this,i,e),this._interactive=e.interactive,this._failIfMajorPerformanceCaveat=e.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=e.preserveDrawingBuffer,this._trackResize=e.trackResize,this._bearingSnap=e.bearingSnap,this._refreshExpiredTiles=e.refreshExpiredTiles,"string"==typeof e.container){if(this._container=window.document.getElementById(e.container),!this._container)throw new Error("Container '"+e.container+"' not found.")}else this._container=e.container;this.animationLoop=new AnimationLoop,e.maxBounds&&this.setMaxBounds(e.maxBounds),util.bindAll(["_onWindowOnline","_onWindowResize","_contextLost","_contextRestored","_update","_render","_onData","_onDataLoading"],this),this._setupContainer(),this._setupPainter(),this.on("move",this._update.bind(this,!1)),this.on("zoom",this._update.bind(this,!0)),this.on("moveend",function(){o.animationLoop.set(300),o._rerender()}),"undefined"!=typeof window&&(window.addEventListener("online",this._onWindowOnline,!1),window.addEventListener("resize",this._onWindowResize,!1)),bindHandlers(this,e),this._hash=e.hash&&(new Hash).addTo(this),this._hash&&this._hash._onHashChange()||this.jumpTo({center:e.center,zoom:e.zoom,bearing:e.bearing,pitch:e.pitch}),this._classes=[],this.resize(),e.classes&&this.setClasses(e.classes),e.style&&this.setStyle(e.style),e.attributionControl&&this.addControl(new AttributionControl),this.addControl(new LogoControl,e.logoPosition),this.on("style.load",function(){this.transform.unmodified&&this.jumpTo(this.style.stylesheet),this.style.update(this._classes,{transition:!1})}),this.on("data",this._onData),this.on("dataloading",this._onDataLoading)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var o={showTileBoundaries:{},showCollisionBoxes:{},showOverdrawInspector:{},repaint:{},vertices:{}};return e.prototype.addControl=function(t,e){void 0===e&&t.getDefaultPosition&&(e=t.getDefaultPosition()),void 0===e&&(e="top-right");var o=t.onAdd(this),i=this._controlPositions[e];return e.indexOf("bottom")!==-1?i.insertBefore(o,i.firstChild):i.appendChild(o),this},e.prototype.removeControl=function(t){return t.onRemove(this),this},e.prototype.addClass=function(t,e){return util.warnOnce("Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS."),this._classes.indexOf(t)>=0||""===t?this:(this._classes.push(t),this._classOptions=e,this.style&&this.style.updateClasses(),this._update(!0))},e.prototype.removeClass=function(t,e){util.warnOnce("Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.");var o=this._classes.indexOf(t);return o<0||""===t?this:(this._classes.splice(o,1),this._classOptions=e,this.style&&this.style.updateClasses(),this._update(!0))},e.prototype.setClasses=function(t,e){util.warnOnce("Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.");for(var o={},i=0;i=0},e.prototype.getClasses=function(){return util.warnOnce("Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS."),this._classes},e.prototype.resize=function(){var t=this._containerDimensions(),e=t[0],o=t[1];return this._resizeCanvas(e,o),this.transform.resize(e,o),this.painter.resize(e,o),this.fire("movestart").fire("move").fire("resize").fire("moveend")},e.prototype.getBounds=function(){var t=new LngLatBounds(this.transform.pointLocation(new Point(0,this.transform.height)),this.transform.pointLocation(new Point(this.transform.width,0)));return(this.transform.angle||this.transform.pitch)&&(t.extend(this.transform.pointLocation(new Point(this.transform.size.x,0))),t.extend(this.transform.pointLocation(new Point(0,this.transform.size.y)))),t},e.prototype.setMaxBounds=function(t){if(t){var e=LngLatBounds.convert(t);this.transform.lngRange=[e.getWest(),e.getEast()],this.transform.latRange=[e.getSouth(),e.getNorth()],this.transform._constrain(),this._update()}else null!==t&&void 0!==t||(this.transform.lngRange=[],this.transform.latRange=[],this._update());return this},e.prototype.setMinZoom=function(t){if(t=null===t||void 0===t?defaultMinZoom:t,t>=defaultMinZoom&&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")},e.prototype.getMaxZoom=function(){return this.transform.maxZoom},e.prototype.project=function(t){return this.transform.locationPoint(LngLat.convert(t))},e.prototype.unproject=function(t){return this.transform.pointLocation(Point.convert(t))},e.prototype.queryRenderedFeatures=function(){function t(t){return t instanceof Point||Array.isArray(t)}var e,o={};return 2===arguments.length?(e=arguments[0],o=arguments[1]):1===arguments.length&&t(arguments[0])?e=arguments[0]:1===arguments.length&&(o=arguments[0]),this.style.queryRenderedFeatures(this._makeQueryGeometry(e),o,this.transform.zoom,this.transform.angle)},e.prototype._makeQueryGeometry=function(t){var e=this;void 0===t&&(t=[Point.convert([0,0]),Point.convert([this.transform.width,this.transform.height])]);var o,i=t instanceof Point||"number"==typeof t[0];if(i){var r=Point.convert(t);o=[r]}else{var s=[Point.convert(t[0]),Point.convert(t[1])];o=[s[0],new Point(s[1].x,s[0].y),s[1],new Point(s[0].x,s[1].y),s[0]]}return o=o.map(function(t){return e.transform.pointCoordinate(t)})},e.prototype.querySourceFeatures=function(t,e){return this.style.querySourceFeatures(t,e)},e.prototype.setStyle=function(t,e){var o=(!e||e.diff!==!1)&&this.style&&t&&!(t instanceof Style)&&"string"!=typeof t;if(o)try{return this.style.setState(t)&&this._update(!0),this}catch(t){util.warnOnce("Unable to perform style diff: "+(t.message||t.error||t)+". Rebuilding the style from scratch.")}return this.style&&(this.style.setEventedParent(null),this.style._remove(),this.off("rotate",this.style._redoPlacement),this.off("pitch",this.style._redoPlacement)),t?(t instanceof Style?this.style=t:this.style=new Style(t,this),this.style.setEventedParent(this,{style:this.style}),this.on("rotate",this.style._redoPlacement),this.on("pitch",this.style._redoPlacement),this):(this.style=null,this)},e.prototype.getStyle=function(){if(this.style)return this.style.serialize()},e.prototype.addSource=function(t,e){return this.style.addSource(t,e),this._update(!0),this},e.prototype.isSourceLoaded=function(t){var e=this.style&&this.style.sourceCaches[t];return void 0===e?void this.fire("error",{error:new Error("There is no source with ID '"+t+"'")}):e.loaded()},e.prototype.addSourceType=function(t,e,o){return this.style.addSourceType(t,e,o)},e.prototype.removeSource=function(t){return this.style.removeSource(t),this._update(!0),this},e.prototype.getSource=function(t){return this.style.getSource(t)},e.prototype.addImage=function(t,e,o){this.style.spriteAtlas.addImage(t,e,o)},e.prototype.removeImage=function(t){this.style.spriteAtlas.removeImage(t)},e.prototype.addLayer=function(t,e){return this.style.addLayer(t,e),this._update(!0),this},e.prototype.moveLayer=function(t,e){return this.style.moveLayer(t,e),this._update(!0),this},e.prototype.removeLayer=function(t){return this.style.removeLayer(t),this._update(!0),this},e.prototype.getLayer=function(t){return this.style.getLayer(t)},e.prototype.setFilter=function(t,e){return this.style.setFilter(t,e),this._update(!0),this},e.prototype.setLayerZoomRange=function(t,e,o){return this.style.setLayerZoomRange(t,e,o),this._update(!0),this},e.prototype.getFilter=function(t){return this.style.getFilter(t)},e.prototype.setPaintProperty=function(t,e,o,i){return this.style.setPaintProperty(t,e,o,i),this._update(!0),this},e.prototype.getPaintProperty=function(t,e,o){return this.style.getPaintProperty(t,e,o)},e.prototype.setLayoutProperty=function(t,e,o){return this.style.setLayoutProperty(t,e,o),this._update(!0),this},e.prototype.getLayoutProperty=function(t,e){return this.style.getLayoutProperty(t,e)},e.prototype.setLight=function(t){return this.style.setLight(t),this._update(!0),this},e.prototype.getLight=function(){return this.style.getLight()},e.prototype.getContainer=function(){return this._container},e.prototype.getCanvasContainer=function(){return this._canvasContainer},e.prototype.getCanvas=function(){return this._canvas},e.prototype._containerDimensions=function(){var t=0,e=0;return this._container&&(t=this._container.offsetWidth||400,e=this._container.offsetHeight||300),[t,e]},e.prototype._setupContainer=function(){var t=this._container;t.classList.add("mapboxgl-map");var e=this._canvasContainer=DOM.create("div","mapboxgl-canvas-container",t);this._interactive&&e.classList.add("mapboxgl-interactive"),this._canvas=DOM.create("canvas","mapboxgl-canvas",e),this._canvas.style.position="absolute",this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("tabindex",0),this._canvas.setAttribute("aria-label","Map");var o=this._containerDimensions();this._resizeCanvas(o[0],o[1]);var i=this._controlContainer=DOM.create("div","mapboxgl-control-container",t),r=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(function(t){r[t]=DOM.create("div","mapboxgl-ctrl-"+t,i)})},e.prototype._resizeCanvas=function(t,e){var o=window.devicePixelRatio||1;this._canvas.width=o*t,this._canvas.height=o*e,this._canvas.style.width=t+"px",this._canvas.style.height=e+"px"},e.prototype._setupPainter=function(){var t=util.extend({failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer},isSupported.webGLContextAttributes),e=this._canvas.getContext("webgl",t)||this._canvas.getContext("experimental-webgl",t);return e?void(this.painter=new Painter(e,this.transform)):void this.fire("error",{error:new Error("Failed to initialize WebGL")})},e.prototype._contextLost=function(t){t.preventDefault(),this._frameId&&browser.cancelFrame(this._frameId),this.fire("webglcontextlost",{originalEvent:t})},e.prototype._contextRestored=function(t){this._setupPainter(),this.resize(),this._update(),this.fire("webglcontextrestored",{originalEvent:t})},e.prototype.loaded=function(){return!this._styleDirty&&!this._sourcesDirty&&!(!this.style||!this.style.loaded())},e.prototype._update=function(t){return this.style?(this._styleDirty=this._styleDirty||t,this._sourcesDirty=!0,this._rerender(),this):this},e.prototype._render=function(){return this.style&&this._styleDirty&&(this._styleDirty=!1,this.style.update(this._classes,this._classOptions),this._classOptions=null,this.style._recalculate(this.transform.zoom)),this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.rotating,zooming:this.zooming}),this.fire("render"),this.loaded()&&!this._loaded&&(this._loaded=!0,this.fire("load")),this._frameId=null,this.animationLoop.stopped()||(this._styleDirty=!0),(this._sourcesDirty||this._repaint||this._styleDirty)&&this._rerender(),this},e.prototype.remove=function(){this._hash&&this._hash.remove(),browser.cancelFrame(this._frameId),this.setStyle(null),"undefined"!=typeof window&&(window.removeEventListener("resize",this._onWindowResize,!1),window.removeEventListener("online",this._onWindowOnline,!1));var t=this.painter.gl.getExtension("WEBGL_lose_context");t&&t.loseContext(),removeNode(this._canvasContainer),removeNode(this._controlContainer),this._container.classList.remove("mapboxgl-map"),this.fire("remove")},e.prototype._rerender=function(){this.style&&!this._frameId&&(this._frameId=browser.frame(this._render))},e.prototype._onWindowOnline=function(){this._update()},e.prototype._onWindowResize=function(){this._trackResize&&this.stop().resize()._update()},o.showTileBoundaries.get=function(){return!!this._showTileBoundaries},o.showTileBoundaries.set=function(t){this._showTileBoundaries!==t&&(this._showTileBoundaries=t,this._update())},o.showCollisionBoxes.get=function(){return!!this._showCollisionBoxes},o.showCollisionBoxes.set=function(t){this._showCollisionBoxes!==t&&(this._showCollisionBoxes=t,this.style._redoPlacement())},o.showOverdrawInspector.get=function(){return!!this._showOverdrawInspector},o.showOverdrawInspector.set=function(t){this._showOverdrawInspector!==t&&(this._showOverdrawInspector=t,this._update())},o.repaint.get=function(){return!!this._repaint},o.repaint.set=function(t){this._repaint=t,this._update()},o.vertices.get=function(){return!!this._vertices},o.vertices.set=function(t){this._vertices=t,this._update()},e.prototype._onData=function(t){this._update("style"===t.dataType),this.fire(t.dataType+"data",t)},e.prototype._onDataLoading=function(t){this.fire(t.dataType+"dataloading",t)},Object.defineProperties(e.prototype,o),e}(Camera);module.exports=Map; -},{"../geo/lng_lat":62,"../geo/lng_lat_bounds":63,"../geo/transform":64,"../render/painter":77,"../style/animation_loop":143,"../style/style":146,"../util/browser":192,"../util/dom":199,"../util/util":212,"../util/window":194,"./bind_handlers":171,"./camera":172,"./control/attribution_control":173,"./control/logo_control":176,"./hash":186,"mapbox-gl-supported":22,"point-geometry":26}],188:[function(require,module,exports){ -"use strict";var DOM=require("../util/dom"),LngLat=require("../geo/lng_lat"),Point=require("point-geometry"),Marker=function(t,e){this._offset=Point.convert(e&&e.offset||[0,0]),this._update=this._update.bind(this),this._onMapClick=this._onMapClick.bind(this),t||(t=DOM.create("div")),t.classList.add("mapboxgl-marker"),this._element=t,this._popup=null};Marker.prototype.addTo=function(t){return this.remove(),this._map=t,t.getCanvasContainer().appendChild(this._element),t.on("move",this._update),t.on("moveend",this._update),this._update(),this._map.on("click",this._onMapClick),this},Marker.prototype.remove=function(){return this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),this._map=null),DOM.remove(this._element),this._popup&&this._popup.remove(),this},Marker.prototype.getLngLat=function(){return this._lngLat},Marker.prototype.setLngLat=function(t){return this._lngLat=LngLat.convert(t),this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this},Marker.prototype.getElement=function(){return this._element},Marker.prototype.setPopup=function(t){return this._popup&&(this._popup.remove(),this._popup=null),t&&(this._popup=t,this._popup.setLngLat(this._lngLat)),this},Marker.prototype._onMapClick=function(t){var e=t.originalEvent.target,p=this._element;this._popup&&(e===p||p.contains(e))&&this.togglePopup()},Marker.prototype.getPopup=function(){return this._popup},Marker.prototype.togglePopup=function(){var t=this._popup;t&&(t.isOpen()?t.remove():t.addTo(this._map))},Marker.prototype._update=function(t){if(this._map){var e=this._map.project(this._lngLat)._add(this._offset);t&&"moveend"!==t.type||(e=e.round()),DOM.setTransform(this._element,"translate("+e.x+"px, "+e.y+"px)")}},module.exports=Marker; -},{"../geo/lng_lat":62,"../util/dom":199,"point-geometry":26}],189:[function(require,module,exports){ -"use strict";function normalizeOffset(t){if(t){if("number"==typeof t){var o=Math.round(Math.sqrt(.5*Math.pow(t,2)));return{top:new Point(0,t),"top-left":new Point(o,o),"top-right":new Point(-o,o),bottom:new Point(0,-t),"bottom-left":new Point(o,-o),"bottom-right":new Point(-o,-o),left:new Point(t,0),right:new Point(-t,0)}}if(isPointLike(t)){var e=Point.convert(t);return{top:e,"top-left":e,"top-right":e,bottom:e,"bottom-left":e,"bottom-right":e,left:e,right:e}}return{top:Point.convert(t.top||[0,0]),"top-left":Point.convert(t["top-left"]||[0,0]),"top-right":Point.convert(t["top-right"]||[0,0]),bottom:Point.convert(t.bottom||[0,0]),"bottom-left":Point.convert(t["bottom-left"]||[0,0]),"bottom-right":Point.convert(t["bottom-right"]||[0,0]),left:Point.convert(t.left||[0,0]),right:Point.convert(t.right||[0,0])}}return normalizeOffset(new Point(0,0))}function isPointLike(t){return t instanceof Point||Array.isArray(t)}var util=require("../util/util"),Evented=require("../util/evented"),DOM=require("../util/dom"),LngLat=require("../geo/lng_lat"),Point=require("point-geometry"),window=require("../util/window"),defaultOptions={closeButton:!0,closeOnClick:!0},Popup=function(t){function o(o){t.call(this),this.options=util.extend(Object.create(defaultOptions),o),util.bindAll(["_update","_onClickClose"],this)}return t&&(o.__proto__=t),o.prototype=Object.create(t&&t.prototype),o.prototype.constructor=o,o.prototype.addTo=function(t){return this._map=t,this._map.on("move",this._update),this.options.closeOnClick&&this._map.on("click",this._onClickClose),this._update(),this},o.prototype.isOpen=function(){return!!this._map},o.prototype.remove=function(){return this._content&&this._content.parentNode&&this._content.parentNode.removeChild(this._content),this._container&&(this._container.parentNode.removeChild(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("click",this._onClickClose),delete this._map),this.fire("close"),this},o.prototype.getLngLat=function(){return this._lngLat},o.prototype.setLngLat=function(t){return this._lngLat=LngLat.convert(t),this._update(),this},o.prototype.setText=function(t){return this.setDOMContent(window.document.createTextNode(t))},o.prototype.setHTML=function(t){var o,e=window.document.createDocumentFragment(),n=window.document.createElement("body");for(n.innerHTML=t;;){if(o=n.firstChild,!o)break;e.appendChild(o)}return this.setDOMContent(e)},o.prototype.setDOMContent=function(t){return this._createContent(),this._content.appendChild(t),this._update(),this},o.prototype._createContent=function(){this._content&&this._content.parentNode&&this._content.parentNode.removeChild(this._content),this._content=DOM.create("div","mapboxgl-popup-content",this._container),this.options.closeButton&&(this._closeButton=DOM.create("button","mapboxgl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClickClose))},o.prototype._update=function(){if(this._map&&this._lngLat&&this._content){this._container||(this._container=DOM.create("div","mapboxgl-popup",this._map.getContainer()),this._tip=DOM.create("div","mapboxgl-popup-tip",this._container),this._container.appendChild(this._content));var t=this.options.anchor,o=normalizeOffset(this.options.offset),e=this._map.project(this._lngLat).round();if(!t){var n=this._container.offsetWidth,i=this._container.offsetHeight;t=e.y+o.bottom.ythis._map.transform.height-i?["bottom"]:[],e.xthis._map.transform.width-n/2&&t.push("right"),t=0===t.length?"bottom":t.join("-")}var r=e.add(o[t]),s={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%)"},p=this._container.classList;for(var a in s)p.remove("mapboxgl-popup-anchor-"+a);p.add("mapboxgl-popup-anchor-"+t),DOM.setTransform(this._container,s[t]+" translate("+r.x+"px,"+r.y+"px)")}},o.prototype._onClickClose=function(){this.remove()},o}(Evented);module.exports=Popup; -},{"../geo/lng_lat":62,"../util/dom":199,"../util/evented":200,"../util/util":212,"../util/window":194,"point-geometry":26}],190:[function(require,module,exports){ -"use strict";var Actor=function(t,e,a){this.target=t,this.parent=e,this.mapId=a,this.callbacks={},this.callbackID=0,this.receive=this.receive.bind(this),this.target.addEventListener("message",this.receive,!1)};Actor.prototype.send=function(t,e,a,r,s){var i=a?this.mapId+":"+this.callbackID++:null;a&&(this.callbacks[i]=a),this.target.postMessage({targetMapId:s,sourceMapId:this.mapId,type:t,id:String(i),data:e},r)},Actor.prototype.receive=function(t){var e,a=this,r=t.data,s=r.id;if(!r.targetMapId||this.mapId===r.targetMapId){var i=function(t,e,r){a.target.postMessage({sourceMapId:a.mapId,type:"",id:String(s),error:t?String(t):null,data:e},r)};if(""===r.type)e=this.callbacks[r.id],delete this.callbacks[r.id],e&&e(r.error||null,r.data);else if("undefined"!=typeof r.id&&this.parent[r.type])this.parent[r.type](r.sourceMapId,r.data,i);else if("undefined"!=typeof r.id&&this.parent.getWorkerSource){var p=r.type.split("."),d=this.parent.getWorkerSource(r.sourceMapId,p[0]);d[p[1]](r.data,i)}else this.parent[r.type](r.data)}},Actor.prototype.remove=function(){this.target.removeEventListener("message",this.receive,!1)},module.exports=Actor; -},{}],191:[function(require,module,exports){ -"use strict";function sameOrigin(e){var t=window.document.createElement("a");return t.href=e,t.protocol===window.document.location.protocol&&t.host===window.document.location.host}var window=require("./window");exports.getJSON=function(e,t){var n=new window.XMLHttpRequest;return n.open("GET",e,!0),n.setRequestHeader("Accept","application/json"),n.onerror=function(e){t(e)},n.onload=function(){if(n.status>=200&&n.status<300&&n.response){var e;try{e=JSON.parse(n.response)}catch(e){return t(e)}t(null,e)}else t(new Error(n.statusText))},n.send(),n},exports.getArrayBuffer=function(e,t){var n=new window.XMLHttpRequest;return n.open("GET",e,!0),n.responseType="arraybuffer",n.onerror=function(e){t(e)},n.onload=function(){return 0===n.response.byteLength&&200===n.status?t(new Error("http status 200 returned without content.")):void(n.status>=200&&n.status<300&&n.response?t(null,{data:n.response,cacheControl:n.getResponseHeader("Cache-Control"),expires:n.getResponseHeader("Expires")}):t(new Error(n.statusText)))},n.send(),n};var transparentPngUrl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";exports.getImage=function(e,t){return exports.getArrayBuffer(e,function(e,n){if(e)return t(e);var r=new window.Image,o=window.URL||window.webkitURL;r.onload=function(){t(null,r),o.revokeObjectURL(r.src)};var a=new window.Blob([new Uint8Array(n.data)],{type:"image/png"});r.cacheControl=n.cacheControl,r.expires=n.expires,r.src=n.data.byteLength?o.createObjectURL(a):transparentPngUrl})},exports.getVideo=function(e,t){var n=window.document.createElement("video");n.onloadstart=function(){t(null,n)};for(var r=0;r=a+n?e.call(t,1):(e.call(t,(i-a)/n),exports.frame(o)))}if(!n)return e.call(t,1),null;var r=!1,a=module.exports.now();return exports.frame(o),function(){r=!0}},exports.getImageData=function(e){var n=window.document.createElement("canvas"),t=n.getContext("2d");return n.width=e.width,n.height=e.height,t.drawImage(e,0,0),t.getImageData(0,0,e.width,e.height).data},exports.supported=require("mapbox-gl-supported"),exports.hardwareConcurrency=window.navigator.hardwareConcurrency||4,Object.defineProperty(exports,"devicePixelRatio",{get:function(){return window.devicePixelRatio}}),exports.supportsWebp=!1;var webpImgTest=window.document.createElement("img");webpImgTest.onload=function(){exports.supportsWebp=!0},webpImgTest.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA="; -},{"./window":194,"mapbox-gl-supported":22}],193:[function(require,module,exports){ -"use strict";var WebWorkify=require("webworkify"),window=require("../window"),workerURL=window.URL.createObjectURL(new WebWorkify(require("../../source/worker"),{bare:!0}));module.exports=function(){return new window.Worker(workerURL)}; -},{"../../source/worker":98,"../window":194,"webworkify":41}],194:[function(require,module,exports){ -"use strict";module.exports=self; -},{}],195:[function(require,module,exports){ -"use strict";function compareAreas(e,r){return r.area-e.area}var quickselect=require("quickselect"),calculateSignedArea=require("./util").calculateSignedArea;module.exports=function(e,r){var a=e.length;if(a<=1)return[e];for(var t,u,c=[],i=0;i1)for(var n=0;n0||this._oneTimeListeners&&this._oneTimeListeners[e]&&this._oneTimeListeners[e].length>0||this._eventedParent&&this._eventedParent.listens(e)},Evented.prototype.setEventedParent=function(e,t){return this._eventedParent=e,this._eventedParentData=t,this},module.exports=Evented; -},{"./util":212}],201:[function(require,module,exports){ -"use strict";function compareMax(e,t){return t.max-e.max}function Cell(e,t,n,r){this.p=new Point(e,t),this.h=n,this.d=pointToPolygonDist(this.p,r),this.max=this.d+this.h*Math.SQRT2}function pointToPolygonDist(e,t){for(var n=!1,r=1/0,o=0;oe.y!=h.y>e.y&&e.x<(h.x-a.x)*(e.y-a.y)/(h.y-a.y)+a.x&&(n=!n),r=Math.min(r,distToSegmentSquared(e,a,h))}return(n?1:-1)*Math.sqrt(r)}function getCentroidCell(e){for(var t=0,n=0,r=0,o=e[0],i=0,l=o.length,u=l-1;ii)&&(i=a.x),(!s||a.y>l)&&(l=a.y)}var h=i-r,p=l-o,y=Math.min(h,p),x=y/2,d=new Queue(null,compareMax);if(0===y)return[r,o];for(var g=r;gm.d||!m.d)&&(m=v,n&&console.log("found best %d after %d probes",Math.round(1e4*v.d)/1e4,c)),v.max-m.d<=t||(x=v.h/2,d.push(new Cell(v.p.x-x,v.p.y-x,x,e)),d.push(new Cell(v.p.x+x,v.p.y-x,x,e)),d.push(new Cell(v.p.x-x,v.p.y+x,x,e)),d.push(new Cell(v.p.x+x,v.p.y+x,x,e)),c+=4)}return n&&(console.log("num probes: "+c),console.log("best distance: "+m.d)),m.p}; -},{"./intersection_tests":205,"point-geometry":26,"tinyqueue":30}],202:[function(require,module,exports){ -"use strict";var WorkerPool=require("./worker_pool"),globalWorkerPool;module.exports=function(){return globalWorkerPool||(globalWorkerPool=new WorkerPool),globalWorkerPool}; -},{"./worker_pool":215}],203:[function(require,module,exports){ -"use strict";function Glyphs(a,e){this.stacks=a.readFields(readFontstacks,[],e)}function readFontstacks(a,e,r){if(1===a){var t=r.readMessage(readFontstack,{glyphs:{}});e.push(t)}}function readFontstack(a,e,r){if(1===a)e.name=r.readString();else if(2===a)e.range=r.readString();else if(3===a){var t=r.readMessage(readGlyph,{});e.glyphs[t.id]=t}}function readGlyph(a,e,r){1===a?e.id=r.readVarint():2===a?e.bitmap=r.readBytes():3===a?e.width=r.readVarint():4===a?e.height=r.readVarint():5===a?e.left=r.readSVarint():6===a?e.top=r.readSVarint():7===a&&(e.advance=r.readVarint())}module.exports=Glyphs; -},{}],204:[function(require,module,exports){ -"use strict";function interpolate(t,e,n){return t*(1-n)+e*n}module.exports=interpolate,interpolate.number=interpolate,interpolate.vec2=function(t,e,n){return[interpolate(t[0],e[0],n),interpolate(t[1],e[1],n)]},interpolate.color=function(t,e,n){return[interpolate(t[0],e[0],n),interpolate(t[1],e[1],n),interpolate(t[2],e[2],n),interpolate(t[3],e[3],n)]},interpolate.array=function(t,e,n){return t.map(function(t,r){return interpolate(t,e[r],n)})}; -},{}],205:[function(require,module,exports){ -"use strict";function polygonIntersectsPolygon(n,t){for(var e=0;e=3)for(var u=0;u1){if(lineIntersectsLine(n,t))return!0;for(var r=0;r1?n.distSqr(e):n.distSqr(e.sub(t)._mult(o)._add(t))}function multiPolygonContainsPoint(n,t){for(var e,r,o,i=!1,l=0;lt.y!=o.y>t.y&&t.x<(o.x-r.x)*(t.y-r.y)/(o.y-r.y)+r.x&&(i=!i)}return i}function polygonContainsPoint(n,t){for(var e=!1,r=0,o=n.length-1;rt.y!=l.y>t.y&&t.x<(l.x-i.x)*(t.y-i.y)/(l.y-i.y)+i.x&&(e=!e)}return e}var isCounterClockwise=require("./util").isCounterClockwise;module.exports={multiPolygonIntersectsBufferedMultiPoint:multiPolygonIntersectsBufferedMultiPoint,multiPolygonIntersectsMultiPolygon:multiPolygonIntersectsMultiPolygon,multiPolygonIntersectsBufferedMultiLine:multiPolygonIntersectsBufferedMultiLine,polygonIntersectsPolygon:polygonIntersectsPolygon,distToSegmentSquared:distToSegmentSquared}; -},{"./util":212}],206:[function(require,module,exports){ -"use strict";var unicodeBlockLookup={"Latin-1 Supplement":function(n){return n>=128&&n<=255},"Hangul Jamo":function(n){return n>=4352&&n<=4607},"Unified Canadian Aboriginal Syllabics":function(n){return n>=5120&&n<=5759},"Unified Canadian Aboriginal Syllabics Extended":function(n){return n>=6320&&n<=6399},"General Punctuation":function(n){return n>=8192&&n<=8303},"Letterlike Symbols":function(n){return n>=8448&&n<=8527},"Number Forms":function(n){return n>=8528&&n<=8591},"Miscellaneous Technical":function(n){return n>=8960&&n<=9215},"Control Pictures":function(n){return n>=9216&&n<=9279},"Optical Character Recognition":function(n){return n>=9280&&n<=9311},"Enclosed Alphanumerics":function(n){return n>=9312&&n<=9471},"Geometric Shapes":function(n){return n>=9632&&n<=9727},"Miscellaneous Symbols":function(n){return n>=9728&&n<=9983},"Miscellaneous Symbols and Arrows":function(n){return n>=11008&&n<=11263},"CJK Radicals Supplement":function(n){return n>=11904&&n<=12031},"Kangxi Radicals":function(n){return n>=12032&&n<=12255},"Ideographic Description Characters":function(n){return n>=12272&&n<=12287},"CJK Symbols and Punctuation":function(n){return n>=12288&&n<=12351},Hiragana:function(n){return n>=12352&&n<=12447},Katakana:function(n){return n>=12448&&n<=12543},Bopomofo:function(n){return n>=12544&&n<=12591},"Hangul Compatibility Jamo":function(n){return n>=12592&&n<=12687},Kanbun:function(n){return n>=12688&&n<=12703},"Bopomofo Extended":function(n){return n>=12704&&n<=12735},"CJK Strokes":function(n){return n>=12736&&n<=12783},"Katakana Phonetic Extensions":function(n){return n>=12784&&n<=12799},"Enclosed CJK Letters and Months":function(n){return n>=12800&&n<=13055},"CJK Compatibility":function(n){return n>=13056&&n<=13311},"CJK Unified Ideographs Extension A":function(n){return n>=13312&&n<=19903},"Yijing Hexagram Symbols":function(n){return n>=19904&&n<=19967},"CJK Unified Ideographs":function(n){return n>=19968&&n<=40959},"Yi Syllables":function(n){return n>=40960&&n<=42127},"Yi Radicals":function(n){return n>=42128&&n<=42191},"Hangul Jamo Extended-A":function(n){return n>=43360&&n<=43391},"Hangul Syllables":function(n){return n>=44032&&n<=55215},"Hangul Jamo Extended-B":function(n){return n>=55216&&n<=55295},"Private Use Area":function(n){return n>=57344&&n<=63743},"CJK Compatibility Ideographs":function(n){return n>=63744&&n<=64255},"Vertical Forms":function(n){return n>=65040&&n<=65055},"CJK Compatibility Forms":function(n){return n>=65072&&n<=65103},"Small Form Variants":function(n){return n>=65104&&n<=65135},"Halfwidth and Fullwidth Forms":function(n){return n>=65280&&n<=65519}};module.exports=unicodeBlockLookup; -},{}],207:[function(require,module,exports){ -"use strict";var LRUCache=function(t,e){this.max=t,this.onRemove=e,this.reset()};LRUCache.prototype.reset=function(){var t=this;for(var e in t.data)t.onRemove(t.data[e]);return this.data={},this.order=[],this},LRUCache.prototype.add=function(t,e){if(this.has(t))this.order.splice(this.order.indexOf(t),1),this.data[t]=e,this.order.push(t);else if(this.data[t]=e,this.order.push(t),this.order.length>this.max){var r=this.get(this.order[0]);r&&this.onRemove(r)}return this},LRUCache.prototype.has=function(t){return t in this.data},LRUCache.prototype.keys=function(){return this.order},LRUCache.prototype.get=function(t){if(!this.has(t))return null;var e=this.data[t];return delete this.data[t],this.order.splice(this.order.indexOf(t),1),e},LRUCache.prototype.getWithoutRemoving=function(t){if(!this.has(t))return null;var e=this.data[t];return e},LRUCache.prototype.remove=function(t){if(!this.has(t))return this;var e=this.data[t];return delete this.data[t],this.onRemove(e),this.order.splice(this.order.indexOf(t),1),this},LRUCache.prototype.setMaxSize=function(t){var e=this;for(this.max=t;this.order.length>this.max;){var r=e.get(e.order[0]);r&&e.onRemove(r)}return this},module.exports=LRUCache; -},{}],208:[function(require,module,exports){ -"use strict";function makeAPIURL(r,e){var t=parseUrl(config.API_URL);if(r.protocol=t.protocol,r.authority=t.authority,!config.REQUIRE_ACCESS_TOKEN)return formatUrl(r);if(e=e||config.ACCESS_TOKEN,!e)throw new Error("An API access token is required to use Mapbox GL. "+help);if("s"===e[0])throw new Error("Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). "+help);return r.params.push("access_token="+e),formatUrl(r)}function isMapboxURL(r){return 0===r.indexOf("mapbox:")}function replaceTempAccessToken(r){for(var e=0;e=2||512===t?"@2x":"",s=browser.supportsWebp?".webp":"$1";return o.path=o.path.replace(imageExtensionRe,""+a+s),replaceTempAccessToken(o.params),formatUrl(o)};var urlRe=/^(\w+):\/\/([^\/?]+)(\/[^?]+)?\??(.+)?/; -},{"./browser":192,"./config":196}],209:[function(require,module,exports){ -"use strict";var isChar=require("./is_char_in_unicode_block");module.exports.allowsIdeographicBreaking=function(a){for(var i=0,r=a;i=65097&&a<=65103)||(!!isChar["CJK Compatibility Ideographs"](a)||(!!isChar["CJK Compatibility"](a)||(!!isChar["CJK Radicals Supplement"](a)||(!!isChar["CJK Strokes"](a)||(!(!isChar["CJK Symbols and Punctuation"](a)||a>=12296&&a<=12305||a>=12308&&a<=12319||12336===a)||(!!isChar["CJK Unified Ideographs Extension A"](a)||(!!isChar["CJK Unified Ideographs"](a)||(!!isChar["Enclosed CJK Letters and Months"](a)||(!!isChar["Hangul Compatibility Jamo"](a)||(!!isChar["Hangul Jamo Extended-A"](a)||(!!isChar["Hangul Jamo Extended-B"](a)||(!!isChar["Hangul Jamo"](a)||(!!isChar["Hangul Syllables"](a)||(!!isChar.Hiragana(a)||(!!isChar["Ideographic Description Characters"](a)||(!!isChar.Kanbun(a)||(!!isChar["Kangxi Radicals"](a)||(!!isChar["Katakana Phonetic Extensions"](a)||(!(!isChar.Katakana(a)||12540===a)||(!(!isChar["Halfwidth and Fullwidth Forms"](a)||65288===a||65289===a||65293===a||a>=65306&&a<=65310||65339===a||65341===a||65343===a||a>=65371&&a<=65503||65507===a||a>=65512&&a<=65519)||(!(!isChar["Small Form Variants"](a)||a>=65112&&a<=65118||a>=65123&&a<=65126)||(!!isChar["Unified Canadian Aboriginal Syllabics"](a)||(!!isChar["Unified Canadian Aboriginal Syllabics Extended"](a)||(!!isChar["Vertical Forms"](a)||(!!isChar["Yijing Hexagram Symbols"](a)||(!!isChar["Yi Syllables"](a)||!!isChar["Yi Radicals"](a))))))))))))))))))))))))))))))},exports.charHasNeutralVerticalOrientation=function(a){return!(!isChar["Latin-1 Supplement"](a)||167!==a&&169!==a&&174!==a&&177!==a&&188!==a&&189!==a&&190!==a&&215!==a&&247!==a)||(!(!isChar["General Punctuation"](a)||8214!==a&&8224!==a&&8225!==a&&8240!==a&&8241!==a&&8251!==a&&8252!==a&&8258!==a&&8263!==a&&8264!==a&&8265!==a&&8273!==a)||(!!isChar["Letterlike Symbols"](a)||(!!isChar["Number Forms"](a)||(!(!isChar["Miscellaneous Technical"](a)||!(a>=8960&&a<=8967||a>=8972&&a<=8991||a>=8996&&a<=9e3||9003===a||a>=9085&&a<=9114||a>=9150&&a<=9165||9167===a||a>=9169&&a<=9179||a>=9186&&a<=9215))||(!(!isChar["Control Pictures"](a)||9251===a)||(!!isChar["Optical Character Recognition"](a)||(!!isChar["Enclosed Alphanumerics"](a)||(!!isChar["Geometric Shapes"](a)||(!(!isChar["Miscellaneous Symbols"](a)||a>=9754&&a<=9759)||(!(!isChar["Miscellaneous Symbols and Arrows"](a)||!(a>=11026&&a<=11055||a>=11088&&a<=11097||a>=11192&&a<=11243))||(!!isChar["CJK Symbols and Punctuation"](a)||(!!isChar.Katakana(a)||(!!isChar["Private Use Area"](a)||(!!isChar["CJK Compatibility Forms"](a)||(!!isChar["Small Form Variants"](a)||(!!isChar["Halfwidth and Fullwidth Forms"](a)||(8734===a||8756===a||8757===a||a>=9984&&a<=10087||a>=10102&&a<=10131||65532===a||65533===a)))))))))))))))))},exports.charHasRotatedVerticalOrientation=function(a){return!(exports.charHasUprightVerticalOrientation(a)||exports.charHasNeutralVerticalOrientation(a))}; -},{"./is_char_in_unicode_block":206}],210:[function(require,module,exports){ -"use strict";function createStructArrayType(t){var e=JSON.stringify(t);if(structArrayTypeCache[e])return structArrayTypeCache[e];var r=void 0===t.alignment?1:t.alignment,i=0,n=0,a=["Uint8"],o=t.members.map(function(t){a.indexOf(t.type)<0&&a.push(t.type);var e=sizeOf(t.type),o=i=align(i,Math.max(r,e)),s=t.components||1;return n=Math.max(n,e),i+=e*s,{name:t.name,type:t.type,components:s,offset:o}}),s=align(i,Math.max(n,r)),p=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Struct);p.prototype.alignment=r,p.prototype.size=s;for(var y=0,c=o;ythis.capacity){this.capacity=Math.max(t,Math.floor(this.capacity*RESIZE_MULTIPLIER),DEFAULT_CAPACITY),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var e=this.uint8;this._refreshViews(),e&&this.uint8.set(e)}},StructArray.prototype._refreshViews=function(){for(var t=this,e=0,r=t._usedTypes;e=1)return 1;var e=r*r,t=e*r;return 4*(r<.5?t:3*(r-e)+t-.75)},exports.bezier=function(r,e,t,n){var o=new UnitBezier(r,e,t,n);return function(r){return o.solve(r)}},exports.ease=exports.bezier(.25,.1,.25,1),exports.clamp=function(r,e,t){return Math.min(t,Math.max(e,r))},exports.wrap=function(r,e,t){var n=t-e,o=((r-e)%n+n)%n+e;return o===e?t:o},exports.asyncAll=function(r,e,t){if(!r.length)return t(null,[]);var n=r.length,o=new Array(r.length),a=null;r.forEach(function(r,i){e(r,function(r,e){r&&(a=r),o[i]=e,0===--n&&t(a,o)})})},exports.values=function(r){var e=[];for(var t in r)e.push(r[t]);return e},exports.keysDifference=function(r,e){var t=[];for(var n in r)n in e||t.push(n);return t},exports.extend=function(r,e,t,n){for(var o=arguments,a=1;a=0)return!0;return!1};var warnOnceHistory={};exports.warnOnce=function(r){warnOnceHistory[r]||("undefined"!=typeof console&&console.warn(r),warnOnceHistory[r]=!0)},exports.isCounterClockwise=function(r,e,t){return(t.y-r.y)*(e.x-r.x)>(e.y-r.y)*(t.x-r.x)},exports.calculateSignedArea=function(r){for(var e=0,t=0,n=r.length,o=n-1,a=void 0,i=void 0;t0||Math.abs(e.y-t.y)>0)&&Math.abs(exports.calculateSignedArea(r))>.01},exports.sphericalToCartesian=function(r){var e=r[0],t=r[1],n=r[2];return t+=90,t*=Math.PI/180,n*=Math.PI/180,[e*Math.cos(t)*Math.sin(n),e*Math.sin(t)*Math.sin(n),e*Math.cos(n)]},exports.parseCacheControl=function(r){var e=/(?:^|(?:\s*\,\s*))([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,t={};if(r.replace(e,function(r,e,n,o){var a=n||o;return t[e]=!a||a.toLowerCase(),""}),t["max-age"]){var n=parseInt(t["max-age"],10);isNaN(n)?delete t["max-age"]:t["max-age"]=n}return t}; -},{"../geo/coordinate":61,"@mapbox/unitbezier":3,"point-geometry":26}],213:[function(require,module,exports){ -"use strict";var Feature=function(e,t,r,o){this.type="Feature",this._vectorTileFeature=e,e._z=t,e._x=r,e._y=o,this.properties=e.properties,null!=e.id&&(this.id=e.id)},prototypeAccessors={geometry:{}};prototypeAccessors.geometry.get=function(){return void 0===this._geometry&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry},prototypeAccessors.geometry.set=function(e){this._geometry=e},Feature.prototype.toJSON=function(){var e=this,t={geometry:this.geometry};for(var r in e)"_geometry"!==r&&"_vectorTileFeature"!==r&&(t[r]=e[r]);return t},Object.defineProperties(Feature.prototype,prototypeAccessors),module.exports=Feature; -},{}],214:[function(require,module,exports){ -"use strict";var scriptDetection=require("./script_detection");module.exports=function(t){for(var o="",e=0;e":"﹀","?":"︖","@":"@","[":"﹇","\\":"\","]":"﹈","^":"^",_:"︳","`":"`","{":"︷","|":"―","}":"︸","~":"~","¢":"¢","£":"£","¥":"¥","¦":"¦","¬":"¬","¯":" ̄","–":"︲","—":"︱","‘":"﹃","’":"﹄","“":"﹁","”":"﹂","…":"︙","‧":"・","₩":"₩","、":"︑","。":"︒","〈":"︿","〉":"﹀","《":"︽","》":"︾","「":"﹁","」":"﹂","『":"﹃","』":"﹄","【":"︻","】":"︼","〔":"︹","〕":"︺","〖":"︗","〗":"︘","!":"︕","(":"︵",")":"︶",",":"︐","-":"︲",".":"・",":":"︓",";":"︔","<":"︿",">":"﹀","?":"︖","[":"﹇","]":"﹈","_":"︳","{":"︷","|":"―","}":"︸","⦅":"︵","⦆":"︶","。":"︒","「":"﹁","」":"﹂"}; -},{"./script_detection":209}],215:[function(require,module,exports){ -"use strict";var WebWorker=require("./web_worker"),WorkerPool=function(){this.active={}};WorkerPool.prototype.acquire=function(r){var e=this;if(!this.workers){var o=require("../").workerCount;for(this.workers=[];this.workers.length1&&void 0!==arguments[1]?arguments[1]:null,places=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,dataLatitude=div.dataset.latitude,dataLongitude=div.dataset.longitude,dataId=div.dataset.id,data=window["geojson"+dataId];if(null==data&&(data={type:"FeatureCollection",features:[{type:"Feature",geometry:{type:"Point",coordinates:[dataLongitude,dataLatitude]},properties:{title:"Current Location",icon:"circle-stroked",uri:"current-location"}}]}),null!=places){var _iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=places[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var place=_step.value,placeLongitude=(0,_parseLocation2.default)(place.location).longitude,placeLatitude=(0,_parseLocation2.default)(place.location).latitude;data.features.push({type:"Feature",geometry:{type:"Point",coordinates:[placeLongitude,placeLatitude]},properties:{title:place.name,icon:"circle",uri:place.slug}})}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{!_iteratorNormalCompletion&&_iterator.return&&_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}}null!=position&&(dataLongitude=position.coords.longitude,dataLatitude=position.coords.latitude);var map=new _mapboxGl2.default.Map({container:div,style:"mapbox://styles/mapbox/streets-v9",center:[dataLongitude,dataLatitude],zoom:15});if(null==position&&map.scrollZoom.disable(),map.addControl(new _mapboxGl2.default.NavigationControl),div.appendChild(makeMapMenu(map)),map.on("load",function(){map.addSource("points",{type:"geojson",data:data}),map.addLayer({id:"points",interactive:!0,type:"symbol",source:"points",layout:{"icon-image":"{icon}-15","text-field":"{title}","text-offset":[0,1]}})}),null!=position&&map.on("click",function(e){var features=map.queryRenderedFeatures(e.point,{layer:["points"]});features.length&&(map.flyTo({center:features[0].geometry.coordinates}),(0,_selectPlace2.default)(features[0].properties.uri))}),data.features&&data.features.length>1){var bounds=new _mapboxGl2.default.LngLatBounds,_iteratorNormalCompletion2=!0,_didIteratorError2=!1,_iteratorError2=void 0;try{for(var _step2,_iterator2=data.features[Symbol.iterator]();!(_iteratorNormalCompletion2=(_step2=_iterator2.next()).done);_iteratorNormalCompletion2=!0){var feature=_step2.value;bounds.extend(feature.geometry.coordinates)}}catch(err){_didIteratorError2=!0,_iteratorError2=err}finally{try{!_iteratorNormalCompletion2&&_iterator2.return&&_iterator2.return()}finally{if(_didIteratorError2)throw _iteratorError2}}map.fitBounds(bounds,{padding:65})}return map}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=addMap;var _mapboxGl2=_interopRequireDefault(__webpack_require__(4)),_parseLocation2=_interopRequireDefault(__webpack_require__(0)),_selectPlace2=_interopRequireDefault(__webpack_require__(3));_mapboxGl2.default.accessToken="pk.eyJ1Ijoiam9ubnliYXJuZXMiLCJhIjoiY2l2cDhjYW04MDAwcjJ0cG1uZnhqcm82ayJ9.qA2zeVA-nsoMh9IFrd5KQw";var titlecase=function(string){return string.split("-").map(function(_ref){var _ref2=_toArray(_ref),first=_ref2[0],rest=_ref2.slice(1);return first.toUpperCase()+rest.join("").toLowerCase()}).join(" ")},addMapTypeOption=function(map,menu,option){var checked=arguments.length>3&&void 0!==arguments[3]&&arguments[3],input=document.createElement("input");input.setAttribute("id",option),input.setAttribute("type","radio"),input.setAttribute("name","toggle"),input.setAttribute("value",option),1==checked&&input.setAttribute("checked","checked"),input.addEventListener("click",function(){map.setStyle("mapbox://styles/mapbox/"+option+"-v9")});var label=document.createElement("label");label.setAttribute("for",option),label.appendChild(document.createTextNode(titlecase(option))),menu.appendChild(input),menu.appendChild(label)},makeMapMenu=function(map){var mapMenu=document.createElement("div");return mapMenu.classList.add("map-menu"),addMapTypeOption(map,mapMenu,"streets",!0),addMapTypeOption(map,mapMenu,"satellite-streets"),mapMenu}},,function(module,exports,__webpack_require__){"use strict";function selectPlaceInForm(uri){document.querySelector("select")&&("current-location"==uri?document.querySelector('select [id="option-coords"]').selected=!0:document.querySelector('select [value="'+uri+'"]').selected=!0)}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=selectPlaceInForm},function(module,exports,__webpack_require__){(function(global){var require;!function(f){module.exports=f()}(function(){return function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a="function"==typeof require&&require;if(!u&&a)return require(o,!0);if(i)return require(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n||e)},l,l.exports,e,t,n,r)}return n[o].exports}for(var i="function"==typeof require&&require,o=0;o0){for(var o=0,a=0,u=0;uh.maxh||t>h.maxw||i<=h.maxh&&t<=h.maxw&&(r=h.maxw*h.maxh-t*i)n.free)){if(i===n.h)return this.allocShelf(f,t,i,s);i>n.h||ic)&&(p=2*Math.max(t,c)),(uu)&&(l=2*Math.max(i,u)),this.resize(p,l),this.packOne(t,i,s)}return null},t.prototype.allocFreebin=function(t,e,i,s){var h=this.freebins.splice(t,1)[0];return h.id=s,h.w=e,h.h=i,h.refcount=0,this.bins[s]=h,this.ref(h),h},t.prototype.allocShelf=function(t,e,i,s){var n=this.shelves[t].alloc(e,i,s);return this.bins[s]=n,this.ref(n),n},t.prototype.getBin=function(t){return this.bins[t]},t.prototype.ref=function(t){if(1==++t.refcount){var e=t.h;this.stats[e]=1+(0|this.stats[e])}return t.refcount},t.prototype.unref=function(t){return 0===t.refcount?0:(0==--t.refcount&&(this.stats[t.h]--,delete this.bins[t.id],this.freebins.push(t)),t.refcount)},t.prototype.clear=function(){this.shelves=[],this.freebins=[],this.stats={},this.bins={},this.maxId=0},t.prototype.resize=function(t,e){this.w=t,this.h=e;for(var i=0;ithis.free||e>this.h)return null;var h=this.x;return this.x+=t,this.free-=t,new i(s,h,this.y,t,e,t,this.h)},e.prototype.resize=function(t){return this.free+=t-this.w,this.w=t,!0},t})},{}],3:[function(_dereq_,module,exports){function UnitBezier(t,i,e,r){this.cx=3*t,this.bx=3*(e-t)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*i,this.by=3*(r-i)-this.cy,this.ay=1-this.cy-this.by,this.p1x=t,this.p1y=r,this.p2x=e,this.p2y=r}module.exports=UnitBezier,UnitBezier.prototype.sampleCurveX=function(t){return((this.ax*t+this.bx)*t+this.cx)*t},UnitBezier.prototype.sampleCurveY=function(t){return((this.ay*t+this.by)*t+this.cy)*t},UnitBezier.prototype.sampleCurveDerivativeX=function(t){return(3*this.ax*t+2*this.bx)*t+this.cx},UnitBezier.prototype.solveCurveX=function(t,i){void 0===i&&(i=1e-6);var e,r,s,h,n;for(s=t,n=0;n<8;n++){if(h=this.sampleCurveX(s)-t,Math.abs(h)r)return r;for(;eh?e=s:r=s,s=.5*(r-e)+e}return s},UnitBezier.prototype.solve=function(t,i){return this.sampleCurveY(this.solveCurveX(t,i))}},{}],4:[function(_dereq_,module,exports){!function(e,t){t("object"==typeof exports&&void 0!==module?exports:e.WhooTS=e.WhooTS||{})}(this,function(e){function t(e,t,r,n,i,s){return s=s||{},e+"?"+["bbox="+o(r,n,i),"format="+(s.format||"image/png"),"service="+(s.service||"WMS"),"version="+(s.version||"1.1.1"),"request="+(s.request||"GetMap"),"srs="+(s.srs||"EPSG:3857"),"width="+(s.width||256),"height="+(s.height||256),"layers="+t].join("&")}function o(e,t,o){var n=r(256*e,256*(t=Math.pow(2,o)-t-1),o),i=r(256*(e+1),256*(t+1),o);return n[0]+","+n[1]+","+i[0]+","+i[1]}function r(e,t,o){var r=2*Math.PI*6378137/256/Math.pow(2,o);return[e*r-2*Math.PI*6378137/2,t*r-2*Math.PI*6378137/2]}e.getURL=t,e.getTileBBox=o,e.getMercCoords=r,Object.defineProperty(e,"__esModule",{value:!0})})},{}],5:[function(_dereq_,module,exports){"use strict";function earcut(e,n,r){r=r||2;var t=n&&n.length,i=t?n[0]*r:e.length,x=linkedList(e,0,i,r,!0),a=[];if(!x)return a;var o,l,u,s,v,f,y;if(t&&(x=eliminateHoles(e,n,x,r)),e.length>80*r){o=u=e[0],l=s=e[1];for(var d=r;du&&(u=v),f>s&&(s=f);y=Math.max(u-o,s-l)}return earcutLinked(x,a,r,o,l,y),a}function linkedList(e,n,r,t,i){var x,a;if(i===signedArea(e,n,r,t)>0)for(x=n;x=n;x-=t)a=insertNode(x,e[x],e[x+1],a);return a&&equals(a,a.next)&&(removeNode(a),a=a.next),a}function filterPoints(e,n){if(!e)return e;n||(n=e);var r,t=e;do{if(r=!1,t.steiner||!equals(t,t.next)&&0!==area(t.prev,t,t.next))t=t.next;else{if(removeNode(t),(t=n=t.prev)===t.next)return null;r=!0}}while(r||t!==n);return n}function earcutLinked(e,n,r,t,i,x,a){if(e){!a&&x&&indexCurve(e,t,i,x);for(var o,l,u=e;e.prev!==e.next;)if(o=e.prev,l=e.next,x?isEarHashed(e,t,i,x):isEar(e))n.push(o.i/r),n.push(e.i/r),n.push(l.i/r),removeNode(e),e=l.next,u=l.next;else if((e=l)===u){a?1===a?(e=cureLocalIntersections(e,n,r),earcutLinked(e,n,r,t,i,x,2)):2===a&&splitEarcut(e,n,r,t,i,x):earcutLinked(filterPoints(e),n,r,t,i,x,1);break}}}function isEar(e){var n=e.prev,r=e,t=e.next;if(area(n,r,t)>=0)return!1;for(var i=e.next.next;i!==e.prev;){if(pointInTriangle(n.x,n.y,r.x,r.y,t.x,t.y,i.x,i.y)&&area(i.prev,i,i.next)>=0)return!1;i=i.next}return!0}function isEarHashed(e,n,r,t){var i=e.prev,x=e,a=e.next;if(area(i,x,a)>=0)return!1;for(var o=i.xx.x?i.x>a.x?i.x:a.x:x.x>a.x?x.x:a.x,s=i.y>x.y?i.y>a.y?i.y:a.y:x.y>a.y?x.y:a.y,v=zOrder(o,l,n,r,t),f=zOrder(u,s,n,r,t),y=e.nextZ;y&&y.z<=f;){if(y!==e.prev&&y!==e.next&&pointInTriangle(i.x,i.y,x.x,x.y,a.x,a.y,y.x,y.y)&&area(y.prev,y,y.next)>=0)return!1;y=y.nextZ}for(y=e.prevZ;y&&y.z>=v;){if(y!==e.prev&&y!==e.next&&pointInTriangle(i.x,i.y,x.x,x.y,a.x,a.y,y.x,y.y)&&area(y.prev,y,y.next)>=0)return!1;y=y.prevZ}return!0}function cureLocalIntersections(e,n,r){var t=e;do{var i=t.prev,x=t.next.next;!equals(i,x)&&intersects(i,t,t.next,x)&&locallyInside(i,x)&&locallyInside(x,i)&&(n.push(i.i/r),n.push(t.i/r),n.push(x.i/r),removeNode(t),removeNode(t.next),t=e=x),t=t.next}while(t!==e);return t}function splitEarcut(e,n,r,t,i,x){var a=e;do{for(var o=a.next.next;o!==a.prev;){if(a.i!==o.i&&isValidDiagonal(a,o)){var l=splitPolygon(a,o);return a=filterPoints(a,a.next),l=filterPoints(l,l.next),earcutLinked(a,n,r,t,i,x),void earcutLinked(l,n,r,t,i,x)}o=o.next}a=a.next}while(a!==e)}function eliminateHoles(e,n,r,t){var i,x,a,o,l,u=[];for(i=0,x=n.length;i=t.next.y){var o=t.x+(x-t.y)*(t.next.x-t.x)/(t.next.y-t.y);if(o<=i&&o>a){if(a=o,o===i){if(x===t.y)return t;if(x===t.next.y)return t.next}r=t.x=t.x&&t.x>=s&&pointInTriangle(xr.x)&&locallyInside(t,e)&&(r=t,f=l),t=t.next;return r}function indexCurve(e,n,r,t){var i=e;do{null===i.z&&(i.z=zOrder(i.x,i.y,n,r,t)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next}while(i!==e);i.prevZ.nextZ=null,i.prevZ=null,sortLinked(i)}function sortLinked(e){var n,r,t,i,x,a,o,l,u=1;do{for(r=e,e=null,x=null,a=0;r;){for(a++,t=r,o=0,n=0;n0||l>0&&t;)0===o?(i=t,t=t.nextZ,l--):0!==l&&t?r.z<=t.z?(i=r,r=r.nextZ,o--):(i=t,t=t.nextZ,l--):(i=r,r=r.nextZ,o--),x?x.nextZ=i:e=i,i.prevZ=x,x=i;r=t}x.nextZ=null,u*=2}while(a>1);return e}function zOrder(e,n,r,t,i){return e=32767*(e-r)/i,n=32767*(n-t)/i,e=16711935&(e|e<<8),e=252645135&(e|e<<4),e=858993459&(e|e<<2),e=1431655765&(e|e<<1),n=16711935&(n|n<<8),n=252645135&(n|n<<4),n=858993459&(n|n<<2),n=1431655765&(n|n<<1),e|n<<1}function getLeftmost(e){var n=e,r=e;do{n.x=0&&(e-a)*(t-o)-(r-a)*(n-o)>=0&&(r-a)*(x-o)-(i-a)*(t-o)>=0}function isValidDiagonal(e,n){return e.next.i!==n.i&&e.prev.i!==n.i&&!intersectsPolygon(e,n)&&locallyInside(e,n)&&locallyInside(n,e)&&middleInside(e,n)}function area(e,n,r){return(n.y-e.y)*(r.x-n.x)-(n.x-e.x)*(r.y-n.y)}function equals(e,n){return e.x===n.x&&e.y===n.y}function intersects(e,n,r,t){return!!(equals(e,n)&&equals(r,t)||equals(e,t)&&equals(r,n))||area(e,n,r)>0!=area(e,n,t)>0&&area(r,t,e)>0!=area(r,t,n)>0}function intersectsPolygon(e,n){var r=e;do{if(r.i!==e.i&&r.next.i!==e.i&&r.i!==n.i&&r.next.i!==n.i&&intersects(r,r.next,e,n))return!0;r=r.next}while(r!==e);return!1}function locallyInside(e,n){return area(e.prev,e,e.next)<0?area(e,n,e.next)>=0&&area(e,e.prev,n)>=0:area(e,n,e.prev)<0||area(e,e.next,n)<0}function middleInside(e,n){var r=e,t=!1,i=(e.x+n.x)/2,x=(e.y+n.y)/2;do{r.y>x!=r.next.y>x&&i<(r.next.x-r.x)*(x-r.y)/(r.next.y-r.y)+r.x&&(t=!t),r=r.next}while(r!==e);return t}function splitPolygon(e,n){var r=new Node(e.i,e.x,e.y),t=new Node(n.i,n.x,n.y),i=e.next,x=n.prev;return e.next=n,n.prev=e,r.next=i,i.prev=r,t.next=r,r.prev=t,x.next=t,t.prev=x,t}function insertNode(e,n,r,t){var i=new Node(e,n,r);return t?(i.next=t.next,i.prev=t,t.next.prev=i,t.next=i):(i.prev=i,i.next=i),i}function removeNode(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function Node(e,n,r){this.i=e,this.x=n,this.y=r,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function signedArea(e,n,r,t){for(var i=0,x=n,a=r-t;x0&&(t+=e[i-1].length,r.holes.push(t))}return r}},{}],6:[function(_dereq_,module,exports){function geometry(r){if("Polygon"===r.type)return polygonArea(r.coordinates);if("MultiPolygon"===r.type){for(var e=0,n=0;n0){e+=Math.abs(ringArea(r[0]));for(var n=1;n2){for(var n,t,o=0;o=0}var geojsonArea=_dereq_("geojson-area");module.exports=rewind},{"geojson-area":6}],8:[function(_dereq_,module,exports){"use strict";function clip(e,r,t,n,u,i,l,s){if(t/=r,n/=r,l>=t&&s<=n)return e;if(l>n||s=t&&c<=n)h.push(o);else if(!(a>n||c=r&&s<=t&&u.push(l)}return u}function clipGeometry(e,r,t,n,u,i){for(var l=[],s=0;st?(d.push(u(h,f,r),u(h,f,t)),i||(d=newSlice(l,d,v,m,w))):o>=r&&d.push(u(h,f,r)):c>t?ot&&(d.push(u(h,f,t)),i||(d=newSlice(l,d,v,m,w))));(c=(h=g[S-1])[n])>=r&&c<=t&&d.push(h),a=d[d.length-1],i&&a&&(d[0][0]!==a[0]||d[0][1]!==a[1])&&d.push(d[0]),newSlice(l,d,v,m,w)}return l}function newSlice(e,r,t,n,u){return r.length&&(r.area=t,r.dist=n,void 0!==u&&(r.outer=u),e.push(r)),[]}module.exports=clip;var createFeature=_dereq_("./feature")},{"./feature":10}],9:[function(_dereq_,module,exports){"use strict";function convert(e,t){var r=[];if("FeatureCollection"===e.type)for(var o=0;o1?1:o,[r,o,0]}function calcSize(e){for(var t,r,o=0,a=0,i=0;i1)return!1;var r=n.geometry[0].length;if(5!==r)return!1;for(var s=0;s1&&console.time("creation"),m=this.tiles[d]=createTile(e,p,i,o,f,t===a.maxZoom),this.tileCoords.push({z:t,x:i,y:o}),u)){u>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",t,i,o,m.numFeatures,m.numPoints,m.numSimplified),console.timeEnd("creation"));var h="z"+t;this.stats[h]=(this.stats[h]||0)+1,this.total++}if(m.source=e,n){if(t===a.maxZoom||t===n)continue;var x=1<1&&console.time("clipping");var g,v,M,T,b,y,S=.5*a.buffer/a.extent,Z=.5-S,q=.5+S,w=1+S;g=v=M=T=null,b=clip(e,p,i-S,i+q,0,intersectX,m.min[0],m.max[0]),y=clip(e,p,i+Z,i+w,0,intersectX,m.min[0],m.max[0]),b&&(g=clip(b,p,o-S,o+q,1,intersectY,m.min[1],m.max[1]),v=clip(b,p,o+Z,o+w,1,intersectY,m.min[1],m.max[1])),y&&(M=clip(y,p,o-S,o+q,1,intersectY,m.min[1],m.max[1]),T=clip(y,p,o+Z,o+w,1,intersectY,m.min[1],m.max[1])),u>1&&console.timeEnd("clipping"),e.length&&(l.push(g||[],t+1,2*i,2*o),l.push(v||[],t+1,2*i,2*o+1),l.push(M||[],t+1,2*i+1,2*o),l.push(T||[],t+1,2*i+1,2*o+1))}else n&&(c=t)}return c},GeoJSONVT.prototype.getTile=function(e,t,i){var o=this.options,n=o.extent,r=o.debug,s=1<1&&console.log("drilling down to z%d-%d-%d",e,t,i);for(var a,u=e,c=t,p=i;!a&&u>0;)u--,c=Math.floor(c/2),p=Math.floor(p/2),a=this.tiles[toID(u,c,p)];if(!a||!a.source)return null;if(r>1&&console.log("found parent tile z%d-%d-%d",u,c,p),isClippedSquare(a,n,o.buffer))return transform.tile(a,n);r>1&&console.time("drilling down");var d=this.splitTile(a.source,u,c,p,e,t,i);if(r>1&&console.timeEnd("drilling down"),null!==d){var m=1<p&&(s=e,p=r);p>o?(t[s][2]=p,g.push(u),g.push(s),u=s):(n=g.pop(),u=g.pop())}}function getSqSegDist(t,i,e){var p=i[0],r=i[1],s=e[0],o=e[1],f=t[0],u=t[1],n=s-p,g=o-r;if(0!==n||0!==g){var l=((f-p)*n+(u-r)*g)/(n*n+g*g);l>1?(p=s,r=o):l>0&&(p+=n*l,r+=g*l)}return n=f-p,g=u-r,n*n+g*g}module.exports=simplify},{}],13:[function(_dereq_,module,exports){"use strict";function createTile(e,n,r,i,t,u){for(var a={features:[],numPoints:0,numSimplified:0,numFeatures:0,source:null,x:r,y:i,z2:n,transformed:!1,min:[2,1],max:[-1,0]},m=0;ma.max[0]&&(a.max[0]=l[0]),l[1]>a.max[1]&&(a.max[1]=l[1])}return a}function addFeature(e,n,r,i){var t,u,a,m,s=n.geometry,l=n.type,o=[],f=r*r;if(1===l)for(t=0;tf)&&(d.push(m),e.numSimplified++),e.numPoints++;3===l&&rewind(d,a.outer),o.push(d)}else e.numPoints+=a.length;if(o.length){var g={geometry:o,type:l,tags:n.tags||null};null!==n.id&&(g.id=n.id),e.features.push(g)}}function rewind(e,n){signedArea(e)<0===n&&e.reverse()}function signedArea(e){for(var n,r,i=0,t=0,u=e.length,a=u-1;t=a[u+0]&&s>=a[u+1]?(n[f]=!0,h.push(l[f])):n[f]=!1}}},GridIndex.prototype._forEachCell=function(t,r,e,s,i,h,n){for(var o=this._convertToCellCoord(t),l=this._convertToCellCoord(r),a=this._convertToCellCoord(e),d=this._convertToCellCoord(s),f=o;f<=a;f++)for(var u=l;u<=d;u++){var y=this.d*u+f;if(i.call(this,t,r,e,s,y,h,n))return}},GridIndex.prototype._convertToCellCoord=function(t){return Math.max(0,Math.min(this.d-1,Math.floor(t*this.scale)+this.padding))},GridIndex.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var t=this.cells,r=NUM_PARAMS+this.cells.length+1+1,e=0,s=0;s>1,i=-7,N=t?h-1:0,n=t?-1:1,s=a[o+N];for(N+=n,M=s&(1<<-i)-1,s>>=-i,i+=w;i>0;M=256*M+a[o+N],N+=n,i-=8);for(p=M&(1<<-i)-1,M>>=-i,i+=r;i>0;p=256*p+a[o+N],N+=n,i-=8);if(0===M)M=1-e;else{if(M===f)return p?NaN:1/0*(s?-1:1);p+=Math.pow(2,r),M-=e}return(s?-1:1)*p*Math.pow(2,M-r)},exports.write=function(a,o,t,r,h,M){var p,w,f,e=8*M-h-1,i=(1<>1,n=23===h?Math.pow(2,-24)-Math.pow(2,-77):0,s=r?0:M-1,u=r?1:-1,l=o<0||0===o&&1/o<0?1:0;for(o=Math.abs(o),isNaN(o)||o===1/0?(w=isNaN(o)?1:0,p=i):(p=Math.floor(Math.log(o)/Math.LN2),o*(f=Math.pow(2,-p))<1&&(p--,f*=2),(o+=p+N>=1?n/f:n*Math.pow(2,1-N))*f>=2&&(p++,f/=2),p+N>=i?(w=0,p=i):p+N>=1?(w=(o*f-1)*Math.pow(2,h),p+=N):(w=o*Math.pow(2,N-1)*Math.pow(2,h),p=0));h>=8;a[t+s]=255&w,s+=u,w/=256,h-=8);for(p=p<0;a[t+s]=255&p,s+=u,p/=256,e-=8);a[t+s-u]|=128*l}},{}],18:[function(_dereq_,module,exports){"use strict";function kdbush(t,i,e,s,n){return new KDBush(t,i,e,s,n)}function KDBush(t,i,e,s,n){i=i||defaultGetX,e=e||defaultGetY,n=n||Array,this.nodeSize=s||64,this.points=t,this.ids=new n(t.length),this.coords=new n(2*t.length);for(var r=0;r=s&&a<=h&&t>=u&&t<=e&&f.push(p[i]);else{var c=Math.floor((g+v)/2);a=r[2*c],t=r[2*c+1],a>=s&&a<=h&&t>=u&&t<=e&&f.push(p[c]);var d=(l+1)%2;(0===l?s<=a:u<=t)&&(n.push(g),n.push(c-1),n.push(d)),(0===l?h>=a:e>=t)&&(n.push(c+1),n.push(v),n.push(d))}}return f}module.exports=range},{}],20:[function(_dereq_,module,exports){"use strict";function sortKD(t,a,o,s,r,e){if(!(r-s<=o)){var f=Math.floor((s+r)/2);select(t,a,f,s,r,e%2),sortKD(t,a,o,s,f-1,e+1),sortKD(t,a,o,f+1,r,e+1)}}function select(t,a,o,s,r,e){for(;r>s;){if(r-s>600){var f=r-s+1,p=o-s+1,w=Math.log(f),m=.5*Math.exp(2*w/3),n=.5*Math.sqrt(w*m*(f-m)/f)*(p-f/2<0?-1:1);select(t,a,o,Math.max(s,Math.floor(o-p*m/f+n)),Math.min(r,Math.floor(o+(f-p)*m/f+n)),e)}var i=a[2*o+e],l=s,M=r;for(swapItem(t,a,s,o),a[2*r+e]>i&&swapItem(t,a,s,r);li;)M--}a[2*s+e]===i?swapItem(t,a,s,M):(M++,swapItem(t,a,M,r)),M<=o&&(s=M+1),o<=M&&(r=M-1)}}function swapItem(t,a,o,s){swap(t,o,s),swap(a,2*o,2*s),swap(a,2*o+1,2*s+1)}function swap(t,a,o){var s=t[a];t[a]=t[o],t[o]=s}module.exports=sortKD},{}],21:[function(_dereq_,module,exports){"use strict";function within(s,p,r,t,u,h){for(var i=[0,s.length-1,0],o=[],n=u*u;i.length;){var e=i.pop(),a=i.pop(),f=i.pop();if(a-f<=h)for(var v=f;v<=a;v++)sqDist(p[2*v],p[2*v+1],r,t)<=n&&o.push(s[v]);else{var l=Math.floor((f+a)/2),c=p[2*l],q=p[2*l+1];sqDist(c,q,r,t)<=n&&o.push(s[l]);var D=(e+1)%2;(0===e?r-u<=c:t-u<=q)&&(i.push(f),i.push(l-1),i.push(D)),(0===e?r+u>=c:t+u>=q)&&(i.push(l+1),i.push(a),i.push(D))}}return o}function sqDist(s,p,r,t){var u=s-r,h=p-t;return u*u+h*h}module.exports=within},{}],22:[function(_dereq_,module,exports){"use strict";function isSupported(e){return!!(isBrowser()&&isArraySupported()&&isFunctionSupported()&&isObjectSupported()&&isJSONSupported()&&isWorkerSupported()&&isUint8ClampedArraySupported()&&isWebGLSupportedCached(e&&e.failIfMajorPerformanceCaveat))}function isBrowser(){return"undefined"!=typeof window&&"undefined"!=typeof document}function isArraySupported(){return Array.prototype&&Array.prototype.every&&Array.prototype.filter&&Array.prototype.forEach&&Array.prototype.indexOf&&Array.prototype.lastIndexOf&&Array.prototype.map&&Array.prototype.some&&Array.prototype.reduce&&Array.prototype.reduceRight&&Array.isArray}function isFunctionSupported(){return Function.prototype&&Function.prototype.bind}function isObjectSupported(){return Object.keys&&Object.create&&Object.getPrototypeOf&&Object.getOwnPropertyNames&&Object.isSealed&&Object.isFrozen&&Object.isExtensible&&Object.getOwnPropertyDescriptor&&Object.defineProperty&&Object.defineProperties&&Object.seal&&Object.freeze&&Object.preventExtensions}function isJSONSupported(){return"JSON"in window&&"parse"in JSON&&"stringify"in JSON}function isWorkerSupported(){return"Worker"in window}function isUint8ClampedArraySupported(){return"Uint8ClampedArray"in window}function isWebGLSupportedCached(e){return void 0===isWebGLSupportedCache[e]&&(isWebGLSupportedCache[e]=isWebGLSupported(e)),isWebGLSupportedCache[e]}function isWebGLSupported(e){var t=document.createElement("canvas"),r=Object.create(isSupported.webGLContextAttributes);return r.failIfMajorPerformanceCaveat=e,t.probablySupportsContext?t.probablySupportsContext("webgl",r)||t.probablySupportsContext("experimental-webgl",r):t.supportsContext?t.supportsContext("webgl",r)||t.supportsContext("experimental-webgl",r):t.getContext("webgl",r)||t.getContext("experimental-webgl",r)}void 0!==module&&module.exports?module.exports=isSupported:window&&(window.mapboxgl=window.mapboxgl||{},window.mapboxgl.supported=isSupported);var isWebGLSupportedCache={};isSupported.webGLContextAttributes={antialias:!1,alpha:!0,stencil:!0,depth:!0}},{}],23:[function(_dereq_,module,exports){(function(process){function normalizeArray(r,t){for(var e=0,n=r.length-1;n>=0;n--){var s=r[n];"."===s?r.splice(n,1):".."===s?(r.splice(n,1),e++):e&&(r.splice(n,1),e--)}if(t)for(;e--;e)r.unshift("..");return r}function filter(r,t){if(r.filter)return r.filter(t);for(var e=[],n=0;n=-1&&!t;e--){var n=e>=0?arguments[e]:process.cwd();if("string"!=typeof n)throw new TypeError("Arguments to path.resolve must be strings");n&&(r=n+"/"+r,t="/"===n.charAt(0))}return r=normalizeArray(filter(r.split("/"),function(r){return!!r}),!t).join("/"),(t?"/":"")+r||"."},exports.normalize=function(r){var t=exports.isAbsolute(r),e="/"===substr(r,-1);return(r=normalizeArray(filter(r.split("/"),function(r){return!!r}),!t).join("/"))||t||(r="."),r&&e&&(r+="/"),(t?"/":"")+r},exports.isAbsolute=function(r){return"/"===r.charAt(0)},exports.join=function(){var r=Array.prototype.slice.call(arguments,0);return exports.normalize(filter(r,function(r,t){if("string"!=typeof r)throw new TypeError("Arguments to path.join must be strings");return r}).join("/"))},exports.relative=function(r,t){function e(r){for(var t=0;t=0&&""===r[e];e--);return t>e?[]:r.slice(t,e-t+1)}r=exports.resolve(r).substr(1),t=exports.resolve(t).substr(1);for(var n=e(r.split("/")),s=e(t.split("/")),i=Math.min(n.length,s.length),o=i,u=0;u55295&&e<57344){if(!r){e>56319||o+1===n?i.push(239,191,189):r=e;continue}if(e<56320){i.push(239,191,189),r=e;continue}e=r-55296<<10|e-56320|65536,r=null}else r&&(i.push(239,191,189),r=null);e<128?i.push(e):e<2048?i.push(e>>6|192,63&e|128):e<65536?i.push(e>>12|224,e>>6&63|128,63&e|128):i.push(e>>18|240,e>>12&63|128,e>>6&63|128,63&e|128)}return i}module.exports=Buffer;var BufferMethods,lastStr,lastStrEncoded,ieee754=_dereq_("ieee754");(BufferMethods={readUInt32LE:function(t){return(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},writeUInt32LE:function(t,e){this[e]=t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24},readInt32LE:function(t){return(this[t]|this[t+1]<<8|this[t+2]<<16)+(this[t+3]<<24)},readFloatLE:function(t){return ieee754.read(this,t,!0,23,4)},readDoubleLE:function(t){return ieee754.read(this,t,!0,52,8)},writeFloatLE:function(t,e){return ieee754.write(this,t,e,!0,23,4)},writeDoubleLE:function(t,e){return ieee754.write(this,t,e,!0,52,8)},toString:function(t,e,r){var n="",i="";e=e||0,r=Math.min(this.length,r||this.length);for(var o=e;o=1;){if(i.pos>=e)throw new Error("Given varint doesn't fit into 10 bytes");var r=255&t;i.buf[i.pos++]=r|(t>=128?128:0),t/=128}}function reallocForRawMessage(t,i,e){var r=i<=16383?1:i<=2097151?2:i<=268435455?3:Math.ceil(Math.log(i)/(7*Math.LN2));e.realloc(r);for(var s=e.pos-1;s>=t;s--)e.buf[s+r]=e.buf[s]}function writePackedVarint(t,i){for(var e=0;e>3,n=this.pos;t(s,i,this),this.pos===n&&this.skip(r)}return i},readMessage:function(t,i){return this.readFields(t,i,this.readVarint()+this.pos)},readFixed32:function(){var t=this.buf.readUInt32LE(this.pos);return this.pos+=4,t},readSFixed32:function(){var t=this.buf.readInt32LE(this.pos);return this.pos+=4,t},readFixed64:function(){var t=this.buf.readUInt32LE(this.pos)+4294967296*this.buf.readUInt32LE(this.pos+4);return this.pos+=8,t},readSFixed64:function(){var t=this.buf.readUInt32LE(this.pos)+4294967296*this.buf.readInt32LE(this.pos+4);return this.pos+=8,t},readFloat:function(){var t=this.buf.readFloatLE(this.pos);return this.pos+=4,t},readDouble:function(){var t=this.buf.readDoubleLE(this.pos);return this.pos+=8,t},readVarint:function(){var t,i,e=this.buf;return i=e[this.pos++],t=127&i,i<128?t:(i=e[this.pos++],t|=(127&i)<<7,i<128?t:(i=e[this.pos++],t|=(127&i)<<14,i<128?t:(i=e[this.pos++],t|=(127&i)<<21,i<128?t:readVarintRemainder(t,this))))},readVarint64:function(){var t=this.pos,i=this.readVarint();if(i127;);else if(i===Pbf.Bytes)this.pos=this.readVarint()+this.pos;else if(i===Pbf.Fixed32)this.pos+=4;else{if(i!==Pbf.Fixed64)throw new Error("Unimplemented type: "+i);this.pos+=8}},writeTag:function(t,i){this.writeVarint(t<<3|i)},realloc:function(t){for(var i=this.length||16;i268435455?void writeBigVarint(t,this):(this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),void(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);var i=Buffer.byteLength(t);this.writeVarint(i),this.realloc(i),this.buf.write(t,this.pos),this.pos+=i},writeFloat:function(t){this.realloc(4),this.buf.writeFloatLE(t,this.pos),this.pos+=4},writeDouble:function(t){this.realloc(8),this.buf.writeDoubleLE(t,this.pos),this.pos+=8},writeBytes:function(t){var i=t.length;this.writeVarint(i),this.realloc(i);for(var e=0;e=128&&reallocForRawMessage(e,r,this),this.pos=e-1,this.writeVarint(r),this.pos+=r},writeMessage:function(t,i,e){this.writeTag(t,Pbf.Bytes),this.writeRawMessage(i,e)},writePackedVarint:function(t,i){this.writeMessage(t,writePackedVarint,i)},writePackedSVarint:function(t,i){this.writeMessage(t,writePackedSVarint,i)},writePackedBoolean:function(t,i){this.writeMessage(t,writePackedBoolean,i)},writePackedFloat:function(t,i){this.writeMessage(t,writePackedFloat,i)},writePackedDouble:function(t,i){this.writeMessage(t,writePackedDouble,i)},writePackedFixed32:function(t,i){this.writeMessage(t,writePackedFixed32,i)},writePackedSFixed32:function(t,i){this.writeMessage(t,writePackedSFixed32,i)},writePackedFixed64:function(t,i){this.writeMessage(t,writePackedFixed64,i)},writePackedSFixed64:function(t,i){this.writeMessage(t,writePackedSFixed64,i)},writeBytesField:function(t,i){this.writeTag(t,Pbf.Bytes),this.writeBytes(i)},writeFixed32Field:function(t,i){this.writeTag(t,Pbf.Fixed32),this.writeFixed32(i)},writeSFixed32Field:function(t,i){this.writeTag(t,Pbf.Fixed32),this.writeSFixed32(i)},writeFixed64Field:function(t,i){this.writeTag(t,Pbf.Fixed64),this.writeFixed64(i)},writeSFixed64Field:function(t,i){this.writeTag(t,Pbf.Fixed64),this.writeSFixed64(i)},writeVarintField:function(t,i){this.writeTag(t,Pbf.Varint),this.writeVarint(i)},writeSVarintField:function(t,i){this.writeTag(t,Pbf.Varint),this.writeSVarint(i)},writeStringField:function(t,i){this.writeTag(t,Pbf.Bytes),this.writeString(i)},writeFloatField:function(t,i){this.writeTag(t,Pbf.Fixed32),this.writeFloat(i)},writeDoubleField:function(t,i){this.writeTag(t,Pbf.Fixed64),this.writeDouble(i)},writeBooleanField:function(t,i){this.writeVarintField(t,Boolean(i))}}}).call(this,void 0!==global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./buffer":24}],26:[function(_dereq_,module,exports){"use strict";function Point(t,n){this.x=t,this.y=n}module.exports=Point,Point.prototype={clone:function(){return new Point(this.x,this.y)},add:function(t){return this.clone()._add(t)},sub:function(t){return this.clone()._sub(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)},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 n=t.x-this.x,i=t.y-this.y;return n*n+i*i},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,n){return Math.atan2(this.x*n-this.y*t,this.x*t+this.y*n)},_matMult:function(t){var n=t[0]*this.x+t[1]*this.y,i=t[2]*this.x+t[3]*this.y;return this.x=n,this.y=i,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},_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 n=Math.cos(t),i=Math.sin(t),s=n*this.x-i*this.y,r=i*this.x+n*this.y;return this.x=s,this.y=r,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},Point.convert=function(t){return t instanceof Point?t:Array.isArray(t)?new Point(t[0],t[1]):t}},{}],27:[function(_dereq_,module,exports){function defaultSetTimout(){throw new Error("setTimeout has not been defined")}function defaultClearTimeout(){throw new Error("clearTimeout has not been defined")}function runTimeout(e){if(cachedSetTimeout===setTimeout)return setTimeout(e,0);if((cachedSetTimeout===defaultSetTimout||!cachedSetTimeout)&&setTimeout)return cachedSetTimeout=setTimeout,setTimeout(e,0);try{return cachedSetTimeout(e,0)}catch(t){try{return cachedSetTimeout.call(null,e,0)}catch(t){return cachedSetTimeout.call(this,e,0)}}}function runClearTimeout(e){if(cachedClearTimeout===clearTimeout)return clearTimeout(e);if((cachedClearTimeout===defaultClearTimeout||!cachedClearTimeout)&&clearTimeout)return cachedClearTimeout=clearTimeout,clearTimeout(e);try{return cachedClearTimeout(e)}catch(t){try{return cachedClearTimeout.call(null,e)}catch(t){return cachedClearTimeout.call(this,e)}}}function cleanUpNextTick(){draining&¤tQueue&&(draining=!1,currentQueue.length?queue=currentQueue.concat(queue):queueIndex=-1,queue.length&&drainQueue())}function drainQueue(){if(!draining){var e=runTimeout(cleanUpNextTick);draining=!0;for(var t=queue.length;t;){for(currentQueue=queue,queue=[];++queueIndex1)for(var u=1;ur;){if(o-r>600){var f=o-r+1,e=t-r+1,l=Math.log(f),s=.5*Math.exp(2*l/3),i=.5*Math.sqrt(l*s*(f-s)/f)*(e-f/2<0?-1:1);partialSort(a,t,Math.max(r,Math.floor(t-e*s/f+i)),Math.min(o,Math.floor(t+(f-e)*s/f+i)),p)}var u=a[t],M=r,w=o;for(swap(a,r,t),p(a[o],u)>0&&swap(a,r,o);M0;)w--}0===p(a[r],u)?swap(a,r,w):(w++,swap(a,w,o)),w<=t&&(r=w+1),t<=w&&(o=w-1)}}function swap(a,t,r){var o=a[t];a[t]=a[r],a[r]=o}function defaultCompare(a,t){return at?1:0}module.exports=partialSort},{}],29:[function(_dereq_,module,exports){"use strict";function supercluster(t){return new SuperCluster(t)}function SuperCluster(t){this.options=extend(Object.create(this.options),t),this.trees=new Array(this.options.maxZoom+1)}function createCluster(t,e,o,n){return{x:t,y:e,zoom:1/0,id:n,numPoints:o}}function createPointCluster(t,e){var o=t.geometry.coordinates;return createCluster(lngX(o[0]),latY(o[1]),1,e)}function getClusterJSON(t){return{type:"Feature",properties:getClusterProperties(t),geometry:{type:"Point",coordinates:[xLng(t.x),yLat(t.y)]}}}function getClusterProperties(t){var e=t.numPoints;return{cluster:!0,point_count:e,point_count_abbreviated:e>=1e4?Math.round(e/1e3)+"k":e>=1e3?Math.round(e/100)/10+"k":e}}function lngX(t){return t/360+.5}function latY(t){var e=Math.sin(t*Math.PI/180),o=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return o<0?0:o>1?1:o}function xLng(t){return 360*(t-.5)}function yLat(t){var e=(180-360*t)*Math.PI/180;return 360*Math.atan(Math.exp(e))/Math.PI-90}function extend(t,e){for(var o in e)t[o]=e[o];return t}function getX(t){return t.x}function getY(t){return t.y}var kdbush=_dereq_("kdbush");module.exports=supercluster,SuperCluster.prototype={options:{minZoom:0,maxZoom:16,radius:40,extent:512,nodeSize:64,log:!1},load:function(t){var e=this.options.log;e&&console.time("total time");var o="prepare "+t.length+" points";e&&console.time(o),this.points=t;var n=t.map(createPointCluster);e&&console.timeEnd(o);for(var r=this.options.maxZoom;r>=this.options.minZoom;r--){var i=+Date.now();this.trees[r+1]=kdbush(n,getX,getY,this.options.nodeSize,Float32Array),n=this._cluster(n,r),e&&console.log("z%d: %d clusters in %dms",r,n.length,+Date.now()-i)}return this.trees[this.options.minZoom]=kdbush(n,getX,getY,this.options.nodeSize,Float32Array),e&&console.timeEnd("total time"),this},getClusters:function(t,e){for(var o=this.trees[this._limitZoom(e)],n=o.range(lngX(t[0]),latY(t[3]),lngX(t[2]),latY(t[1])),r=[],i=0;i=0;a--)this._down(a)}function defaultCompare(t,i){return ti?1:0}function swap(t,i,a){var n=t[i];t[i]=t[a],t[a]=n}module.exports=TinyQueue,TinyQueue.prototype={push:function(t){this.data.push(t),this.length++,this._up(this.length-1)},pop:function(){var t=this.data[0];return this.data[0]=this.data[this.length-1],this.length--,this.data.pop(),this._down(0),t},peek:function(){return this.data[0]},_up:function(t){for(var i=this.data,a=this.compare;t>0;){var n=Math.floor((t-1)/2);if(!(a(i[t],i[n])<0))break;swap(i,n,t),t=n}},_down:function(t){for(var i=this.data,a=this.compare,n=this.length;;){var e=2*t+1,h=e+1,s=t;if(e=3&&(t.depth=arguments[2]),arguments.length>=4&&(t.colors=arguments[3]),isBoolean(r)?t.showHidden=r:r&&exports._extend(t,r),isUndefined(t.showHidden)&&(t.showHidden=!1),isUndefined(t.depth)&&(t.depth=2),isUndefined(t.colors)&&(t.colors=!1),isUndefined(t.customInspect)&&(t.customInspect=!0),t.colors&&(t.stylize=stylizeWithColor),formatValue(t,e,t.depth)}function stylizeWithColor(e,r){var t=inspect.styles[r];return t?"["+inspect.colors[t][0]+"m"+e+"["+inspect.colors[t][1]+"m":e}function stylizeNoColor(e,r){return e}function arrayToHash(e){var r={};return e.forEach(function(e,t){r[e]=!0}),r}function formatValue(e,r,t){if(e.customInspect&&r&&isFunction(r.inspect)&&r.inspect!==exports.inspect&&(!r.constructor||r.constructor.prototype!==r)){var n=r.inspect(t,e);return isString(n)||(n=formatValue(e,n,t)),n}var i=formatPrimitive(e,r);if(i)return i;var o=Object.keys(r),s=arrayToHash(o);if(e.showHidden&&(o=Object.getOwnPropertyNames(r)),isError(r)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return formatError(r);if(0===o.length){if(isFunction(r)){var u=r.name?": "+r.name:"";return e.stylize("[Function"+u+"]","special")}if(isRegExp(r))return e.stylize(RegExp.prototype.toString.call(r),"regexp");if(isDate(r))return e.stylize(Date.prototype.toString.call(r),"date");if(isError(r))return formatError(r)}var c="",a=!1,l=["{","}"];if(isArray(r)&&(a=!0,l=["[","]"]),isFunction(r)&&(c=" [Function"+(r.name?": "+r.name:"")+"]"),isRegExp(r)&&(c=" "+RegExp.prototype.toString.call(r)),isDate(r)&&(c=" "+Date.prototype.toUTCString.call(r)),isError(r)&&(c=" "+formatError(r)),0===o.length&&(!a||0==r.length))return l[0]+c+l[1];if(t<0)return isRegExp(r)?e.stylize(RegExp.prototype.toString.call(r),"regexp"):e.stylize("[Object]","special");e.seen.push(r);var f;return f=a?formatArray(e,r,t,s,o):o.map(function(n){return formatProperty(e,r,t,s,n,a)}),e.seen.pop(),reduceToSingleString(f,c,l)}function formatPrimitive(e,r){if(isUndefined(r))return e.stylize("undefined","undefined");if(isString(r)){var t="'"+JSON.stringify(r).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(t,"string")}return isNumber(r)?e.stylize(""+r,"number"):isBoolean(r)?e.stylize(""+r,"boolean"):isNull(r)?e.stylize("null","null"):void 0}function formatError(e){return"["+Error.prototype.toString.call(e)+"]"}function formatArray(e,r,t,n,i){for(var o=[],s=0,u=r.length;s-1&&(u=o?u.split("\n").map(function(e){return" "+e}).join("\n").substr(2):"\n"+u.split("\n").map(function(e){return" "+e}).join("\n")):u=e.stylize("[Circular]","special")),isUndefined(s)){if(o&&i.match(/^\d+$/))return u;(s=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(s=s.substr(1,s.length-2),s=e.stylize(s,"name")):(s=s.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),s=e.stylize(s,"string"))}return s+": "+u}function reduceToSingleString(e,r,t){var n=0;return e.reduce(function(e,r){return n++,r.indexOf("\n")>=0&&n++,e+r.replace(/\u001b\[\d\d?m/g,"").length+1},0)>60?t[0]+(""===r?"":r+"\n ")+" "+e.join(",\n ")+" "+t[1]:t[0]+r+" "+e.join(", ")+" "+t[1]}function isArray(e){return Array.isArray(e)}function isBoolean(e){return"boolean"==typeof e}function isNull(e){return null===e}function isNullOrUndefined(e){return null==e}function isNumber(e){return"number"==typeof e}function isString(e){return"string"==typeof e}function isSymbol(e){return"symbol"==typeof e}function isUndefined(e){return void 0===e}function isRegExp(e){return isObject(e)&&"[object RegExp]"===objectToString(e)}function isObject(e){return"object"==typeof e&&null!==e}function isDate(e){return isObject(e)&&"[object Date]"===objectToString(e)}function isError(e){return isObject(e)&&("[object Error]"===objectToString(e)||e instanceof Error)}function isFunction(e){return"function"==typeof e}function isPrimitive(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e}function objectToString(e){return Object.prototype.toString.call(e)}function pad(e){return e<10?"0"+e.toString(10):e.toString(10)}function timestamp(){var e=new Date,r=[pad(e.getHours()),pad(e.getMinutes()),pad(e.getSeconds())].join(":");return[e.getDate(),months[e.getMonth()],r].join(" ")}function hasOwnProperty(e,r){return Object.prototype.hasOwnProperty.call(e,r)}var formatRegExp=/%[sdj%]/g;exports.format=function(e){if(!isString(e)){for(var r=[],t=0;t=i)return e;switch(e){case"%s":return String(n[t++]);case"%d":return Number(n[t++]);case"%j":try{return JSON.stringify(n[t++])}catch(e){return"[Circular]"}default:return e}}),s=n[t];t>3}if(a--,1===i||2===i)o+=e.readSVarint(),n+=e.readSVarint(),1===i&&(t&&s.push(t),t=[]),t.push(new Point(o,n));else{if(7!==i)throw new Error("unknown command "+i);t&&t.push(t[0].clone())}}return t&&s.push(t),s},VectorTileFeature.prototype.bbox=function(){var e=this._pbf;e.pos=this._geometry;for(var t=e.readVarint()+e.pos,r=1,i=0,a=0,o=0,n=1/0,s=-1/0,p=1/0,h=-1/0;e.pos>3}if(i--,1===r||2===r)a+=e.readSVarint(),o+=e.readSVarint(),as&&(s=a),oh&&(h=o);else if(7!==r)throw new Error("unknown command "+r)}return[n,p,s,h]},VectorTileFeature.prototype.toGeoJSON=function(e,t,r){function i(e){for(var t=0;t>3;t=1===a?e.readString():2===a?e.readFloat():3===a?e.readDouble():4===a?e.readVarint64():5===a?e.readVarint():6===a?e.readSVarint():7===a?e.readBoolean():null}return t}var VectorTileFeature=_dereq_("./vectortilefeature.js");module.exports=VectorTileLayer,VectorTileLayer.prototype.feature=function(e){if(e<0||e>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[e];var t=this._pbf.readVarint()+this._pbf.pos;return new VectorTileFeature(this._pbf,t,this.extent,this._keys,this._values)}},{"./vectortilefeature.js":36}],38:[function(_dereq_,module,exports){function fromVectorTileJs(e){var r=[];for(var o in e.layers)r.push(prepareLayer(e.layers[o]));var t=new Pbf;return vtpb.tile.write({layers:r},t),t.finish()}function fromGeojsonVt(e){var r={};for(var o in e)r[o]=new GeoJSONWrapper(e[o].features),r[o].name=o;return fromVectorTileJs({layers:r})}function prepareLayer(e){for(var r={name:e.name||"",version:e.version||1,extent:e.extent||4096,keys:[],values:[],features:[]},o={},t={},n=0;n>31}function encodeGeometry(e){for(var r=[],o=0,t=0,n=e.length,a=0;aArrayGroup.MAX_VERTEX_ARRAY_LENGTH)&&(e=new Segment(this.layoutVertexArray.length,this.elementArray.length),this.segments.push(e)),e},ArrayGroup.prototype.prepareSegment2=function(r){var e=this.segments2[this.segments2.length-1];return(!e||e.vertexLength+r>ArrayGroup.MAX_VERTEX_ARRAY_LENGTH)&&(e=new Segment(this.layoutVertexArray.length,this.elementArray2.length),this.segments2.push(e)),e},ArrayGroup.prototype.populatePaintArrays=function(r){var e=this;for(var t in e.layerData){var a=e.layerData[t];0!==a.paintVertexArray.bytesPerElement&&a.programConfiguration.populatePaintArray(a.layer,a.paintVertexArray,a.paintPropertyStatistics,e.layoutVertexArray.length,e.globalProperties,r)}},ArrayGroup.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},ArrayGroup.prototype.serialize=function(r){return{layoutVertexArray:this.layoutVertexArray.serialize(r),elementArray:this.elementArray&&this.elementArray.serialize(r),elementArray2:this.elementArray2&&this.elementArray2.serialize(r),paintVertexArrays:serializePaintVertexArrays(this.layerData,r),segments:this.segments,segments2:this.segments2}},ArrayGroup.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,module.exports=ArrayGroup},{"./program_configuration":58,"./vertex_array_type":60}],45:[function(_dereq_,module,exports){"use strict";var ArrayGroup=_dereq_("./array_group"),BufferGroup=_dereq_("./buffer_group"),util=_dereq_("../util/util"),Bucket=function(r,t){this.zoom=r.zoom,this.overscaling=r.overscaling,this.layers=r.layers,this.index=r.index,r.arrays?this.buffers=new BufferGroup(t,r.layers,r.zoom,r.arrays):this.arrays=new ArrayGroup(t,r.layers,r.zoom)};Bucket.prototype.populate=function(r,t){for(var e=this,i=0,a=r;i=EXTENT||y<0||y>=EXTENT)){var n=r.prepareSegment(4),u=n.vertexLength;addCircleVertex(r.layoutVertexArray,o,y,-1,-1),addCircleVertex(r.layoutVertexArray,o,y,1,-1),addCircleVertex(r.layoutVertexArray,o,y,1,1),addCircleVertex(r.layoutVertexArray,o,y,-1,1),r.elementArray.emplaceBack(u,u+1,u+2),r.elementArray.emplaceBack(u,u+3,u+2),n.vertexLength+=4,n.primitiveLength+=2}}r.populatePaintArrays(e.properties)},r}(Bucket);CircleBucket.programInterface=circleInterface,module.exports=CircleBucket},{"../bucket":45,"../element_array_type":53,"../extent":54,"../load_geometry":56}],47:[function(_dereq_,module,exports){"use strict";var Bucket=_dereq_("../bucket"),createElementArrayType=_dereq_("../element_array_type"),loadGeometry=_dereq_("../load_geometry"),earcut=_dereq_("earcut"),classifyRings=_dereq_("../../util/classify_rings"),fillInterface={layoutAttributes:[{name:"a_pos",components:2,type:"Int16"}],elementArrayType:createElementArrayType(3),elementArrayType2:createElementArrayType(2),paintAttributes:[{property:"fill-color",type:"Uint8"},{property:"fill-outline-color",type:"Uint8"},{property:"fill-opacity",type:"Uint8",multiplier:255}]},FillBucket=function(e){function t(t){e.call(this,t,fillInterface)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.addFeature=function(e){for(var t=this.arrays,r=0,a=classifyRings(loadGeometry(e),500);rEXTENT)||e.y===t.y&&(e.y<0||e.y>EXTENT)}var Bucket=_dereq_("../bucket"),createElementArrayType=_dereq_("../element_array_type"),loadGeometry=_dereq_("../load_geometry"),EXTENT=_dereq_("../extent"),earcut=_dereq_("earcut"),classifyRings=_dereq_("../../util/classify_rings"),fillExtrusionInterface={layoutAttributes:[{name:"a_pos",components:2,type:"Int16"},{name:"a_normal",components:3,type:"Int16"},{name:"a_edgedistance",components:1,type:"Int16"}],elementArrayType:createElementArrayType(3),paintAttributes:[{property:"fill-extrusion-base",type:"Uint16"},{property:"fill-extrusion-height",type:"Uint16"},{property:"fill-extrusion-color",type:"Uint8"}]},FACTOR=Math.pow(2,13),FillExtrusionBucket=function(e){function t(t){e.call(this,t,fillExtrusionInterface)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.addFeature=function(e){for(var t=this.arrays,r=0,a=classifyRings(loadGeometry(e),500);r=1){var A=d[h-1];if(!isBoundaryEdge(g,A)){var E=g.sub(A)._perp()._unit();addVertex(t.layoutVertexArray,g.x,g.y,E.x,E.y,0,0,m),addVertex(t.layoutVertexArray,g.x,g.y,E.x,E.y,0,1,m),m+=A.dist(g),addVertex(t.layoutVertexArray,A.x,A.y,E.x,E.y,0,0,m),addVertex(t.layoutVertexArray,A.x,A.y,E.x,E.y,0,1,m);var v=u.vertexLength;t.elementArray.emplaceBack(v,v+1,v+2),t.elementArray.emplaceBack(v+1,v+2,v+3),u.vertexLength+=4,u.primitiveLength+=2}}p.push(g.x),p.push(g.y)}}}for(var _=earcut(p,s),T=0;T<_.length;T+=3)t.elementArray.emplaceBack(c[_[T]],c[_[T+1]],c[_[T+2]]);u.primitiveLength+=_.length/3}t.populatePaintArrays(e.properties)},t}(Bucket);FillExtrusionBucket.programInterface=fillExtrusionInterface,module.exports=FillExtrusionBucket},{"../../util/classify_rings":198,"../bucket":45,"../element_array_type":53,"../extent":54,"../load_geometry":56,earcut:5}],49:[function(_dereq_,module,exports){"use strict";function addLineVertex(e,t,r,i,a,n,d){e.emplaceBack(t.x<<1|i,t.y<<1|a,Math.round(EXTRUDE_SCALE*r.x)+128,Math.round(EXTRUDE_SCALE*r.y)+128,1+(0===n?0:n<0?-1:1)|(d*LINE_DISTANCE_SCALE&63)<<2,d*LINE_DISTANCE_SCALE>>6)}var Bucket=_dereq_("../bucket"),createElementArrayType=_dereq_("../element_array_type"),loadGeometry=_dereq_("../load_geometry"),EXTENT=_dereq_("../extent"),VectorTileFeature=_dereq_("vector-tile").VectorTileFeature,EXTRUDE_SCALE=63,COS_HALF_SHARP_CORNER=Math.cos(Math.PI/180*37.5),LINE_DISTANCE_SCALE=.5,MAX_LINE_DISTANCE=Math.pow(2,14)/LINE_DISTANCE_SCALE,lineInterface={layoutAttributes:[{name:"a_pos",components:2,type:"Int16"},{name:"a_data",components:4,type:"Uint8"}],paintAttributes:[{property:"line-color",type:"Uint8"},{property:"line-blur",multiplier:10,type:"Uint8"},{property:"line-opacity",multiplier:10,type:"Uint8"},{property:"line-gap-width",multiplier:10,type:"Uint8",name:"a_gapwidth"},{property:"line-offset",multiplier:1,type:"Int8"}],elementArrayType:createElementArrayType()},LineBucket=function(e){function t(t){e.call(this,t,lineInterface)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.addFeature=function(e){for(var t=this,r=this.layers[0].layout,i=r["line-join"],a=r["line-cap"],n=r["line-miter-limit"],d=r["line-round-limit"],s=0,u=loadGeometry(e,15);s=2&&e[l-1].equals(e[l-2]);)l--;for(var o=0;oo){var R=y.dist(m);if(R>2*p){var g=y.sub(y.sub(m)._mult(p/R)._round());d.distance+=g.dist(m),d.addCurrentVertex(g,d.distance,x.mult(1),0,0,!1,h),m=g}}var F=m&&E,B=F?r:E?A:L;if(F&&"round"===B&&(Na&&(B="bevel"),"bevel"===B&&(N>2&&(B="flipbevel"),N100)I=C.clone().mult(-1);else{var k=x.x*C.y-x.y*C.x>0?-1:1,D=N*x.add(C).mag()/x.sub(C).mag();I._perp()._mult(D*k)}d.addCurrentVertex(y,d.distance,I,0,0,!1,h),d.addCurrentVertex(y,d.distance,I.mult(-1),0,0,!1,h)}else if("bevel"===B||"fakeround"===B){var P=x.x*C.y-x.y*C.x>0,U=-Math.sqrt(N*N-1);if(P?(f=0,v=U):(v=0,f=U),S||d.addCurrentVertex(y,d.distance,x,v,f,!1,h),"fakeround"===B){for(var q=Math.floor(8*(.5-(T-.5))),M=void 0,O=0;O=0;X--)M=x.mult((X+1)/(q+1))._add(C)._unit(),d.addPieSliceVertex(y,d.distance,M,P,h)}E&&d.addCurrentVertex(y,d.distance,C,-v,-f,!1,h)}else"butt"===B?(S||d.addCurrentVertex(y,d.distance,x,0,0,!1,h),E&&d.addCurrentVertex(y,d.distance,C,0,0,!1,h)):"square"===B?(S||(d.addCurrentVertex(y,d.distance,x,1,1,!1,h),d.e1=d.e2=-1),E&&d.addCurrentVertex(y,d.distance,C,-1,-1,!1,h)):"round"===B&&(S||(d.addCurrentVertex(y,d.distance,x,0,0,!1,h),d.addCurrentVertex(y,d.distance,x,1,1,!0,h),d.e1=d.e2=-1),E&&(d.addCurrentVertex(y,d.distance,C,-1,-1,!0,h),d.addCurrentVertex(y,d.distance,C,0,0,!1,h)));if(b&&V2*p){var w=y.add(E.sub(y)._mult(p/H)._round());d.distance+=w.dist(y),d.addCurrentVertex(w,d.distance,C.mult(1),0,0,!1,h),y=w}}S=!1}_.populatePaintArrays(s)}},t.prototype.addCurrentVertex=function(e,t,r,i,a,n,d){var s,u=n?1:0,l=this.arrays,o=l.layoutVertexArray,p=l.elementArray;s=r.clone(),i&&s._sub(r.perp()._mult(i)),addLineVertex(o,e,s,u,0,i,t),this.e3=d.vertexLength++,this.e1>=0&&this.e2>=0&&(p.emplaceBack(this.e1,this.e2,this.e3),d.primitiveLength++),this.e1=this.e2,this.e2=this.e3,s=r.mult(-1),a&&s._sub(r.perp()._mult(a)),addLineVertex(o,e,s,u,1,-a,t),this.e3=d.vertexLength++,this.e1>=0&&this.e2>=0&&(p.emplaceBack(this.e1,this.e2,this.e3),d.primitiveLength++),this.e1=this.e2,this.e2=this.e3,t>MAX_LINE_DISTANCE/2&&(this.distance=0,this.addCurrentVertex(e,this.distance,r,i,a,n,d))},t.prototype.addPieSliceVertex=function(e,t,r,i,a){var n=i?1:0;r=r.mult(i?-1:1);var d=this.arrays,s=d.layoutVertexArray,u=d.elementArray;addLineVertex(s,e,r,0,n,0,t),this.e3=a.vertexLength++,this.e1>=0&&this.e2>=0&&(u.emplaceBack(this.e1,this.e2,this.e3),a.primitiveLength++),i?this.e2=this.e3:this.e1=this.e3},t}(Bucket);LineBucket.programInterface=lineInterface,module.exports=LineBucket},{"../bucket":45,"../element_array_type":53,"../extent":54,"../load_geometry":56,"vector-tile":34}],50:[function(_dereq_,module,exports){"use strict";function addVertex(e,t,o,a,i,r,n,s,l,c,u,y){e.emplaceBack(t,o,Math.round(64*a),Math.round(64*i),r/4,n/4,packUint8ToFloat(10*(u||0),y%256),packUint8ToFloat(10*(l||0),10*Math.min(c||25,25)),s?s[0]:void 0,s?s[1]:void 0,s?s[2]:void 0)}function addCollisionBoxVertex(e,t,o,a,i){return e.emplaceBack(t.x,t.y,Math.round(o.x),Math.round(o.y),10*a,10*i)}function getSizeData(e,t,o){var a={isFeatureConstant:t.isLayoutValueFeatureConstant(o),isZoomConstant:t.isLayoutValueZoomConstant(o)};if(a.isFeatureConstant&&(a.layoutSize=t.getLayoutValue(o,{zoom:e+1})),!a.isZoomConstant){for(var i=t.getLayoutValueStopZoomLevels(o),r=0;rEXTENT||r.y<0||r.y>EXTENT);if(!h||n){var s=n||v;a.addSymbolInstance(r,i,t,o,a.layers[0],s,a.collisionBoxArray,e.index,e.sourceLayerIndex,a.index,u,x,f,p,d,b,{zoom:a.zoom},e.properties)}};if("line"===s["symbol-placement"])for(var B=0,M=clipLine(e.geometry,0,0,EXTENT,EXTENT);B=0;r--)if(o.dist(i[r])7*Math.PI/4)continue}else if(i&&r&&d<=3*Math.PI/4||d>5*Math.PI/4)continue}else if(i&&r&&(d<=Math.PI/2||d>3*Math.PI/2))continue;var g=x.tl,f=x.tr,b=x.bl,v=x.br,S=x.tex,I=x.anchorPoint,z=Math.max(y+Math.log(x.minScale)/Math.LN2,p),B=Math.min(y+Math.log(x.maxScale)/Math.LN2,25);if(!(B<=z)){z===p&&(z=0);var M=Math.round(x.glyphAngle/(2*Math.PI)*256),L=e.prepareSegment(4),A=L.vertexLength;addVertex(u,I.x,I.y,g.x,g.y,S.x,S.y,a,z,B,p,M),addVertex(u,I.x,I.y,f.x,f.y,S.x+S.w,S.y,a,z,B,p,M),addVertex(u,I.x,I.y,b.x,b.y,S.x,S.y+S.h,a,z,B,p,M),addVertex(u,I.x,I.y,v.x,v.y,S.x+S.w,S.y+S.h,a,z,B,p,M),c.emplaceBack(A,A+1,A+2),c.emplaceBack(A+1,A+2,A+3),L.vertexLength+=4,L.primitiveLength+=2}}e.populatePaintArrays(s)},SymbolBucket.prototype.addToDebugBuffers=function(e){for(var t=this,o=this.arrays.collisionBox,a=o.layoutVertexArray,i=o.elementArray,r=-e.angle,n=e.yStretch,s=0,l=t.symbolInstances;sSymbolBucket.MAX_INSTANCES&&util.warnOnce("Too many symbols being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),A>SymbolBucket.MAX_INSTANCES&&util.warnOnce("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907");var T=(o[WritingMode.vertical]?WritingMode.vertical:0)|(o[WritingMode.horizontal]?WritingMode.horizontal:0);this.symbolInstances.push({textBoxStartIndex:B,textBoxEndIndex:M,iconBoxStartIndex:L,iconBoxEndIndex:A,glyphQuads:S,iconQuads:v,anchor:e,featureIndex:s,featureProperties:g,writingModes:T})},SymbolBucket.programInterfaces=symbolInterfaces,SymbolBucket.MAX_INSTANCES=65535,module.exports=SymbolBucket},{"../../shaders/encode_attribute":81,"../../symbol/anchor":160,"../../symbol/clip_line":162,"../../symbol/collision_feature":164,"../../symbol/get_anchors":166,"../../symbol/mergelines":169,"../../symbol/quads":170,"../../symbol/shaping":171,"../../symbol/transform_text":173,"../../util/classify_rings":198,"../../util/find_pole_of_inaccessibility":204,"../../util/script_detection":211,"../../util/token":214,"../../util/util":215,"../array_group":44,"../buffer_group":52,"../element_array_type":53,"../extent":54,"../load_geometry":56,"point-geometry":26,"vector-tile":34}],51:[function(_dereq_,module,exports){"use strict";var AttributeType={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT"},Buffer=function(t,e,r){this.arrayBuffer=t.arrayBuffer,this.length=t.length,this.attributes=e.members,this.itemSize=e.bytesPerElement,this.type=r,this.arrayType=e};Buffer.fromStructArray=function(t,e){return new Buffer(t.serialize(),t.constructor.serialize(),e)},Buffer.prototype.bind=function(t){var e=t[this.type];this.buffer?t.bindBuffer(e,this.buffer):(this.gl=t,this.buffer=t.createBuffer(),t.bindBuffer(e,this.buffer),t.bufferData(e,this.arrayBuffer,t.STATIC_DRAW),this.arrayBuffer=null)},Buffer.prototype.enableAttributes=function(t,e){for(var r=this,f=0;f0?t+2*e:e}function translate(e,t,r,i,a){if(!t[0]&&!t[1])return e;t=Point.convert(t),"viewport"===r&&t._rotate(-i);for(var n=[],s=0;sr.max||d.yr.max)&&util.warnOnce("Geometry exceeds allowed extent, reduce your vector tile buffer size")}return u}},{"../util/util":215,"./extent":54}],57:[function(_dereq_,module,exports){"use strict";var PosArray=_dereq_("../util/struct_array")({members:[{name:"a_pos",type:"Int16",components:2}]});module.exports=PosArray},{"../util/struct_array":213}],58:[function(_dereq_,module,exports){"use strict";function getPaintAttributeValue(t,r,e,i){if(!t.zoomStops)return r.getPaintValue(t.property,e,i);var a=t.zoomStops.map(function(a){return r.getPaintValue(t.property,util.extend({},e,{zoom:a}),i)});return 1===a.length?a[0]:a}function normalizePaintAttribute(t,r){var e=t.name;e||(e=t.property.replace(r.type+"-","").replace(/-/g,"_"));var i="color"===r._paintSpecifications[t.property].type;return util.extend({name:"a_"+e,components:i?4:1,multiplier:i?255:1,dimensions:i?4:1},t)}var createVertexArrayType=_dereq_("./vertex_array_type"),util=_dereq_("../util/util"),ProgramConfiguration=function(){this.attributes=[],this.uniforms=[],this.interpolationUniforms=[],this.pragmas={vertex:{},fragment:{}},this.cacheKey=""};ProgramConfiguration.createDynamic=function(t,r,e){for(var i=new ProgramConfiguration,a=0,n=t;a4)for(;p90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};LngLat.prototype.wrap=function(){return new LngLat(wrap(this.lng,-180,180),this.lat)},LngLat.prototype.toArray=function(){return[this.lng,this.lat]},LngLat.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},LngLat.convert=function(t){if(t instanceof LngLat)return t;if(Array.isArray(t)&&2===t.length)return new LngLat(Number(t[0]),Number(t[1]));if(!Array.isArray(t)&&"object"==typeof t&&null!==t)return new LngLat(Number(t.lng),Number(t.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, or an array of [, ]")},module.exports=LngLat},{"../util/util":215}],63:[function(_dereq_,module,exports){"use strict";var LngLat=_dereq_("./lng_lat"),LngLatBounds=function(t,n){t&&(n?this.setSouthWest(t).setNorthEast(n):4===t.length?this.setSouthWest([t[0],t[1]]).setNorthEast([t[2],t[3]]):this.setSouthWest(t[0]).setNorthEast(t[1]))};LngLatBounds.prototype.setNorthEast=function(t){return this._ne=LngLat.convert(t),this},LngLatBounds.prototype.setSouthWest=function(t){return this._sw=LngLat.convert(t),this},LngLatBounds.prototype.extend=function(t){var n,e,s=this._sw,o=this._ne;if(t instanceof LngLat)n=t,e=t;else{if(!(t instanceof LngLatBounds))return Array.isArray(t)?t.every(Array.isArray)?this.extend(LngLatBounds.convert(t)):this.extend(LngLat.convert(t)):this;if(n=t._sw,e=t._ne,!n||!e)return this}return s||o?(s.lng=Math.min(n.lng,s.lng),s.lat=Math.min(n.lat,s.lat),o.lng=Math.max(e.lng,o.lng),o.lat=Math.max(e.lat,o.lat)):(this._sw=new LngLat(n.lng,n.lat),this._ne=new LngLat(e.lng,e.lat)),this},LngLatBounds.prototype.getCenter=function(){return new LngLat((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},LngLatBounds.prototype.getSouthWest=function(){return this._sw},LngLatBounds.prototype.getNorthEast=function(){return this._ne},LngLatBounds.prototype.getNorthWest=function(){return new LngLat(this.getWest(),this.getNorth())},LngLatBounds.prototype.getSouthEast=function(){return new LngLat(this.getEast(),this.getSouth())},LngLatBounds.prototype.getWest=function(){return this._sw.lng},LngLatBounds.prototype.getSouth=function(){return this._sw.lat},LngLatBounds.prototype.getEast=function(){return this._ne.lng},LngLatBounds.prototype.getNorth=function(){return this._ne.lat},LngLatBounds.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},LngLatBounds.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},LngLatBounds.convert=function(t){return!t||t instanceof LngLatBounds?t:new LngLatBounds(t)},module.exports=LngLatBounds},{"./lng_lat":62}],64:[function(_dereq_,module,exports){"use strict";var LngLat=_dereq_("./lng_lat"),Point=_dereq_("point-geometry"),Coordinate=_dereq_("./coordinate"),util=_dereq_("../util/util"),interp=_dereq_("../style-spec/util/interpolate"),TileCoord=_dereq_("../source/tile_coord"),EXTENT=_dereq_("../data/extent"),glmatrix=_dereq_("@mapbox/gl-matrix"),vec4=glmatrix.vec4,mat4=glmatrix.mat4,mat2=glmatrix.mat2,Transform=function(t,i,o){this.tileSize=512,this._renderWorldCopies=void 0===o||o,this._minZoom=t||0,this._maxZoom=i||22,this.latRange=[-85.05113,85.05113],this.width=0,this.height=0,this._center=new LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0},prototypeAccessors={minZoom:{},maxZoom:{},renderWorldCopies:{},worldSize:{},centerPoint:{},size:{},bearing:{},pitch:{},fov:{},zoom:{},center:{},unmodified:{},x:{},y:{},point:{}};prototypeAccessors.minZoom.get=function(){return this._minZoom},prototypeAccessors.minZoom.set=function(t){this._minZoom!==t&&(this._minZoom=t,this.zoom=Math.max(this.zoom,t))},prototypeAccessors.maxZoom.get=function(){return this._maxZoom},prototypeAccessors.maxZoom.set=function(t){this._maxZoom!==t&&(this._maxZoom=t,this.zoom=Math.min(this.zoom,t))},prototypeAccessors.renderWorldCopies.get=function(){return this._renderWorldCopies},prototypeAccessors.worldSize.get=function(){return this.tileSize*this.scale},prototypeAccessors.centerPoint.get=function(){return this.size._div(2)},prototypeAccessors.size.get=function(){return new Point(this.width,this.height)},prototypeAccessors.bearing.get=function(){return-this.angle/Math.PI*180},prototypeAccessors.bearing.set=function(t){var i=-util.wrap(t,-180,180)*Math.PI/180;this.angle!==i&&(this._unmodified=!1,this.angle=i,this._calcMatrices(),this.rotationMatrix=mat2.create(),mat2.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},prototypeAccessors.pitch.get=function(){return this._pitch/Math.PI*180},prototypeAccessors.pitch.set=function(t){var i=util.clamp(t,0,60)/180*Math.PI;this._pitch!==i&&(this._unmodified=!1,this._pitch=i,this._calcMatrices())},prototypeAccessors.fov.get=function(){return this._fov/Math.PI*180},prototypeAccessors.fov.set=function(t){t=Math.max(.01,Math.min(60,t)),this._fov!==t&&(this._unmodified=!1,this._fov=t/180*Math.PI,this._calcMatrices())},prototypeAccessors.zoom.get=function(){return this._zoom},prototypeAccessors.zoom.set=function(t){var i=Math.min(Math.max(t,this.minZoom),this.maxZoom);this._zoom!==i&&(this._unmodified=!1,this._zoom=i,this.scale=this.zoomScale(i),this.tileZoom=Math.floor(i),this.zoomFraction=i-this.tileZoom,this._constrain(),this._calcMatrices())},prototypeAccessors.center.get=function(){return this._center},prototypeAccessors.center.set=function(t){t.lat===this._center.lat&&t.lng===this._center.lng||(this._unmodified=!1,this._center=t,this._constrain(),this._calcMatrices())},Transform.prototype.coveringZoomLevel=function(t){return(t.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/t.tileSize))},Transform.prototype.getVisibleWrappedCoordinates=function(t){for(var i=this.pointCoordinate(new Point(0,0),0),o=this.pointCoordinate(new Point(this.width,0),0),e=Math.floor(i.column),r=Math.floor(o.column),n=[t],s=e;s<=r;s++)0!==s&&n.push(new TileCoord(t.z,t.x,t.y,s));return n},Transform.prototype.coveringTiles=function(t){var i=this.coveringZoomLevel(t),o=i;if(it.maxzoom&&(i=t.maxzoom);var e=this.pointCoordinate(this.centerPoint,i),r=new Point(e.column-.5,e.row-.5),n=[this.pointCoordinate(new Point(0,0),i),this.pointCoordinate(new Point(this.width,0),i),this.pointCoordinate(new Point(this.width,this.height),i),this.pointCoordinate(new Point(0,this.height),i)];return TileCoord.cover(i,n,t.reparseOverscaled?o:i,this._renderWorldCopies).sort(function(t,i){return r.dist(t)-r.dist(i)})},Transform.prototype.resize=function(t,i){this.width=t,this.height=i,this.pixelsToGLUnits=[2/t,-2/i],this._constrain(),this._calcMatrices()},prototypeAccessors.unmodified.get=function(){return this._unmodified},Transform.prototype.zoomScale=function(t){return Math.pow(2,t)},Transform.prototype.scaleZoom=function(t){return Math.log(t)/Math.LN2},Transform.prototype.project=function(t){return new Point(this.lngX(t.lng),this.latY(t.lat))},Transform.prototype.unproject=function(t){return new LngLat(this.xLng(t.x),this.yLat(t.y))},prototypeAccessors.x.get=function(){return this.lngX(this.center.lng)},prototypeAccessors.y.get=function(){return this.latY(this.center.lat)},prototypeAccessors.point.get=function(){return new Point(this.x,this.y)},Transform.prototype.lngX=function(t){return(180+t)*this.worldSize/360},Transform.prototype.latY=function(t){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360)))*this.worldSize/360},Transform.prototype.xLng=function(t){return 360*t/this.worldSize-180},Transform.prototype.yLat=function(t){var i=180-360*t/this.worldSize;return 360/Math.PI*Math.atan(Math.exp(i*Math.PI/180))-90},Transform.prototype.setLocationAtPoint=function(t,i){var o=this.pointCoordinate(i)._sub(this.pointCoordinate(this.centerPoint));this.center=this.coordinateLocation(this.locationCoordinate(t)._sub(o)),this._renderWorldCopies&&(this.center=this.center.wrap())},Transform.prototype.locationPoint=function(t){return this.coordinatePoint(this.locationCoordinate(t))},Transform.prototype.pointLocation=function(t){return this.coordinateLocation(this.pointCoordinate(t))},Transform.prototype.locationCoordinate=function(t){return new Coordinate(this.lngX(t.lng)/this.tileSize,this.latY(t.lat)/this.tileSize,this.zoom).zoomTo(this.tileZoom)},Transform.prototype.coordinateLocation=function(t){var i=t.zoomTo(this.zoom);return new LngLat(this.xLng(i.column*this.tileSize),this.yLat(i.row*this.tileSize))},Transform.prototype.pointCoordinate=function(t,i){void 0===i&&(i=this.tileZoom);var e=[t.x,t.y,0,1],r=[t.x,t.y,1,1];vec4.transformMat4(e,e,this.pixelMatrixInverse),vec4.transformMat4(r,r,this.pixelMatrixInverse);var n=e[3],s=r[3],a=e[0]/n,h=r[0]/s,c=e[1]/n,m=r[1]/s,p=e[2]/n,l=r[2]/s,u=p===l?0:(0-p)/(l-p);return new Coordinate(interp(a,h,u)/this.tileSize,interp(c,m,u)/this.tileSize,this.zoom)._zoomTo(i)},Transform.prototype.coordinatePoint=function(t){var i=t.zoomTo(this.zoom),o=[i.column*this.tileSize,i.row*this.tileSize,0,1];return vec4.transformMat4(o,o,this.pixelMatrix),new Point(o[0]/o[3],o[1]/o[3])},Transform.prototype.calculatePosMatrix=function(t,i){var o=t.toCoordinate(i),e=this.worldSize/this.zoomScale(o.zoom),r=mat4.identity(new Float64Array(16));return mat4.translate(r,r,[o.column*e,o.row*e,0]),mat4.scale(r,r,[e/EXTENT,e/EXTENT,1]),mat4.multiply(r,this.projMatrix,r),new Float32Array(r)},Transform.prototype._constrain=function(){if(this.center&&this.width&&this.height&&!this._constraining){this._constraining=!0;var t,i,o,e,r=-90,n=90,s=-180,a=180,h=this.size,c=this._unmodified;if(this.latRange){var m=this.latRange;r=this.latY(m[1]),t=(n=this.latY(m[0]))-rn&&(e=n-f)}if(this.lngRange){var d=this.x,g=h.x/2;d-ga&&(o=a-g)}void 0===o&&void 0===e||(this.center=this.unproject(new Point(void 0!==o?o:this.x,void 0!==e?e:this.y))),this._unmodified=c,this._constraining=!1}},Transform.prototype._calcMatrices=function(){if(this.height){this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height;var t=this._fov/2,i=Math.PI/2+this._pitch,o=Math.sin(t)*this.cameraToCenterDistance/Math.sin(Math.PI-i-t),r=1.01*(Math.cos(Math.PI/2-this._pitch)*o+this.cameraToCenterDistance),n=new Float64Array(16);mat4.perspective(n,this._fov,this.width/this.height,1,r),mat4.scale(n,n,[1,-1,1]),mat4.translate(n,n,[0,0,-this.cameraToCenterDistance]),mat4.rotateX(n,n,this._pitch),mat4.rotateZ(n,n,this.angle),mat4.translate(n,n,[-this.x,-this.y,0]);var s=this.worldSize/(2*Math.PI*6378137*Math.abs(Math.cos(this.center.lat*(Math.PI/180))));if(mat4.scale(n,n,[1,1,s,1]),this.projMatrix=n,n=mat4.create(),mat4.scale(n,n,[this.width/2,-this.height/2,1]),mat4.translate(n,n,[1,-1,0]),this.pixelMatrix=mat4.multiply(new Float64Array(16),n,this.projMatrix),!(n=mat4.invert(new Float64Array(16),this.pixelMatrix)))throw new Error("failed to invert matrix");this.pixelMatrixInverse=n}},Object.defineProperties(Transform.prototype,prototypeAccessors),module.exports=Transform},{"../data/extent":54,"../source/tile_coord":96,"../style-spec/util/interpolate":123,"../util/util":215,"./coordinate":61,"./lng_lat":62,"@mapbox/gl-matrix":1,"point-geometry":26}],65:[function(_dereq_,module,exports){"use strict";var browser=_dereq_("./util/browser"),mapboxgl=module.exports={};mapboxgl.version=_dereq_("../package.json").version,mapboxgl.workerCount=Math.max(Math.floor(browser.hardwareConcurrency/2),1),mapboxgl.Map=_dereq_("./ui/map"),mapboxgl.NavigationControl=_dereq_("./ui/control/navigation_control"),mapboxgl.GeolocateControl=_dereq_("./ui/control/geolocate_control"),mapboxgl.AttributionControl=_dereq_("./ui/control/attribution_control"),mapboxgl.ScaleControl=_dereq_("./ui/control/scale_control"),mapboxgl.FullscreenControl=_dereq_("./ui/control/fullscreen_control"),mapboxgl.Popup=_dereq_("./ui/popup"),mapboxgl.Marker=_dereq_("./ui/marker"),mapboxgl.Style=_dereq_("./style/style"),mapboxgl.LngLat=_dereq_("./geo/lng_lat"),mapboxgl.LngLatBounds=_dereq_("./geo/lng_lat_bounds"),mapboxgl.Point=_dereq_("point-geometry"),mapboxgl.Evented=_dereq_("./util/evented"),mapboxgl.supported=_dereq_("./util/browser").supported;var config=_dereq_("./util/config");mapboxgl.config=config;var rtlTextPlugin=_dereq_("./source/rtl_text_plugin");mapboxgl.setRTLTextPlugin=rtlTextPlugin.setRTLTextPlugin,Object.defineProperty(mapboxgl,"accessToken",{get:function(){return config.ACCESS_TOKEN},set:function(o){config.ACCESS_TOKEN=o}})},{"../package.json":43,"./geo/lng_lat":62,"./geo/lng_lat_bounds":63,"./source/rtl_text_plugin":91,"./style/style":149,"./ui/control/attribution_control":176,"./ui/control/fullscreen_control":177,"./ui/control/geolocate_control":178,"./ui/control/navigation_control":180,"./ui/control/scale_control":181,"./ui/map":190,"./ui/marker":191,"./ui/popup":192,"./util/browser":195,"./util/config":199,"./util/evented":203,"point-geometry":26}],66:[function(_dereq_,module,exports){"use strict";function drawBackground(r,t,e){var a=r.gl,i=r.transform,n=i.tileSize,o=e.paint["background-color"],l=e.paint["background-pattern"],u=e.paint["background-opacity"],f=!l&&1===o[3]&&1===u;if(r.isOpaquePass===f){a.disable(a.STENCIL_TEST),r.setDepthSublayer(0);var s;l?(s=r.useProgram("fillPattern",r.basicFillProgramConfiguration),pattern.prepare(l,r,s),r.tileExtentPatternVAO.bind(a,s,r.tileExtentBuffer)):(s=r.useProgram("fill",r.basicFillProgramConfiguration),a.uniform4fv(s.u_color,o),r.tileExtentVAO.bind(a,s,r.tileExtentBuffer)),a.uniform1f(s.u_opacity,u);for(var g=0,p=i.coveringTiles({tileSize:n});g":[24,[4,18,20,9,4,0]],"?":[18,[3,16,3,17,4,19,5,20,7,21,11,21,13,20,14,19,15,17,15,15,14,13,13,12,9,10,9,7,-1,-1,9,2,8,1,9,0,10,1,9,2]],"@":[27,[18,13,17,15,15,16,12,16,10,15,9,14,8,11,8,8,9,6,11,5,14,5,16,6,17,8,-1,-1,12,16,10,14,9,11,9,8,10,6,11,5,-1,-1,18,16,17,8,17,6,19,5,21,5,23,7,24,10,24,12,23,15,22,17,20,19,18,20,15,21,12,21,9,20,7,19,5,17,4,15,3,12,3,9,4,6,5,4,7,2,9,1,12,0,15,0,18,1,20,2,21,3,-1,-1,19,16,18,8,18,6,19,5]],A:[18,[9,21,1,0,-1,-1,9,21,17,0,-1,-1,4,7,14,7]],B:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,15,17,13,16,12,13,11,-1,-1,4,11,13,11,16,10,17,9,18,7,18,4,17,2,16,1,13,0,4,0]],C:[21,[18,16,17,18,15,20,13,21,9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5]],D:[21,[4,21,4,0,-1,-1,4,21,11,21,14,20,16,18,17,16,18,13,18,8,17,5,16,3,14,1,11,0,4,0]],E:[19,[4,21,4,0,-1,-1,4,21,17,21,-1,-1,4,11,12,11,-1,-1,4,0,17,0]],F:[18,[4,21,4,0,-1,-1,4,21,17,21,-1,-1,4,11,12,11]],G:[21,[18,16,17,18,15,20,13,21,9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,18,8,-1,-1,13,8,18,8]],H:[22,[4,21,4,0,-1,-1,18,21,18,0,-1,-1,4,11,18,11]],I:[8,[4,21,4,0]],J:[16,[12,21,12,5,11,2,10,1,8,0,6,0,4,1,3,2,2,5,2,7]],K:[21,[4,21,4,0,-1,-1,18,21,4,7,-1,-1,9,12,18,0]],L:[17,[4,21,4,0,-1,-1,4,0,16,0]],M:[24,[4,21,4,0,-1,-1,4,21,12,0,-1,-1,20,21,12,0,-1,-1,20,21,20,0]],N:[22,[4,21,4,0,-1,-1,4,21,18,0,-1,-1,18,21,18,0]],O:[22,[9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,19,8,19,13,18,16,17,18,15,20,13,21,9,21]],P:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,14,17,12,16,11,13,10,4,10]],Q:[22,[9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,19,8,19,13,18,16,17,18,15,20,13,21,9,21,-1,-1,12,4,18,-2]],R:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,15,17,13,16,12,13,11,4,11,-1,-1,11,11,18,0]],S:[20,[17,18,15,20,12,21,8,21,5,20,3,18,3,16,4,14,5,13,7,12,13,10,15,9,16,8,17,6,17,3,15,1,12,0,8,0,5,1,3,3]],T:[16,[8,21,8,0,-1,-1,1,21,15,21]],U:[22,[4,21,4,6,5,3,7,1,10,0,12,0,15,1,17,3,18,6,18,21]],V:[18,[1,21,9,0,-1,-1,17,21,9,0]],W:[24,[2,21,7,0,-1,-1,12,21,7,0,-1,-1,12,21,17,0,-1,-1,22,21,17,0]],X:[20,[3,21,17,0,-1,-1,17,21,3,0]],Y:[18,[1,21,9,11,9,0,-1,-1,17,21,9,11]],Z:[20,[17,21,3,0,-1,-1,3,21,17,21,-1,-1,3,0,17,0]],"[":[14,[4,25,4,-7,-1,-1,5,25,5,-7,-1,-1,4,25,11,25,-1,-1,4,-7,11,-7]],"\\":[14,[0,21,14,-3]],"]":[14,[9,25,9,-7,-1,-1,10,25,10,-7,-1,-1,3,25,10,25,-1,-1,3,-7,10,-7]],"^":[16,[6,15,8,18,10,15,-1,-1,3,12,8,17,13,12,-1,-1,8,17,8,0]],_:[16,[0,-2,16,-2]],"`":[10,[6,21,5,20,4,18,4,16,5,15,6,16,5,17]],a:[19,[15,14,15,0,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],b:[19,[4,21,4,0,-1,-1,4,11,6,13,8,14,11,14,13,13,15,11,16,8,16,6,15,3,13,1,11,0,8,0,6,1,4,3]],c:[18,[15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],d:[19,[15,21,15,0,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],e:[18,[3,8,15,8,15,10,14,12,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],f:[12,[10,21,8,21,6,20,5,17,5,0,-1,-1,2,14,9,14]],g:[19,[15,14,15,-2,14,-5,13,-6,11,-7,8,-7,6,-6,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],h:[19,[4,21,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0]],i:[8,[3,21,4,20,5,21,4,22,3,21,-1,-1,4,14,4,0]],j:[10,[5,21,6,20,7,21,6,22,5,21,-1,-1,6,14,6,-3,5,-6,3,-7,1,-7]],k:[17,[4,21,4,0,-1,-1,14,14,4,4,-1,-1,8,8,15,0]],l:[8,[4,21,4,0]],m:[30,[4,14,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0,-1,-1,15,10,18,13,20,14,23,14,25,13,26,10,26,0]],n:[19,[4,14,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0]],o:[19,[8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3,16,6,16,8,15,11,13,13,11,14,8,14]],p:[19,[4,14,4,-7,-1,-1,4,11,6,13,8,14,11,14,13,13,15,11,16,8,16,6,15,3,13,1,11,0,8,0,6,1,4,3]],q:[19,[15,14,15,-7,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],r:[13,[4,14,4,0,-1,-1,4,8,5,11,7,13,9,14,12,14]],s:[17,[14,11,13,13,10,14,7,14,4,13,3,11,4,9,6,8,11,7,13,6,14,4,14,3,13,1,10,0,7,0,4,1,3,3]],t:[12,[5,21,5,4,6,1,8,0,10,0,-1,-1,2,14,9,14]],u:[19,[4,14,4,4,5,1,7,0,10,0,12,1,15,4,-1,-1,15,14,15,0]],v:[16,[2,14,8,0,-1,-1,14,14,8,0]],w:[22,[3,14,7,0,-1,-1,11,14,7,0,-1,-1,11,14,15,0,-1,-1,19,14,15,0]],x:[17,[3,14,14,0,-1,-1,14,14,3,0]],y:[16,[2,14,8,0,-1,-1,14,14,8,0,6,-4,4,-6,2,-7,1,-7]],z:[17,[14,14,3,0,-1,-1,3,14,14,14,-1,-1,3,0,14,0]],"{":[14,[9,25,7,24,6,23,5,21,5,19,6,17,7,16,8,14,8,12,6,10,-1,-1,7,24,6,22,6,20,7,18,8,17,9,15,9,13,8,11,4,9,8,7,9,5,9,3,8,1,7,0,6,-2,6,-4,7,-6,-1,-1,6,8,8,6,8,4,7,2,6,1,5,-1,5,-3,6,-5,7,-6,9,-7]],"|":[8,[4,25,4,-7]],"}":[14,[5,25,7,24,8,23,9,21,9,19,8,17,7,16,6,14,6,12,8,10,-1,-1,7,24,8,22,8,20,7,18,6,17,5,15,5,13,6,11,10,9,6,7,5,5,5,3,6,1,7,0,8,-2,8,-4,7,-6,-1,-1,8,8,6,6,6,4,7,2,8,1,9,-1,9,-3,8,-5,7,-6,5,-7]],"~":[24,[3,6,3,8,4,11,6,12,8,12,10,11,14,8,16,7,18,7,20,8,21,10,-1,-1,3,8,4,10,6,11,8,11,10,10,14,7,16,6,18,6,20,7,21,10,21,12]]}},{"../data/buffer":51,"../data/extent":54,"../data/pos_array":57,"../util/browser":195,"./vertex_array_object":80,"@mapbox/gl-matrix":1}],70:[function(_dereq_,module,exports){"use strict";function drawFill(t,e,r,i){var a=t.gl;a.enable(a.STENCIL_TEST);var l=!r.paint["fill-pattern"]&&r.isPaintValueFeatureConstant("fill-color")&&r.isPaintValueFeatureConstant("fill-opacity")&&1===r.paint["fill-color"][3]&&1===r.paint["fill-opacity"];t.isOpaquePass===l&&(t.setDepthSublayer(1),drawFillTiles(t,e,r,i,drawFillTile)),!t.isOpaquePass&&r.paint["fill-antialias"]&&(t.lineWidth(2),t.depthMask(!1),t.setDepthSublayer(r.getPaintProperty("fill-outline-color")?2:0),drawFillTiles(t,e,r,i,drawStrokeTile))}function drawFillTiles(t,e,r,i,a){for(var l=!0,n=0,o=i;n0?1/(1-r):1+r}function saturationFactor(r){return r>0?1-1/(1.001-r):-r}function getFadeValues(r,t,e,a){var i=e.paint["raster-fade-duration"];if(r.sourceCache&&i>0){var o=Date.now(),n=(o-r.timeAdded)/i,u=t?(o-t.timeAdded)/i:-1,s=r.sourceCache.getSource(),c=a.coveringZoomLevel({tileSize:s.tileSize,roundZoom:s.roundZoom}),f=!t||Math.abs(t.coord.z-c)>Math.abs(r.coord.z-c),d=f&&r.refreshedUponExpiration?1:util.clamp(f?n:1-u,0,1);return r.refreshedUponExpiration&&n>=1&&(r.refreshedUponExpiration=!1),t?{opacity:1,mix:1-d}:{opacity:d,mix:0}}return{opacity:1,mix:0}}var util=_dereq_("../util/util");module.exports=drawRaster},{"../util/util":215}],74:[function(_dereq_,module,exports){"use strict";function drawSymbols(t,e,i,o){if(!t.isOpaquePass){var a=!(i.layout["text-allow-overlap"]||i.layout["icon-allow-overlap"]||i.layout["text-ignore-placement"]||i.layout["icon-ignore-placement"]),n=t.gl;a?n.disable(n.STENCIL_TEST):n.enable(n.STENCIL_TEST),t.setDepthSublayer(0),t.depthMask(!1),drawLayerSymbols(t,e,i,o,!1,i.paint["icon-translate"],i.paint["icon-translate-anchor"],i.layout["icon-rotation-alignment"],i.layout["icon-rotation-alignment"]),drawLayerSymbols(t,e,i,o,!0,i.paint["text-translate"],i.paint["text-translate-anchor"],i.layout["text-rotation-alignment"],i.layout["text-pitch-alignment"]),e.map.showCollisionBoxes&&drawCollisionDebug(t,e,i,o)}}function drawLayerSymbols(t,e,i,o,a,n,r,s,l){if(a||!t.style.sprite||t.style.sprite.loaded()){var u=t.gl,m="map"===s,f="map"===l,c=f;c?u.enable(u.DEPTH_TEST):u.disable(u.DEPTH_TEST);for(var p,_,g=0,y=o;gthis.previousZoom;a--)r.changeTimes[a]=e,r.changeOpacities[a]=r.opacities[a];for(a=0;a<256;a++){var s=e-r.changeTimes[a],o=255*(i?s/i:1);r.opacities[a]=a<=t?r.changeOpacities[a]+o:r.changeOpacities[a]-o}this.changed=!0,this.previousZoom=t},FrameHistory.prototype.bind=function(e){this.texture?(e.bindTexture(e.TEXTURE_2D,this.texture),this.changed&&(e.texSubImage2D(e.TEXTURE_2D,0,0,0,256,1,e.ALPHA,e.UNSIGNED_BYTE,this.array),this.changed=!1)):(this.texture=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.texture),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.NEAREST),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.NEAREST),e.texImage2D(e.TEXTURE_2D,0,e.ALPHA,256,1,0,e.ALPHA,e.UNSIGNED_BYTE,this.array))},module.exports=FrameHistory},{}],76:[function(_dereq_,module,exports){"use strict";var util=_dereq_("../util/util"),LineAtlas=function(t,i){this.width=t,this.height=i,this.nextRow=0,this.bytes=4,this.data=new Uint8Array(this.width*this.height*this.bytes),this.positions={}};LineAtlas.prototype.setSprite=function(t){this.sprite=t},LineAtlas.prototype.getDash=function(t,i){var e=t.join(",")+i;return this.positions[e]||(this.positions[e]=this.addDash(t,i)),this.positions[e]},LineAtlas.prototype.addDash=function(t,i){var e=this,h=i?7:0,s=2*h+1;if(this.nextRow+s>this.height)return util.warnOnce("LineAtlas out of space"),null;for(var r=0,n=0;n0?r.pop():null},Painter.prototype.getViewportTexture=function(e,r){var t=this.reusableTextures.viewport;if(t)return t.width===e&&t.height===r?t:(this.gl.deleteTexture(t),void(this.reusableTextures.viewport=null))},Painter.prototype.lineWidth=function(e){this.gl.lineWidth(util.clamp(e,this.lineWidthRange[0],this.lineWidthRange[1]))},Painter.prototype.showOverdrawInspector=function(e){if(e||this._showOverdrawInspector){this._showOverdrawInspector=e;var r=this.gl;if(e){r.blendFunc(r.CONSTANT_COLOR,r.ONE);r.blendColor(1/8,1/8,1/8,0),r.clearColor(0,0,0,1),r.clear(r.COLOR_BUFFER_BIT)}else r.blendFunc(r.ONE,r.ONE_MINUS_SRC_ALPHA)}},Painter.prototype.createProgram=function(e,r){var t=this.gl,i=t.createProgram(),a=shaders[e],s="#define MAPBOX_GL_JS\n#define DEVICE_PIXEL_RATIO "+browser.devicePixelRatio.toFixed(1)+"\n";this._showOverdrawInspector&&(s+="#define OVERDRAW_INSPECTOR;\n");var o=r.applyPragmas(s+shaders.prelude.fragmentSource+a.fragmentSource,"fragment"),n=r.applyPragmas(s+shaders.prelude.vertexSource+a.vertexSource,"vertex"),l=t.createShader(t.FRAGMENT_SHADER);t.shaderSource(l,o),t.compileShader(l),t.attachShader(i,l);var h=t.createShader(t.VERTEX_SHADER);t.shaderSource(h,n),t.compileShader(h),t.attachShader(i,h),t.linkProgram(i);for(var u=t.getProgramParameter(i,t.ACTIVE_ATTRIBUTES),c={program:i,numAttributes:u},p=0;p>16,n>>16),o.uniform2f(i.u_pixel_coord_lower,65535&u,65535&n)}},{"../source/pixels_to_tile_units":88}],79:[function(_dereq_,module,exports){"use strict";_dereq_("path");module.exports={prelude:{fragmentSource:"#ifdef GL_ES\nprecision mediump float;\n#else\n\n#if !defined(lowp)\n#define lowp\n#endif\n\n#if !defined(mediump)\n#define mediump\n#endif\n\n#if !defined(highp)\n#define highp\n#endif\n\n#endif\n",vertexSource:"#ifdef GL_ES\nprecision highp float;\n#else\n\n#if !defined(lowp)\n#define lowp\n#endif\n\n#if !defined(mediump)\n#define mediump\n#endif\n\n#if !defined(highp)\n#define highp\n#endif\n\n#endif\n\nfloat evaluate_zoom_function_1(const vec4 values, const float t) {\n if (t < 1.0) {\n return mix(values[0], values[1], t);\n } else if (t < 2.0) {\n return mix(values[1], values[2], t - 1.0);\n } else {\n return mix(values[2], values[3], t - 2.0);\n }\n}\nvec4 evaluate_zoom_function_4(const vec4 value0, const vec4 value1, const vec4 value2, const vec4 value3, const float t) {\n if (t < 1.0) {\n return mix(value0, value1, t);\n } else if (t < 2.0) {\n return mix(value1, value2, t - 1.0);\n } else {\n return mix(value2, value3, t - 2.0);\n }\n}\n\n// Unpack a pair of values that have been packed into a single float.\n// The packed values are assumed to be 8-bit unsigned integers, and are\n// packed like so:\n// packedValue = floor(input[0]) * 256 + input[1],\nvec2 unpack_float(const float packedValue) {\n int packedIntValue = int(packedValue);\n int v0 = packedIntValue / 256;\n return vec2(v0, packedIntValue - v0 * 256);\n}\n\n\n// To minimize the number of attributes needed in the mapbox-gl-native shaders,\n// we encode a 4-component color into a pair of floats (i.e. a vec2) as follows:\n// [ floor(color.r * 255) * 256 + color.g * 255,\n// floor(color.b * 255) * 256 + color.g * 255 ]\nvec4 decode_color(const vec2 encodedColor) {\n return vec4(\n unpack_float(encodedColor[0]) / 255.0,\n unpack_float(encodedColor[1]) / 255.0\n );\n}\n\n// Unpack a pair of paint values and interpolate between them.\nfloat unpack_mix_vec2(const vec2 packedValue, const float t) {\n return mix(packedValue[0], packedValue[1], t);\n}\n\n// Unpack a pair of paint values and interpolate between them.\nvec4 unpack_mix_vec4(const vec4 packedColors, const float t) {\n vec4 minColor = decode_color(vec2(packedColors[0], packedColors[1]));\n vec4 maxColor = decode_color(vec2(packedColors[2], packedColors[3]));\n return mix(minColor, maxColor, t);\n}\n\n// The offset depends on how many pixels are between the world origin and the edge of the tile:\n// vec2 offset = mod(pixel_coord, size)\n//\n// At high zoom levels there are a ton of pixels between the world origin and the edge of the tile.\n// The glsl spec only guarantees 16 bits of precision for highp floats. We need more than that.\n//\n// The pixel_coord is passed in as two 16 bit values:\n// pixel_coord_upper = floor(pixel_coord / 2^16)\n// pixel_coord_lower = mod(pixel_coord, 2^16)\n//\n// The offset is calculated in a series of steps that should preserve this precision:\nvec2 get_pattern_pos(const vec2 pixel_coord_upper, const vec2 pixel_coord_lower,\n const vec2 pattern_size, const float tile_units_to_pixels, const vec2 pos) {\n\n vec2 offset = mod(mod(mod(pixel_coord_upper, pattern_size) * 256.0, pattern_size) * 256.0 + pixel_coord_lower, pattern_size);\n return (tile_units_to_pixels * pos + offset) / pattern_size;\n}\n"},circle:{fragmentSource:"#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\n\nvarying vec2 v_extrude;\nvarying lowp float v_antialiasblur;\n\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\n\n float extrude_length = length(v_extrude);\n float antialiased_blur = -max(blur, v_antialiasblur);\n\n float opacity_t = smoothstep(0.0, antialiased_blur, extrude_length - 1.0);\n\n float color_t = stroke_width < 0.01 ? 0.0 : smoothstep(\n antialiased_blur,\n 0.0,\n extrude_length - radius / (radius + stroke_width)\n );\n\n gl_FragColor = opacity_t * mix(color * opacity, stroke_color * stroke_opacity, color_t);\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform bool u_scale_with_map;\nuniform vec2 u_extrude_scale;\n\nattribute vec2 a_pos;\n\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\n\nvarying vec2 v_extrude;\nvarying lowp float v_antialiasblur;\n\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\n\n // unencode the extrusion vector that we snuck into the a_pos vector\n v_extrude = vec2(mod(a_pos, 2.0) * 2.0 - 1.0);\n\n vec2 extrude = v_extrude * (radius + stroke_width) * u_extrude_scale;\n // multiply a_pos by 0.5, since we had it * 2 in order to sneak\n // in extrusion data\n gl_Position = u_matrix * vec4(floor(a_pos * 0.5), 0, 1);\n\n if (u_scale_with_map) {\n gl_Position.xy += extrude;\n } else {\n gl_Position.xy += extrude * gl_Position.w;\n }\n\n // This is a minimum blur distance that serves as a faux-antialiasing for\n // the circle. since blur is a ratio of the circle's size and the intent is\n // to keep the blur at roughly 1px, the two are inversely related.\n v_antialiasblur = 1.0 / DEVICE_PIXEL_RATIO / (radius + stroke_width);\n}\n"},collisionBox:{fragmentSource:"uniform float u_zoom;\nuniform float u_maxzoom;\n\nvarying float v_max_zoom;\nvarying float v_placement_zoom;\n\nvoid main() {\n\n float alpha = 0.5;\n\n gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0) * alpha;\n\n if (v_placement_zoom > u_zoom) {\n gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0) * alpha;\n }\n\n if (u_zoom >= v_max_zoom) {\n gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0) * alpha * 0.25;\n }\n\n if (v_placement_zoom >= u_maxzoom) {\n gl_FragColor = vec4(0.0, 0.0, 1.0, 1.0) * alpha * 0.2;\n }\n}\n",vertexSource:"attribute vec2 a_pos;\nattribute vec2 a_extrude;\nattribute vec2 a_data;\n\nuniform mat4 u_matrix;\nuniform float u_scale;\n\nvarying float v_max_zoom;\nvarying float v_placement_zoom;\n\nvoid main() {\n gl_Position = u_matrix * vec4(a_pos + a_extrude / u_scale, 0.0, 1.0);\n\n v_max_zoom = a_data.x;\n v_placement_zoom = a_data.y;\n}\n"},debug:{fragmentSource:"uniform highp vec4 u_color;\n\nvoid main() {\n gl_FragColor = u_color;\n}\n",vertexSource:"attribute vec2 a_pos;\n\nuniform mat4 u_matrix;\n\nvoid main() {\n gl_Position = u_matrix * vec4(a_pos, step(32767.0, a_pos.x), 1);\n}\n"},fill:{fragmentSource:"#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize highp vec4 color\n #pragma mapbox: initialize lowp float opacity\n\n gl_FragColor = color * opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"attribute vec2 a_pos;\n\nuniform mat4 u_matrix;\n\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize highp vec4 color\n #pragma mapbox: initialize lowp float opacity\n\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\n}\n"},fillOutline:{fragmentSource:"#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\n\nvarying vec2 v_pos;\n\nvoid main() {\n #pragma mapbox: initialize highp vec4 outline_color\n #pragma mapbox: initialize lowp float opacity\n\n float dist = length(v_pos - gl_FragCoord.xy);\n float alpha = 1.0 - smoothstep(0.0, 1.0, dist);\n gl_FragColor = outline_color * (alpha * opacity);\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"attribute vec2 a_pos;\n\nuniform mat4 u_matrix;\nuniform vec2 u_world;\n\nvarying vec2 v_pos;\n\n#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize highp vec4 outline_color\n #pragma mapbox: initialize lowp float opacity\n\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\n v_pos = (gl_Position.xy / gl_Position.w + 1.0) / 2.0 * u_world;\n}\n"},fillOutlinePattern:{fragmentSource:"uniform vec2 u_pattern_tl_a;\nuniform vec2 u_pattern_br_a;\nuniform vec2 u_pattern_tl_b;\nuniform vec2 u_pattern_br_b;\nuniform float u_mix;\n\nuniform sampler2D u_image;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\nvarying vec2 v_pos;\n\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp float opacity\n\n vec2 imagecoord = mod(v_pos_a, 1.0);\n vec2 pos = mix(u_pattern_tl_a, u_pattern_br_a, imagecoord);\n vec4 color1 = texture2D(u_image, pos);\n\n vec2 imagecoord_b = mod(v_pos_b, 1.0);\n vec2 pos2 = mix(u_pattern_tl_b, u_pattern_br_b, imagecoord_b);\n vec4 color2 = texture2D(u_image, pos2);\n\n // find distance to outline for alpha interpolation\n\n float dist = length(v_pos - gl_FragCoord.xy);\n float alpha = 1.0 - smoothstep(0.0, 1.0, dist);\n\n\n gl_FragColor = mix(color1, color2, u_mix) * alpha * opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec2 u_world;\nuniform vec2 u_pattern_size_a;\nuniform vec2 u_pattern_size_b;\nuniform vec2 u_pixel_coord_upper;\nuniform vec2 u_pixel_coord_lower;\nuniform float u_scale_a;\nuniform float u_scale_b;\nuniform float u_tile_units_to_pixels;\n\nattribute vec2 a_pos;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\nvarying vec2 v_pos;\n\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp float opacity\n\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\n\n 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);\n 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);\n\n v_pos = (gl_Position.xy / gl_Position.w + 1.0) / 2.0 * u_world;\n}\n"},fillPattern:{fragmentSource:"uniform vec2 u_pattern_tl_a;\nuniform vec2 u_pattern_br_a;\nuniform vec2 u_pattern_tl_b;\nuniform vec2 u_pattern_br_b;\nuniform float u_mix;\n\nuniform sampler2D u_image;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\n\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp float opacity\n\n vec2 imagecoord = mod(v_pos_a, 1.0);\n vec2 pos = mix(u_pattern_tl_a, u_pattern_br_a, imagecoord);\n vec4 color1 = texture2D(u_image, pos);\n\n vec2 imagecoord_b = mod(v_pos_b, 1.0);\n vec2 pos2 = mix(u_pattern_tl_b, u_pattern_br_b, imagecoord_b);\n vec4 color2 = texture2D(u_image, pos2);\n\n gl_FragColor = mix(color1, color2, u_mix) * opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec2 u_pattern_size_a;\nuniform vec2 u_pattern_size_b;\nuniform vec2 u_pixel_coord_upper;\nuniform vec2 u_pixel_coord_lower;\nuniform float u_scale_a;\nuniform float u_scale_b;\nuniform float u_tile_units_to_pixels;\n\nattribute vec2 a_pos;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\n\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp float opacity\n\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\n\n 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);\n 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);\n}\n"},fillExtrusion:{fragmentSource:"varying vec4 v_color;\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n#pragma mapbox: define highp vec4 color\n\nvoid main() {\n #pragma mapbox: initialize lowp float base\n #pragma mapbox: initialize lowp float height\n #pragma mapbox: initialize highp vec4 color\n\n gl_FragColor = v_color;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec3 u_lightcolor;\nuniform lowp vec3 u_lightpos;\nuniform lowp float u_lightintensity;\n\nattribute vec2 a_pos;\nattribute vec3 a_normal;\nattribute float a_edgedistance;\n\nvarying vec4 v_color;\n\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n\n#pragma mapbox: define highp vec4 color\n\nvoid main() {\n #pragma mapbox: initialize lowp float base\n #pragma mapbox: initialize lowp float height\n #pragma mapbox: initialize highp vec4 color\n\n base = max(0.0, base);\n height = max(0.0, height);\n\n float ed = a_edgedistance; // use each attrib in order to not trip a VAO assert\n float t = mod(a_normal.x, 2.0);\n\n gl_Position = u_matrix * vec4(a_pos, t > 0.0 ? height : base, 1);\n\n // Relative luminance (how dark/bright is the surface color?)\n float colorvalue = color.r * 0.2126 + color.g * 0.7152 + color.b * 0.0722;\n\n v_color = vec4(0.0, 0.0, 0.0, 1.0);\n\n // Add slight ambient lighting so no extrusions are totally black\n vec4 ambientlight = vec4(0.03, 0.03, 0.03, 1.0);\n color += ambientlight;\n\n // Calculate cos(theta), where theta is the angle between surface normal and diffuse light ray\n float directional = clamp(dot(a_normal / 16384.0, u_lightpos), 0.0, 1.0);\n\n // Adjust directional so that\n // the range of values for highlight/shading is narrower\n // with lower light intensity\n // and with lighter/brighter surface colors\n directional = mix((1.0 - u_lightintensity), max((1.0 - colorvalue + u_lightintensity), 1.0), directional);\n\n // Add gradient along z axis of side surfaces\n if (a_normal.y != 0.0) {\n directional *= clamp((t + base) * pow(height / 150.0, 0.5), mix(0.7, 0.98, 1.0 - u_lightintensity), 1.0);\n }\n\n // Assign final color based on surface + ambient light color, diffuse light directional, and light color\n // with lower bounds adjusted to hue of light\n // so that shading is tinted with the complementary (opposite) color to the light color\n v_color.r += clamp(color.r * directional * u_lightcolor.r, mix(0.0, 0.3, 1.0 - u_lightcolor.r), 1.0);\n v_color.g += clamp(color.g * directional * u_lightcolor.g, mix(0.0, 0.3, 1.0 - u_lightcolor.g), 1.0);\n v_color.b += clamp(color.b * directional * u_lightcolor.b, mix(0.0, 0.3, 1.0 - u_lightcolor.b), 1.0);\n}\n"},fillExtrusionPattern:{fragmentSource:"uniform vec2 u_pattern_tl_a;\nuniform vec2 u_pattern_br_a;\nuniform vec2 u_pattern_tl_b;\nuniform vec2 u_pattern_br_b;\nuniform float u_mix;\n\nuniform sampler2D u_image;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\nvarying vec4 v_lighting;\n\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n\nvoid main() {\n #pragma mapbox: initialize lowp float base\n #pragma mapbox: initialize lowp float height\n\n vec2 imagecoord = mod(v_pos_a, 1.0);\n vec2 pos = mix(u_pattern_tl_a, u_pattern_br_a, imagecoord);\n vec4 color1 = texture2D(u_image, pos);\n\n vec2 imagecoord_b = mod(v_pos_b, 1.0);\n vec2 pos2 = mix(u_pattern_tl_b, u_pattern_br_b, imagecoord_b);\n vec4 color2 = texture2D(u_image, pos2);\n\n vec4 mixedColor = mix(color1, color2, u_mix);\n\n gl_FragColor = mixedColor * v_lighting;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec2 u_pattern_size_a;\nuniform vec2 u_pattern_size_b;\nuniform vec2 u_pixel_coord_upper;\nuniform vec2 u_pixel_coord_lower;\nuniform float u_scale_a;\nuniform float u_scale_b;\nuniform float u_tile_units_to_pixels;\nuniform float u_height_factor;\n\nuniform vec3 u_lightcolor;\nuniform lowp vec3 u_lightpos;\nuniform lowp float u_lightintensity;\n\nattribute vec2 a_pos;\nattribute vec3 a_normal;\nattribute float a_edgedistance;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\nvarying vec4 v_lighting;\nvarying float v_directional;\n\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n\nvoid main() {\n #pragma mapbox: initialize lowp float base\n #pragma mapbox: initialize lowp float height\n\n base = max(0.0, base);\n height = max(0.0, height);\n\n float t = mod(a_normal.x, 2.0);\n float z = t > 0.0 ? height : base;\n\n gl_Position = u_matrix * vec4(a_pos, z, 1);\n\n vec2 pos = a_normal.x == 1.0 && a_normal.y == 0.0 && a_normal.z == 16384.0\n ? a_pos // extrusion top\n : vec2(a_edgedistance, z * u_height_factor); // extrusion side\n\n 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, pos);\n 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, pos);\n\n v_lighting = vec4(0.0, 0.0, 0.0, 1.0);\n float directional = clamp(dot(a_normal / 16383.0, u_lightpos), 0.0, 1.0);\n directional = mix((1.0 - u_lightintensity), max((0.5 + u_lightintensity), 1.0), directional);\n\n if (a_normal.y != 0.0) {\n directional *= clamp((t + base) * pow(height / 150.0, 0.5), mix(0.7, 0.98, 1.0 - u_lightintensity), 1.0);\n }\n\n v_lighting.rgb += clamp(directional * u_lightcolor, mix(vec3(0.0), vec3(0.3), 1.0 - u_lightcolor), vec3(1.0));\n}\n"},extrusionTexture:{fragmentSource:"uniform sampler2D u_image;\nuniform float u_opacity;\nvarying vec2 v_pos;\n\nvoid main() {\n gl_FragColor = texture2D(u_image, v_pos) * u_opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(0.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec2 u_world;\nattribute vec2 a_pos;\nvarying vec2 v_pos;\n\nvoid main() {\n gl_Position = u_matrix * vec4(a_pos * u_world, 0, 1);\n\n v_pos.x = a_pos.x;\n v_pos.y = 1.0 - a_pos.y;\n}\n"},line:{fragmentSource:"#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n\nvarying vec2 v_width2;\nvarying vec2 v_normal;\nvarying float v_gamma_scale;\n\nvoid main() {\n #pragma mapbox: initialize highp vec4 color\n #pragma mapbox: initialize lowp float blur\n #pragma mapbox: initialize lowp float opacity\n\n // Calculate the distance of the pixel from the line in pixels.\n float dist = length(v_normal) * v_width2.s;\n\n // Calculate the antialiasing fade factor. This is either when fading in\n // the line in case of an offset line (v_width2.t) or when fading out\n // (v_width2.s)\n float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\n float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\n\n gl_FragColor = color * (alpha * opacity);\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"\n\n// the distance over which the line edge fades out.\n// Retina devices need a smaller distance to avoid aliasing.\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\n\n// floor(127 / 2) == 63.0\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\n// there are also \"special\" normals that have a bigger length (of up to 126 in\n// this case).\n// #define scale 63.0\n#define scale 0.015873016\n\nattribute vec2 a_pos;\nattribute vec4 a_data;\n\nuniform mat4 u_matrix;\nuniform mediump float u_ratio;\nuniform mediump float u_width;\nuniform vec2 u_gl_units_to_pixels;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying float v_gamma_scale;\n\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\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\n vec2 a_extrude = a_data.xy - 128.0;\n float a_direction = mod(a_data.z, 4.0) - 1.0;\n\n // We store the texture normals in the most insignificant bit\n // transform y so that 0 => -1 and 1 => 1\n // In the texture normal, x is 0 if the normal points straight up/down and 1 if it's a round cap\n // y is 1 if the normal points up, and -1 if it points down\n mediump vec2 normal = mod(a_pos, 2.0);\n normal.y = sign(normal.y - 0.5);\n v_normal = normal;\n\n\n // these transformations used to be applied in the JS and native code bases. \n // moved them into the shader for clarity and simplicity. \n gapwidth = gapwidth / 2.0;\n float width = u_width / 2.0;\n offset = -1.0 * offset; \n\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\n float outset = gapwidth + width * (gapwidth > 0.0 ? 2.0 : 1.0) + ANTIALIASING;\n\n // Scale the extrusion vector down to a normal and then up by the line width\n // of this vertex.\n mediump vec2 dist = outset * a_extrude * scale;\n\n // Calculate the offset when drawing a line that is to the side of the actual line.\n // We do this by creating a vector that points towards the extrude, but rotate\n // it when we're drawing round end points (a_direction = -1 or 1) since their\n // extrude vector points in another direction.\n mediump float u = 0.5 * a_direction;\n mediump float t = 1.0 - abs(u);\n mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\n\n // Remove the texture normal bit to get the position\n vec2 pos = floor(a_pos * 0.5);\n\n vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\n gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\n\n // calculate how much the perspective view squishes or stretches the extrude\n float extrude_length_without_perspective = length(dist);\n float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\n v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\n\n v_width2 = vec2(outset, inset);\n}\n"},linePattern:{fragmentSource:"uniform vec2 u_pattern_size_a;\nuniform vec2 u_pattern_size_b;\nuniform vec2 u_pattern_tl_a;\nuniform vec2 u_pattern_br_a;\nuniform vec2 u_pattern_tl_b;\nuniform vec2 u_pattern_br_b;\nuniform float u_fade;\n\nuniform sampler2D u_image;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying float v_linesofar;\nvarying float v_gamma_scale;\n\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp float blur\n #pragma mapbox: initialize lowp float opacity\n\n // Calculate the distance of the pixel from the line in pixels.\n float dist = length(v_normal) * v_width2.s;\n\n // Calculate the antialiasing fade factor. This is either when fading in\n // the line in case of an offset line (v_width2.t) or when fading out\n // (v_width2.s)\n float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\n float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\n\n float x_a = mod(v_linesofar / u_pattern_size_a.x, 1.0);\n float x_b = mod(v_linesofar / u_pattern_size_b.x, 1.0);\n float y_a = 0.5 + (v_normal.y * v_width2.s / u_pattern_size_a.y);\n float y_b = 0.5 + (v_normal.y * v_width2.s / u_pattern_size_b.y);\n vec2 pos_a = mix(u_pattern_tl_a, u_pattern_br_a, vec2(x_a, y_a));\n vec2 pos_b = mix(u_pattern_tl_b, u_pattern_br_b, vec2(x_b, y_b));\n\n vec4 color = mix(texture2D(u_image, pos_a), texture2D(u_image, pos_b), u_fade);\n\n gl_FragColor = color * alpha * opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"// floor(127 / 2) == 63.0\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\n// there are also \"special\" normals that have a bigger length (of up to 126 in\n// this case).\n// #define scale 63.0\n#define scale 0.015873016\n\n// We scale the distance before adding it to the buffers so that we can store\n// long distances for long segments. Use this value to unscale the distance.\n#define LINE_DISTANCE_SCALE 2.0\n\n// the distance over which the line edge fades out.\n// Retina devices need a smaller distance to avoid aliasing.\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\n\nattribute vec2 a_pos;\nattribute vec4 a_data;\n\nuniform mat4 u_matrix;\nuniform mediump float u_ratio;\nuniform mediump float u_width;\nuniform vec2 u_gl_units_to_pixels;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying float v_linesofar;\nvarying float v_gamma_scale;\n\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\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\n vec2 a_extrude = a_data.xy - 128.0;\n float a_direction = mod(a_data.z, 4.0) - 1.0;\n float a_linesofar = (floor(a_data.z / 4.0) + a_data.w * 64.0) * LINE_DISTANCE_SCALE;\n\n // We store the texture normals in the most insignificant bit\n // transform y so that 0 => -1 and 1 => 1\n // In the texture normal, x is 0 if the normal points straight up/down and 1 if it's a round cap\n // y is 1 if the normal points up, and -1 if it points down\n mediump vec2 normal = mod(a_pos, 2.0);\n normal.y = sign(normal.y - 0.5);\n v_normal = normal;\n\n // these transformations used to be applied in the JS and native code bases. \n // moved them into the shader for clarity and simplicity. \n gapwidth = gapwidth / 2.0;\n float width = u_width / 2.0;\n offset = -1.0 * offset; \n\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\n float outset = gapwidth + width * (gapwidth > 0.0 ? 2.0 : 1.0) + ANTIALIASING;\n\n // Scale the extrusion vector down to a normal and then up by the line width\n // of this vertex.\n mediump vec2 dist = outset * a_extrude * scale;\n\n // Calculate the offset when drawing a line that is to the side of the actual line.\n // We do this by creating a vector that points towards the extrude, but rotate\n // it when we're drawing round end points (a_direction = -1 or 1) since their\n // extrude vector points in another direction.\n mediump float u = 0.5 * a_direction;\n mediump float t = 1.0 - abs(u);\n mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\n\n // Remove the texture normal bit to get the position\n vec2 pos = floor(a_pos * 0.5);\n\n vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\n gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\n\n // calculate how much the perspective view squishes or stretches the extrude\n float extrude_length_without_perspective = length(dist);\n float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\n v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\n\n v_linesofar = a_linesofar;\n v_width2 = vec2(outset, inset);\n}\n"},lineSDF:{fragmentSource:"\nuniform sampler2D u_image;\nuniform float u_sdfgamma;\nuniform float u_mix;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying vec2 v_tex_a;\nvarying vec2 v_tex_b;\nvarying float v_gamma_scale;\n\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize highp vec4 color\n #pragma mapbox: initialize lowp float blur\n #pragma mapbox: initialize lowp float opacity\n\n // Calculate the distance of the pixel from the line in pixels.\n float dist = length(v_normal) * v_width2.s;\n\n // Calculate the antialiasing fade factor. This is either when fading in\n // the line in case of an offset line (v_width2.t) or when fading out\n // (v_width2.s)\n float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\n float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\n\n float sdfdist_a = texture2D(u_image, v_tex_a).a;\n float sdfdist_b = texture2D(u_image, v_tex_b).a;\n float sdfdist = mix(sdfdist_a, sdfdist_b, u_mix);\n alpha *= smoothstep(0.5 - u_sdfgamma, 0.5 + u_sdfgamma, sdfdist);\n\n gl_FragColor = color * (alpha * opacity);\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"// floor(127 / 2) == 63.0\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\n// there are also \"special\" normals that have a bigger length (of up to 126 in\n// this case).\n// #define scale 63.0\n#define scale 0.015873016\n\n// We scale the distance before adding it to the buffers so that we can store\n// long distances for long segments. Use this value to unscale the distance.\n#define LINE_DISTANCE_SCALE 2.0\n\n// the distance over which the line edge fades out.\n// Retina devices need a smaller distance to avoid aliasing.\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\n\nattribute vec2 a_pos;\nattribute vec4 a_data;\n\nuniform mat4 u_matrix;\nuniform mediump float u_ratio;\nuniform vec2 u_patternscale_a;\nuniform float u_tex_y_a;\nuniform vec2 u_patternscale_b;\nuniform float u_tex_y_b;\nuniform vec2 u_gl_units_to_pixels;\nuniform mediump float u_width;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying vec2 v_tex_a;\nvarying vec2 v_tex_b;\nvarying float v_gamma_scale;\n\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\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\n vec2 a_extrude = a_data.xy - 128.0;\n float a_direction = mod(a_data.z, 4.0) - 1.0;\n float a_linesofar = (floor(a_data.z / 4.0) + a_data.w * 64.0) * LINE_DISTANCE_SCALE;\n\n // We store the texture normals in the most insignificant bit\n // transform y so that 0 => -1 and 1 => 1\n // In the texture normal, x is 0 if the normal points straight up/down and 1 if it's a round cap\n // y is 1 if the normal points up, and -1 if it points down\n mediump vec2 normal = mod(a_pos, 2.0);\n normal.y = sign(normal.y - 0.5);\n v_normal = normal;\n\n // these transformations used to be applied in the JS and native code bases. \n // moved them into the shader for clarity and simplicity. \n gapwidth = gapwidth / 2.0;\n float width = u_width / 2.0;\n offset = -1.0 * offset;\n \n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\n float outset = gapwidth + width * (gapwidth > 0.0 ? 2.0 : 1.0) + ANTIALIASING;\n\n // Scale the extrusion vector down to a normal and then up by the line width\n // of this vertex.\n mediump vec2 dist =outset * a_extrude * scale;\n\n // Calculate the offset when drawing a line that is to the side of the actual line.\n // We do this by creating a vector that points towards the extrude, but rotate\n // it when we're drawing round end points (a_direction = -1 or 1) since their\n // extrude vector points in another direction.\n mediump float u = 0.5 * a_direction;\n mediump float t = 1.0 - abs(u);\n mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\n\n // Remove the texture normal bit to get the position\n vec2 pos = floor(a_pos * 0.5);\n\n vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\n gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\n\n // calculate how much the perspective view squishes or stretches the extrude\n float extrude_length_without_perspective = length(dist);\n float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\n v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\n\n v_tex_a = vec2(a_linesofar * u_patternscale_a.x, normal.y * u_patternscale_a.y + u_tex_y_a);\n v_tex_b = vec2(a_linesofar * u_patternscale_b.x, normal.y * u_patternscale_b.y + u_tex_y_b);\n\n v_width2 = vec2(outset, inset);\n}\n"},raster:{fragmentSource:"uniform float u_fade_t;\nuniform float u_opacity;\nuniform sampler2D u_image0;\nuniform sampler2D u_image1;\nvarying vec2 v_pos0;\nvarying vec2 v_pos1;\n\nuniform float u_brightness_low;\nuniform float u_brightness_high;\n\nuniform float u_saturation_factor;\nuniform float u_contrast_factor;\nuniform vec3 u_spin_weights;\n\nvoid main() {\n\n // read and cross-fade colors from the main and parent tiles\n vec4 color0 = texture2D(u_image0, v_pos0);\n vec4 color1 = texture2D(u_image1, v_pos1);\n vec4 color = mix(color0, color1, u_fade_t);\n color.a *= u_opacity;\n vec3 rgb = color.rgb;\n\n // spin\n rgb = vec3(\n dot(rgb, u_spin_weights.xyz),\n dot(rgb, u_spin_weights.zxy),\n dot(rgb, u_spin_weights.yzx));\n\n // saturation\n float average = (color.r + color.g + color.b) / 3.0;\n rgb += (average - rgb) * u_saturation_factor;\n\n // contrast\n rgb = (rgb - 0.5) * u_contrast_factor + 0.5;\n\n // brightness\n vec3 u_high_vec = vec3(u_brightness_low, u_brightness_low, u_brightness_low);\n vec3 u_low_vec = vec3(u_brightness_high, u_brightness_high, u_brightness_high);\n\n gl_FragColor = vec4(mix(u_high_vec, u_low_vec, rgb) * color.a, color.a);\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec2 u_tl_parent;\nuniform float u_scale_parent;\nuniform float u_buffer_scale;\n\nattribute vec2 a_pos;\nattribute vec2 a_texture_pos;\n\nvarying vec2 v_pos0;\nvarying vec2 v_pos1;\n\nvoid main() {\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\n v_pos0 = (((a_texture_pos / 32767.0) - 0.5) / u_buffer_scale ) + 0.5;\n v_pos1 = (v_pos0 * u_scale_parent) + u_tl_parent;\n}\n"},symbolIcon:{fragmentSource:"uniform sampler2D u_texture;\nuniform sampler2D u_fadetexture;\n\n#pragma mapbox: define lowp float opacity\n\nvarying vec2 v_tex;\nvarying vec2 v_fade_tex;\n\nvoid main() {\n #pragma mapbox: initialize lowp float opacity\n\n lowp float alpha = texture2D(u_fadetexture, v_fade_tex).a * opacity;\n gl_FragColor = texture2D(u_texture, v_tex) * alpha;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:'\nattribute vec4 a_pos_offset;\nattribute vec4 a_data;\n\n// icon-size data (see symbol_sdf.vertex.glsl for more)\nattribute vec3 a_size;\nuniform bool u_is_size_zoom_constant;\nuniform bool u_is_size_feature_constant;\nuniform mediump float u_size_t; // used to interpolate between zoom stops when size is a composite function\nuniform mediump float u_size; // used when size is both zoom and feature constant\nuniform mediump float u_layout_size; // used when size is feature constant\n\n#pragma mapbox: define lowp float opacity\n\n// matrix is for the vertex position.\nuniform mat4 u_matrix;\n\nuniform bool u_is_text;\nuniform mediump float u_zoom;\nuniform bool u_rotate_with_map;\nuniform vec2 u_extrude_scale;\n\nuniform vec2 u_texsize;\n\nvarying vec2 v_tex;\nvarying vec2 v_fade_tex;\n\nvoid main() {\n #pragma mapbox: initialize lowp float opacity\n\n vec2 a_pos = a_pos_offset.xy;\n vec2 a_offset = a_pos_offset.zw;\n\n vec2 a_tex = a_data.xy;\n mediump vec2 label_data = unpack_float(a_data[2]);\n mediump float a_labelminzoom = label_data[0];\n mediump vec2 a_zoom = unpack_float(a_data[3]);\n mediump float a_minzoom = a_zoom[0];\n mediump float a_maxzoom = a_zoom[1];\n\n float size;\n // In order to accommodate placing labels around corners in\n // symbol-placement: line, each glyph in a label could have multiple\n // "quad"s only one of which should be shown at a given zoom level.\n // The min/max zoom assigned to each quad is based on the font size at\n // the vector tile\'s zoom level, which might be different than at the\n // currently rendered zoom level if text-size is zoom-dependent.\n // Thus, we compensate for this difference by calculating an adjustment\n // based on the scale of rendered text size relative to layout text size.\n mediump float layoutSize;\n if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {\n size = mix(a_size[0], a_size[1], u_size_t) / 10.0;\n layoutSize = a_size[2] / 10.0;\n } else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {\n size = a_size[0] / 10.0;\n layoutSize = size;\n } else if (!u_is_size_zoom_constant && u_is_size_feature_constant) {\n size = u_size;\n layoutSize = u_layout_size;\n } else {\n size = u_size;\n layoutSize = u_size;\n }\n\n float fontScale = u_is_text ? size / 24.0 : size;\n\n mediump float zoomAdjust = log2(size / layoutSize);\n mediump float adjustedZoom = (u_zoom - zoomAdjust) * 10.0;\n // result: z = 0 if a_minzoom <= adjustedZoom < a_maxzoom, and 1 otherwise\n mediump float z = 2.0 - step(a_minzoom, adjustedZoom) - (1.0 - step(a_maxzoom, adjustedZoom));\n\n vec2 extrude = fontScale * u_extrude_scale * (a_offset / 64.0);\n if (u_rotate_with_map) {\n gl_Position = u_matrix * vec4(a_pos + extrude, 0, 1);\n gl_Position.z += z * gl_Position.w;\n } else {\n gl_Position = u_matrix * vec4(a_pos, 0, 1) + vec4(extrude, 0, 0);\n }\n\n v_tex = a_tex / u_texsize;\n v_fade_tex = vec2(a_labelminzoom / 255.0, 0.0);\n}\n'},symbolSDF:{fragmentSource:"#define SDF_PX 8.0\n#define EDGE_GAMMA 0.105/DEVICE_PIXEL_RATIO\n\nuniform bool u_is_halo;\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\n\nuniform sampler2D u_texture;\nuniform sampler2D u_fadetexture;\nuniform highp float u_gamma_scale;\nuniform bool u_is_text;\n\nvarying vec2 v_tex;\nvarying vec2 v_fade_tex;\nvarying float v_gamma_scale;\nvarying float v_size;\n\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\n\n float fontScale = u_is_text ? v_size / 24.0 : v_size;\n\n lowp vec4 color = fill_color;\n highp float gamma = EDGE_GAMMA / (fontScale * u_gamma_scale);\n lowp float buff = (256.0 - 64.0) / 256.0;\n if (u_is_halo) {\n color = halo_color;\n gamma = (halo_blur * 1.19 / SDF_PX + EDGE_GAMMA) / (fontScale * u_gamma_scale);\n buff = (6.0 - halo_width / fontScale) / SDF_PX;\n }\n\n lowp float dist = texture2D(u_texture, v_tex).a;\n lowp float fade_alpha = texture2D(u_fadetexture, v_fade_tex).a;\n highp float gamma_scaled = gamma * v_gamma_scale;\n highp float alpha = smoothstep(buff - gamma_scaled, buff + gamma_scaled, dist) * fade_alpha;\n\n gl_FragColor = color * (alpha * opacity);\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"const float PI = 3.141592653589793;\n\nattribute vec4 a_pos_offset;\nattribute vec4 a_data;\n\n// contents of a_size vary based on the type of property value\n// used for {text,icon}-size.\n// For constants, a_size is disabled.\n// For source functions, we bind only one value per vertex: the value of {text,icon}-size evaluated for the current feature.\n// For composite functions:\n// [ text-size(lowerZoomStop, feature),\n// text-size(upperZoomStop, feature),\n// layoutSize == text-size(layoutZoomLevel, feature) ]\nattribute vec3 a_size;\nuniform bool u_is_size_zoom_constant;\nuniform bool u_is_size_feature_constant;\nuniform mediump float u_size_t; // used to interpolate between zoom stops when size is a composite function\nuniform mediump float u_size; // used when size is both zoom and feature constant\nuniform mediump float u_layout_size; // used when size is feature constant\n\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\n\n// matrix is for the vertex position.\nuniform mat4 u_matrix;\n\nuniform bool u_is_text;\nuniform mediump float u_zoom;\nuniform bool u_rotate_with_map;\nuniform bool u_pitch_with_map;\nuniform mediump float u_pitch;\nuniform mediump float u_bearing;\nuniform mediump float u_aspect_ratio;\nuniform vec2 u_extrude_scale;\n\nuniform vec2 u_texsize;\n\nvarying vec2 v_tex;\nvarying vec2 v_fade_tex;\nvarying float v_gamma_scale;\nvarying float v_size;\n\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\n\n vec2 a_pos = a_pos_offset.xy;\n vec2 a_offset = a_pos_offset.zw;\n\n vec2 a_tex = a_data.xy;\n\n mediump vec2 label_data = unpack_float(a_data[2]);\n mediump float a_labelminzoom = label_data[0];\n mediump float a_labelangle = label_data[1];\n\n mediump vec2 a_zoom = unpack_float(a_data[3]);\n mediump float a_minzoom = a_zoom[0];\n mediump float a_maxzoom = a_zoom[1];\n\n // In order to accommodate placing labels around corners in\n // symbol-placement: line, each glyph in a label could have multiple\n // \"quad\"s only one of which should be shown at a given zoom level.\n // The min/max zoom assigned to each quad is based on the font size at\n // the vector tile's zoom level, which might be different than at the\n // currently rendered zoom level if text-size is zoom-dependent.\n // Thus, we compensate for this difference by calculating an adjustment\n // based on the scale of rendered text size relative to layout text size.\n mediump float layoutSize;\n if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {\n v_size = mix(a_size[0], a_size[1], u_size_t) / 10.0;\n layoutSize = a_size[2] / 10.0;\n } else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {\n v_size = a_size[0] / 10.0;\n layoutSize = v_size;\n } else if (!u_is_size_zoom_constant && u_is_size_feature_constant) {\n v_size = u_size;\n layoutSize = u_layout_size;\n } else {\n v_size = u_size;\n layoutSize = u_size;\n }\n\n float fontScale = u_is_text ? v_size / 24.0 : v_size;\n\n mediump float zoomAdjust = log2(v_size / layoutSize);\n mediump float adjustedZoom = (u_zoom - zoomAdjust) * 10.0;\n // result: z = 0 if a_minzoom <= adjustedZoom < a_maxzoom, and 1 otherwise\n // Used below to move the vertex out of the clip space for when the current\n // zoom is out of the glyph's zoom range.\n mediump float z = 2.0 - step(a_minzoom, adjustedZoom) - (1.0 - step(a_maxzoom, adjustedZoom));\n\n // pitch-alignment: map\n // rotation-alignment: map | viewport\n if (u_pitch_with_map) {\n lowp float angle = u_rotate_with_map ? (a_labelangle / 256.0 * 2.0 * PI) : u_bearing;\n lowp float asin = sin(angle);\n lowp float acos = cos(angle);\n mat2 RotationMatrix = mat2(acos, asin, -1.0 * asin, acos);\n vec2 offset = RotationMatrix * a_offset;\n vec2 extrude = fontScale * u_extrude_scale * (offset / 64.0);\n gl_Position = u_matrix * vec4(a_pos + extrude, 0, 1);\n gl_Position.z += z * gl_Position.w;\n // pitch-alignment: viewport\n // rotation-alignment: map\n } else if (u_rotate_with_map) {\n // foreshortening factor to apply on pitched maps\n // as a label goes from horizontal <=> vertical in angle\n // it goes from 0% foreshortening to up to around 70% foreshortening\n lowp float pitchfactor = 1.0 - cos(u_pitch * sin(u_pitch * 0.75));\n\n lowp float lineangle = a_labelangle / 256.0 * 2.0 * PI;\n\n // use the lineangle to position points a,b along the line\n // project the points and calculate the label angle in projected space\n // this calculation allows labels to be rendered unskewed on pitched maps\n vec4 a = u_matrix * vec4(a_pos, 0, 1);\n vec4 b = u_matrix * vec4(a_pos + vec2(cos(lineangle),sin(lineangle)), 0, 1);\n lowp float angle = atan((b[1]/b[3] - a[1]/a[3])/u_aspect_ratio, b[0]/b[3] - a[0]/a[3]);\n lowp float asin = sin(angle);\n lowp float acos = cos(angle);\n mat2 RotationMatrix = mat2(acos, -1.0 * asin, asin, acos);\n\n vec2 offset = RotationMatrix * (vec2((1.0-pitchfactor)+(pitchfactor*cos(angle*2.0)), 1.0) * a_offset);\n vec2 extrude = fontScale * u_extrude_scale * (offset / 64.0);\n gl_Position = u_matrix * vec4(a_pos, 0, 1) + vec4(extrude, 0, 0);\n gl_Position.z += z * gl_Position.w;\n // pitch-alignment: viewport\n // rotation-alignment: viewport\n } else {\n vec2 extrude = fontScale * u_extrude_scale * (a_offset / 64.0);\n gl_Position = u_matrix * vec4(a_pos, 0, 1) + vec4(extrude, 0, 0);\n }\n\n v_gamma_scale = gl_Position.w;\n\n v_tex = a_tex / u_texsize;\n v_fade_tex = vec2(a_labelminzoom / 255.0, 0.0);\n}\n"}}},{path:23}],80:[function(_dereq_,module,exports){"use strict";var VertexArrayObject=function(){this.boundProgram=null,this.boundVertexBuffer=null,this.boundVertexBuffer2=null,this.boundElementBuffer=null,this.boundVertexOffset=null,this.vao=null};VertexArrayObject.prototype.bind=function(e,t,r,i,n,s){void 0===e.extVertexArrayObject&&(e.extVertexArrayObject=e.getExtension("OES_vertex_array_object"));var o=!this.vao||this.boundProgram!==t||this.boundVertexBuffer!==r||this.boundVertexBuffer2!==n||this.boundElementBuffer!==i||this.boundVertexOffset!==s;!e.extVertexArrayObject||o?(this.freshBind(e,t,r,i,n,s),this.gl=e):e.extVertexArrayObject.bindVertexArrayOES(this.vao)},VertexArrayObject.prototype.freshBind=function(e,t,r,i,n,s){var o,u=t.numAttributes;if(e.extVertexArrayObject)this.vao&&this.destroy(),this.vao=e.extVertexArrayObject.createVertexArrayOES(),e.extVertexArrayObject.bindVertexArrayOES(this.vao),o=0,this.boundProgram=t,this.boundVertexBuffer=r,this.boundVertexBuffer2=n,this.boundElementBuffer=i,this.boundVertexOffset=s;else{o=e.currentNumAttributes||0;for(var b=u;bthis.maxzoom?Math.pow(2,t.coord.z-this.maxzoom):1,r={type:this.type,uid:t.uid,coord:t.coord,zoom:t.coord.z,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,overscaling:i,angle:this.map.transform.angle,pitch:this.map.transform.pitch,showCollisionBoxes:this.map.showCollisionBoxes};t.workerID=this.dispatcher.send("loadTile",r,function(i,r){if(t.unloadVectorData(),!t.aborted)return i?e(i):(t.loadVectorData(r,o.map.painter),t.redoWhenDone&&(t.redoWhenDone=!1,t.redoPlacement(o)),e(null))},this.workerID)},e.prototype.abortTile=function(t){t.aborted=!0},e.prototype.unloadTile=function(t){t.unloadVectorData(),this.dispatcher.send("removeTile",{uid:t.uid,type:this.type,source:this.id},function(){},t.workerID)},e.prototype.onRemove=function(){this.dispatcher.broadcast("removeSource",{type:this.type,source:this.id},function(){})},e.prototype.serialize=function(){return{type:this.type,data:this._data}},e}(Evented);module.exports=GeoJSONSource},{"../data/extent":54,"../util/evented":203,"../util/util":215,"../util/window":197}],84:[function(_dereq_,module,exports){"use strict";var ajax=_dereq_("../util/ajax"),rewind=_dereq_("geojson-rewind"),GeoJSONWrapper=_dereq_("./geojson_wrapper"),vtpbf=_dereq_("vt-pbf"),supercluster=_dereq_("supercluster"),geojsonvt=_dereq_("geojson-vt"),GeoJSONWorkerSource=function(e){function r(r,t,o){e.call(this,r,t),o&&(this.loadGeoJSON=o),this._geoJSONIndexes={}}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.loadVectorData=function(e,r){var t=e.source,o=e.coord;if(!this._geoJSONIndexes[t])return r(null,null);var n=this._geoJSONIndexes[t].getTile(Math.min(o.z,e.maxZoom),o.x,o.y);if(!n)return r(null,null);var u=new GeoJSONWrapper(n.features);u.name="_geojsonTileLayer";var a=vtpbf({layers:{_geojsonTileLayer:u}});0===a.byteOffset&&a.byteLength===a.buffer.byteLength||(a=new Uint8Array(a)),u.rawData=a.buffer,r(null,u)},r.prototype.loadData=function(e,r){var t=function(t,o){var n=this;return t?r(t):"object"!=typeof o?r(new Error("Input data is not a valid GeoJSON object.")):(rewind(o,!0),void this._indexData(o,e,function(t,o){return t?r(t):(n._geoJSONIndexes[e.source]=o,void r(null))}))}.bind(this);this.loadGeoJSON(e,t)},r.prototype.loadGeoJSON=function(e,r){if(e.url)ajax.getJSON(e.url,r);else{if("string"!=typeof e.data)return r(new Error("Input data is not a valid GeoJSON object."));try{return r(null,JSON.parse(e.data))}catch(e){return r(new Error("Input data is not a valid GeoJSON object."))}}},r.prototype.removeSource=function(e){this._geoJSONIndexes[e.source]&&delete this._geoJSONIndexes[e.source]},r.prototype._indexData=function(e,r,t){try{r.cluster?t(null,supercluster(r.superclusterOptions).load(e.features)):t(null,geojsonvt(e,r.geojsonVtOptions))}catch(e){return t(e)}},r}(_dereq_("./vector_tile_worker_source"));module.exports=GeoJSONWorkerSource},{"../util/ajax":194,"./geojson_wrapper":85,"./vector_tile_worker_source":98,"geojson-rewind":7,"geojson-vt":11,supercluster:29,"vt-pbf":38}],85:[function(_dereq_,module,exports){"use strict";var Point=_dereq_("point-geometry"),VectorTileFeature=_dereq_("vector-tile").VectorTileFeature,EXTENT=_dereq_("../data/extent"),FeatureWrapper=function(e){var t=this;if(this.type=e.type,1===e.type){this.rawGeometry=[];for(var r=0;rt)){var n=Math.pow(2,Math.min(a.coord.z,i._source.maxzoom)-Math.min(e.z,i._source.maxzoom));if(Math.floor(a.coord.x/n)===e.x&&Math.floor(a.coord.y/n)===e.y)for(o[s]=!0,r=!0;a&&a.coord.z-1>e.z;){var d=a.coord.parent(i._source.maxzoom).id;(a=i._tiles[d])&&a.hasData()&&(delete o[s],o[d]=!0)}}}return r},t.prototype.findLoadedParent=function(e,t,o){for(var i=this,r=e.z-1;r>=t;r--){e=e.parent(i._source.maxzoom);var s=i._tiles[e.id];if(s&&s.hasData())return o[e.id]=!0,s;if(i._cache.has(e.id))return o[e.id]=!0,i._cache.getWithoutRemoving(e.id)}},t.prototype.updateCacheSize=function(e){var i=(Math.ceil(e.width/e.tileSize)+1)*(Math.ceil(e.height/e.tileSize)+1);this._cache.setMaxSize(Math.floor(5*i))},t.prototype.update=function(e){var o=this;if(this.transform=e,this._sourceLoaded){var i,r,s,a;this.updateCacheSize(e);var n=(this._source.roundZoom?Math.round:Math.floor)(this.getZoom(e)),d=Math.max(n-t.maxOverzooming,this._source.minzoom),c=Math.max(n+t.maxUnderzooming,this._source.minzoom),h={};this._coveredTiles={};var u;for(this.used?this._source.coord?u=e.getVisibleWrappedCoordinates(this._source.coord):(u=e.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(u=u.filter(function(e){return o._source.hasTile(e)}))):u=[],i=0;i=Date.now())&&(o.findLoadedChildren(r,c,h)&&(h[_]=!0),(a=o.findLoadedParent(r,d,l))&&o.addTile(a.coord))}var f;for(f in l)h[f]||(o._coveredTiles[f]=!0);for(f in l)h[f]=!0;var T=util.keysDifference(this._tiles,h);for(i=0;ithis._source.maxzoom?Math.pow(2,r-this._source.maxzoom):1;t=new Tile(o,this._source.tileSize*s,this._source.maxzoom),this.loadTile(t,this._tileLoaded.bind(this,t,e.id,t.state))}return t.uses++,this._tiles[e.id]=t,i||this._source.fire("dataloading",{tile:t,coord:t.coord,dataType:"source"}),t},t.prototype._setTileReloadTimer=function(e,t){var o=this,i=t.getExpiryTimeout();i&&(this._timers[e]=setTimeout(function(){o.reloadTile(e,"expired"),o._timers[e]=void 0},i))},t.prototype._setCacheInvalidationTimer=function(e,t){var o=this,i=t.getExpiryTimeout();i&&(this._cacheTimers[e]=setTimeout(function(){o._cache.remove(e),o._cacheTimers[e]=void 0},i))},t.prototype.removeTile=function(e){var t=this._tiles[e];if(t&&(t.uses--,delete this._tiles[e],this._timers[e]&&(clearTimeout(this._timers[e]),this._timers[e]=void 0),!(t.uses>0)))if(t.hasData()){var o=t.coord.wrapped().id;this._cache.add(o,t),this._setCacheInvalidationTimer(o,t)}else t.aborted=!0,this.abortTile(t),this.unloadTile(t)},t.prototype.clearTiles=function(){var e=this;for(var t in e._tiles)e.removeTile(t);this._cache.reset()},t.prototype.tilesIn=function(e){for(var t=this,o={},i=this.getIds(),r=1/0,s=1/0,a=-1/0,n=-1/0,d=e[0].zoom,c=0;c=0&&p[1].y>=0){for(var _=[],f=0;fo)r=!1;else if(t)if(this.expirationTime=a.minX&&t.x=a.minY&&t.yi.row){var o=t;t=i,i=o}return{x0:t.column,y0:t.row,x1:i.column,y1:i.row,dx:i.column-t.column,dy:i.row-t.row}}function scanSpans(t,i,o,r,e){var n=Math.max(o,Math.floor(i.y0)),h=Math.min(r,Math.ceil(i.y1));if(t.x0===i.x0&&t.y0===i.y0?t.x0+i.dy/t.dy*t.dx0,l=i.dx<0,u=n;ua.dy&&(h=s,s=a,a=h),s.dy>d.dy&&(h=s,s=d,d=h),a.dy>d.dy&&(h=a,a=d,d=h),s.dy&&scanSpans(d,s,r,e,n),a.dy&&scanSpans(d,a,r,e,n)}function getQuadkey(t,i,o){for(var r,e="",n=t;n>0;n--)r=1<t?new TileCoord(this.z-1,this.x,this.y,this.w):new TileCoord(this.z-1,Math.floor(this.x/2),Math.floor(this.y/2),this.w)},TileCoord.prototype.wrapped=function(){return new TileCoord(this.z,this.x,this.y,0)},TileCoord.prototype.children=function(t){if(this.z>=t)return[new TileCoord(this.z+1,this.x,this.y,this.w)];var i=this.z+1,o=2*this.x,r=2*this.y;return[new TileCoord(i,o,r,this.w),new TileCoord(i,o+1,r,this.w),new TileCoord(i,o,r+1,this.w),new TileCoord(i,o+1,r+1,this.w)]},TileCoord.cover=function(t,i,o,r){function e(t,i,e){var s,a,d,y;if(e>=0&&e<=n)for(s=t;sthis.maxzoom?Math.pow(2,e.coord.z-this.maxzoom):1,r={url:normalizeURL(e.coord.url(this.tiles,this.maxzoom,this.scheme),this.url),uid:e.uid,coord:e.coord,zoom:e.coord.z,tileSize:this.tileSize*o,type:this.type,source:this.id,overscaling:o,angle:this.map.transform.angle,pitch:this.map.transform.pitch,showCollisionBoxes:this.map.showCollisionBoxes};e.workerID&&"expired"!==e.state?"loading"===e.state?e.reloadCallback=t:this.dispatcher.send("reloadTile",r,i.bind(this),e.workerID):e.workerID=this.dispatcher.send("loadTile",r,i.bind(this))},t.prototype.abortTile=function(e){this.dispatcher.send("abortTile",{uid:e.uid,type:this.type,source:this.id},null,e.workerID)},t.prototype.unloadTile=function(e){e.unloadVectorData(),this.dispatcher.send("removeTile",{uid:e.uid,type:this.type,source:this.id},null,e.workerID)},t}(Evented);module.exports=VectorTileSource},{"../util/evented":203,"../util/mapbox":210,"../util/util":215,"./load_tilejson":87,"./tile_bounds":95}],98:[function(_dereq_,module,exports){"use strict";var ajax=_dereq_("../util/ajax"),vt=_dereq_("vector-tile"),Protobuf=_dereq_("pbf"),WorkerTile=_dereq_("./worker_tile"),util=_dereq_("../util/util"),VectorTileWorkerSource=function(e,r,t){this.actor=e,this.layerIndex=r,t&&(this.loadVectorData=t),this.loading={},this.loaded={}};VectorTileWorkerSource.prototype.loadTile=function(e,r){function t(e,t){return delete this.loading[o][i],e?r(e):t?(a.vectorTile=t,a.parse(t,this.layerIndex,this.actor,function(e,o,i){if(e)return r(e);var a={};t.expires&&(a.expires=t.expires),t.cacheControl&&(a.cacheControl=t.cacheControl),r(null,util.extend({rawTileData:t.rawData},o,a),i)}),this.loaded[o]=this.loaded[o]||{},void(this.loaded[o][i]=a)):r(null,null)}var o=e.source,i=e.uid;this.loading[o]||(this.loading[o]={});var a=this.loading[o][i]=new WorkerTile(e);a.abort=this.loadVectorData(e,t.bind(this))},VectorTileWorkerSource.prototype.reloadTile=function(e,r){function t(e,t){if(this.reloadCallback){var o=this.reloadCallback;delete this.reloadCallback,this.parse(this.vectorTile,a.layerIndex,a.actor,o)}r(e,t)}var o=this.loaded[e.source],i=e.uid,a=this;if(o&&o[i]){var l=o[i];"parsing"===l.status?l.reloadCallback=r:"done"===l.status&&l.parse(l.vectorTile,this.layerIndex,this.actor,t.bind(l))}},VectorTileWorkerSource.prototype.abortTile=function(e){var r=this.loading[e.source],t=e.uid;r&&r[t]&&r[t].abort&&(r[t].abort(),delete r[t])},VectorTileWorkerSource.prototype.removeTile=function(e){var r=this.loaded[e.source],t=e.uid;r&&r[t]&&delete r[t]},VectorTileWorkerSource.prototype.loadVectorData=function(e,r){function t(e,t){if(e)return r(e);var o=new vt.VectorTile(new Protobuf(t.data));o.rawData=t.data,o.cacheControl=t.cacheControl,o.expires=t.expires,r(e,o)}var o=ajax.getArrayBuffer(e.url,t.bind(this));return function(){o.abort()}},VectorTileWorkerSource.prototype.redoPlacement=function(e,r){var t=this.loaded[e.source],o=this.loading[e.source],i=e.uid;if(t&&t[i]){var l=t[i].redoPlacement(e.angle,e.pitch,e.showCollisionBoxes);l.result&&r(null,l.result,l.transferables)}else o&&o[i]&&(o[i].angle=e.angle)},module.exports=VectorTileWorkerSource},{"../util/ajax":194,"../util/util":215,"./worker_tile":101,pbf:25,"vector-tile":34}],99:[function(_dereq_,module,exports){"use strict";var ajax=_dereq_("../util/ajax"),VideoSource=function(t){function e(e,o,i,r){t.call(this,e,o,i,r),this.roundZoom=!0,this.type="video",this.options=o}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.load=function(){var t=this,e=this.options;this.urls=e.urls,ajax.getVideo(e.urls,function(e,o){if(e)return t.fire("error",{error:e});t.video=o,t.video.loop=!0;var i;t.video.addEventListener("playing",function(){i=t.map.style.animationLoop.set(1/0),t.map._rerender()}),t.video.addEventListener("pause",function(){t.map.style.animationLoop.cancel(i)}),t.map&&t.video.play(),t._finishLoading()})},e.prototype.getVideo=function(){return this.video},e.prototype.onAdd=function(t){this.map||(this.load(),this.map=t,this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},e.prototype.prepare=function(){!this.tile||this.video.readyState<2||this._prepareImage(this.map.painter.gl,this.video)},e.prototype.serialize=function(){return{type:"video",urls:this.urls,coordinates:this.coordinates}},e}(_dereq_("./image_source"));module.exports=VideoSource},{"../util/ajax":194,"./image_source":86}],100:[function(_dereq_,module,exports){"use strict";var Actor=_dereq_("../util/actor"),StyleLayerIndex=_dereq_("../style/style_layer_index"),VectorTileWorkerSource=_dereq_("./vector_tile_worker_source"),GeoJSONWorkerSource=_dereq_("./geojson_worker_source"),globalRTLTextPlugin=_dereq_("./rtl_text_plugin"),Worker=function(e){var r=this;this.self=e,this.actor=new Actor(e,this),this.layerIndexes={},this.workerSourceTypes={vector:VectorTileWorkerSource,geojson:GeoJSONWorkerSource},this.workerSources={},this.self.registerWorkerSource=function(e,o){if(r.workerSourceTypes[e])throw new Error('Worker source with name "'+e+'" already registered.');r.workerSourceTypes[e]=o},this.self.registerRTLTextPlugin=function(e){if(globalRTLTextPlugin.applyArabicShaping||globalRTLTextPlugin.processBidirectionalText)throw new Error("RTL text plugin already registered.");globalRTLTextPlugin.applyArabicShaping=e.applyArabicShaping,globalRTLTextPlugin.processBidirectionalText=e.processBidirectionalText}};Worker.prototype.setLayers=function(e,r){this.getLayerIndex(e).replace(r)},Worker.prototype.updateLayers=function(e,r){this.getLayerIndex(e).update(r.layers,r.removedIds,r.symbolOrder)},Worker.prototype.loadTile=function(e,r,o){this.getWorkerSource(e,r.type).loadTile(r,o)},Worker.prototype.reloadTile=function(e,r,o){this.getWorkerSource(e,r.type).reloadTile(r,o)},Worker.prototype.abortTile=function(e,r){this.getWorkerSource(e,r.type).abortTile(r)},Worker.prototype.removeTile=function(e,r){this.getWorkerSource(e,r.type).removeTile(r)},Worker.prototype.removeSource=function(e,r){var o=this.getWorkerSource(e,r.type);void 0!==o.removeSource&&o.removeSource(r)},Worker.prototype.redoPlacement=function(e,r,o){this.getWorkerSource(e,r.type).redoPlacement(r,o)},Worker.prototype.loadWorkerSource=function(e,r,o){try{this.self.importScripts(r.url),o()}catch(e){o(e)}},Worker.prototype.loadRTLTextPlugin=function(e,r,o){try{globalRTLTextPlugin.applyArabicShaping||globalRTLTextPlugin.processBidirectionalText||this.self.importScripts(r)}catch(e){o(e)}},Worker.prototype.getLayerIndex=function(e){var r=this.layerIndexes[e];return r||(r=this.layerIndexes[e]=new StyleLayerIndex),r},Worker.prototype.getWorkerSource=function(e,r){var o=this;if(this.workerSources[e]||(this.workerSources[e]={}),!this.workerSources[e][r]){var t={send:function(r,t,i,n){o.actor.send(r,t,i,n,e)}};this.workerSources[e][r]=new this.workerSourceTypes[r](t,this.getLayerIndex(e))}return this.workerSources[e][r]},module.exports=function(e){return new Worker(e)}},{"../style/style_layer_index":157,"../util/actor":193,"./geojson_worker_source":84,"./rtl_text_plugin":91,"./vector_tile_worker_source":98}],101:[function(_dereq_,module,exports){"use strict";function recalculateLayers(e,i){for(var r=0,o=e.layers;r=B.maxzoom||B.layout&&"none"===B.layout.visibility)){for(var b=0,k=x;b=0;w--){var A=n[i.symbolOrder[w]];A&&t.symbolBuckets.push(A)}if(0===this.symbolBuckets.length)return T(new CollisionTile(this.angle,this.pitch,this.collisionBoxArray));var D=0,I=Object.keys(c.iconDependencies),O=util.mapObject(c.glyphDependencies,function(e){return Object.keys(e).map(Number)}),L=function(e){if(e)return o(e);if(2===++D){for(var i=new CollisionTile(t.angle,t.pitch,t.collisionBoxArray),r=0,s=t.symbolBuckets;r"===i||"<="===i||">="===i?compileComparisonOp(e[1],e[2],i,!0):"any"===i?compileLogicalOp(e.slice(1),"||"):"all"===i?compileLogicalOp(e.slice(1),"&&"):"none"===i?compileNegation(compileLogicalOp(e.slice(1),"||")):"in"===i?compileInOp(e[1],e.slice(2)):"!in"===i?compileNegation(compileInOp(e[1],e.slice(2))):"has"===i?compileHasOp(e[1]):"!has"===i?compileNegation(compileHasOp(e[1])):"true")+")"}function compilePropertyReference(e){return"$type"===e?"f.type":"$id"===e?"f.id":"p["+JSON.stringify(e)+"]"}function compileComparisonOp(e,i,n,r){var o=compilePropertyReference(e),t="$type"===e?types.indexOf(i):JSON.stringify(i);return(r?"typeof "+o+"=== typeof "+t+"&&":"")+o+n+t}function compileLogicalOp(e,i){return e.map(compile).join(i)}function compileInOp(e,i){"$type"===e&&(i=i.map(function(e){return types.indexOf(e)}));var n=JSON.stringify(i.sort(compare)),r=compilePropertyReference(e);return i.length<=200?n+".indexOf("+r+") !== -1":"function(v, a, i, j) {while (i <= j) { var m = (i + j) >> 1; if (a[m] === v) return true; if (a[m] > v) j = m - 1; else i = m + 1;}return false; }("+r+", "+n+",0,"+(i.length-1)+")"}function compileHasOp(e){return"$id"===e?'"id" in f':JSON.stringify(e)+" in p"}function compileNegation(e){return"!("+e+")"}function compare(e,i){return ei?1:0}module.exports=createFilter;var types=["Unknown","Point","LineString","Polygon"]},{}],106:[function(_dereq_,module,exports){"use strict";function xyz2lab(r){return r>t3?Math.pow(r,1/3):r/t2+t0}function lab2xyz(r){return r>t1?r*r*r:t2*(r-t0)}function xyz2rgb(r){return 255*(r<=.0031308?12.92*r:1.055*Math.pow(r,1/2.4)-.055)}function rgb2xyz(r){return r/=255,r<=.04045?r/12.92:Math.pow((r+.055)/1.055,2.4)}function rgbToLab(r){var t=rgb2xyz(r[0]),a=rgb2xyz(r[1]),n=rgb2xyz(r[2]),b=xyz2lab((.4124564*t+.3575761*a+.1804375*n)/Xn),o=xyz2lab((.2126729*t+.7151522*a+.072175*n)/Yn);return[116*o-16,500*(b-o),200*(o-xyz2lab((.0193339*t+.119192*a+.9503041*n)/Zn)),r[3]]}function labToRgb(r){var t=(r[0]+16)/116,a=isNaN(r[1])?t:t+r[1]/500,n=isNaN(r[2])?t:t-r[2]/200;return t=Yn*lab2xyz(t),a=Xn*lab2xyz(a),n=Zn*lab2xyz(n),[xyz2rgb(3.2404542*a-1.5371385*t-.4985314*n),xyz2rgb(-.969266*a+1.8760108*t+.041556*n),xyz2rgb(.0556434*a-.2040259*t+1.0572252*n),r[3]]}function rgbToHcl(r){var t=rgbToLab(r),a=t[0],n=t[1],b=t[2],o=Math.atan2(b,n)*rad2deg;return[o<0?o+360:o,Math.sqrt(n*n+b*b),a,r[3]]}function hclToRgb(r){var t=r[0]*deg2rad,a=r[1];return labToRgb([r[2],Math.cos(t)*a,Math.sin(t)*a,r[3]])}var Xn=.95047,Yn=1,Zn=1.08883,t0=4/29,t1=6/29,t2=3*t1*t1,t3=t1*t1*t1,deg2rad=Math.PI/180,rad2deg=180/Math.PI;module.exports={lab:{forward:rgbToLab,reverse:labToRgb},hcl:{forward:rgbToHcl,reverse:hclToRgb}}},{}],107:[function(_dereq_,module,exports){"use strict";function identityFunction(t){return t}function createFunction(t,e){var o,n="color"===e.type;if(isFunctionDefinition(t)){var r=t.stops&&"object"==typeof t.stops[0][0],a=r||void 0!==t.property,i=r||!a,s=t.type||("interpolated"===e.function?"exponential":"interval");n&&((t=extend({},t)).stops&&(t.stops=t.stops.map(function(t){return[t[0],parseColor(t[1])]})),t.default?t.default=parseColor(t.default):t.default=parseColor(e.default));var u,p,l;if("exponential"===s)u=evaluateExponentialFunction;else if("interval"===s)u=evaluateIntervalFunction;else if("categorical"===s){u=evaluateCategoricalFunction,p=Object.create(null);for(var c=0,f=t.stops;c=t.stops[n-1][0])return t.stops[n-1][1];var r=findStopLessThanOrEqualTo(t.stops,o);return t.stops[r][1]}function evaluateExponentialFunction(t,e,o){var n=void 0!==t.base?t.base:1;if("number"!==getType(o))return coalesce(t.default,e.default);var r=t.stops.length;if(1===r)return t.stops[0][1];if(o<=t.stops[0][0])return t.stops[0][1];if(o>=t.stops[r-1][0])return t.stops[r-1][1];var a=findStopLessThanOrEqualTo(t.stops,o),i=interpolationFactor(o,n,t.stops[a][0],t.stops[a+1][0]),s=t.stops[a][1],u=t.stops[a+1][1],p=interpolate[e.type]||identityFunction;return"function"==typeof s?function(){var t=s.apply(void 0,arguments),e=u.apply(void 0,arguments);if(void 0!==t&&void 0!==e)return p(t,e,i)}:p(s,u,i)}function evaluateIdentityFunction(t,e,o){return"color"===e.type?o=parseColor(o):getType(o)!==e.type&&(o=void 0),coalesce(o,t.default,e.default)}function findStopLessThanOrEqualTo(t,e){for(var o,n,a=0,i=t.length-1,s=0;a<=i;){if(s=Math.floor((a+i)/2),o=t[s][0],n=t[s+1][0],e===o||e>o&&ee&&(i=s-1)}return Math.max(s-1,0)}function isFunctionDefinition(t){return"object"==typeof t&&(t.stops||"identity"===t.type)}function interpolationFactor(t,e,o,n){var r=n-o,a=t-o;return 1===e?a/r:(Math.pow(e,a)-1)/(Math.pow(e,r)-1)}var colorSpaces=_dereq_("./color_spaces"),parseColor=_dereq_("../util/parse_color"),extend=_dereq_("../util/extend"),getType=_dereq_("../util/get_type"),interpolate=_dereq_("../util/interpolate");module.exports=createFunction,module.exports.isFunctionDefinition=isFunctionDefinition,module.exports.interpolationFactor=interpolationFactor,module.exports.findStopLessThanOrEqualTo=findStopLessThanOrEqualTo},{"../util/extend":121,"../util/get_type":122,"../util/interpolate":123,"../util/parse_color":124,"./color_spaces":106}],108:[function(_dereq_,module,exports){"use strict";function key(r){return stringify(refProperties.map(function(e){return r[e]}))}function groupByLayout(r){for(var e={},t=0;t255?255:e}function clamp_css_float(e){return e<0?0:e>1?1:e}function parse_css_int(e){return clamp_css_byte("%"===e[e.length-1]?parseFloat(e)/100*255:parseInt(e))}function parse_css_float(e){return clamp_css_float("%"===e[e.length-1]?parseFloat(e)/100:parseFloat(e))}function css_hue_to_rgb(e,r,l){return l<0?l+=1:l>1&&(l-=1),6*l<1?e+(r-e)*l*6:2*l<1?r:3*l<2?e+(r-e)*(2/3-l)*6:e}function parseCSSColor(e){var r=e.replace(/ /g,"").toLowerCase();if(r in kCSSColorTable)return kCSSColorTable[r].slice();if("#"===r[0]){if(4===r.length)return(l=parseInt(r.substr(1),16))>=0&&l<=4095?[(3840&l)>>4|(3840&l)>>8,240&l|(240&l)>>4,15&l|(15&l)<<4,1]:null;if(7===r.length){var l=parseInt(r.substr(1),16);return l>=0&&l<=16777215?[(16711680&l)>>16,(65280&l)>>8,255&l,1]:null}return null}var a=r.indexOf("("),t=r.indexOf(")");if(-1!==a&&t+1===r.length){var n=r.substr(0,a),s=r.substr(a+1,t-(a+1)).split(","),o=1;switch(n){case"rgba":if(4!==s.length)return null;o=parse_css_float(s.pop());case"rgb":return 3!==s.length?null:[parse_css_int(s[0]),parse_css_int(s[1]),parse_css_int(s[2]),o];case"hsla":if(4!==s.length)return null;o=parse_css_float(s.pop());case"hsl":if(3!==s.length)return null;var i=(parseFloat(s[0])%360+360)%360/360,u=parse_css_float(s[1]),g=parse_css_float(s[2]),d=g<=.5?g*(u+1):g+u-g*u,c=2*g-d;return[clamp_css_byte(255*css_hue_to_rgb(c,d,i+1/3)),clamp_css_byte(255*css_hue_to_rgb(c,d,i)),clamp_css_byte(255*css_hue_to_rgb(c,d,i-1/3)),o];default:return null}}return null}var kCSSColorTable={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],rebeccapurple:[102,51,153,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};try{exports.parseCSSColor=parseCSSColor}catch(e){}},{}],110:[function(_dereq_,module,exports){function sss(r){var e,t,s,n,u,a;switch(typeof r){case"object":if(null===r)return null;if(isArray(r)){for(s="[",t=r.length-1,e=0;e-1&&(s+=sss(r[e])),s+"]"}for(t=(n=objKeys(r).sort()).length,s="{",u=n[e=0],a=t>0&&void 0!==r[u];e15?"\\u00"+e.toString(16):"\\u000"+e.toString(16)}};module.exports=function(r){if(void 0!==r)return""+sss(r)},module.exports.stringSearch=strReg,module.exports.stringReplace=strReplace},{}],111:[function(_dereq_,module,exports){function isObjectLike(r){return!!r&&"object"==typeof r}function arraySome(r,e){for(var a=-1,t=r.length;++as))return!1;for(;++c-1&&t%1==0&&t<=MAX_SAFE_INTEGER}function isObject(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function isObjectLike(t){return!!t&&"object"==typeof t}var MAX_SAFE_INTEGER=9007199254740991,argsTag="[object Arguments]",funcTag="[object Function]",genTag="[object GeneratorFunction]",objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,objectToString=objectProto.toString,propertyIsEnumerable=objectProto.propertyIsEnumerable;module.exports=isArguments},{}],115:[function(_dereq_,module,exports){function isObjectLike(t){return!!t&&"object"==typeof t}function isLength(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=MAX_SAFE_INTEGER}function isFunction(t){return isObject(t)&&objToString.call(t)==funcTag}function isObject(t){var r=typeof t;return!!t&&("object"==r||"function"==r)}function isNative(t){return null!=t&&(isFunction(t)?reIsNative.test(fnToString.call(t)):isObjectLike(t)&&reIsHostCtor.test(t))}var funcTag="[object Function]",reIsHostCtor=/^\[object .+?Constructor\]$/,objectProto=Object.prototype,fnToString=Function.prototype.toString,hasOwnProperty=objectProto.hasOwnProperty,objToString=objectProto.toString,reIsNative=RegExp("^"+fnToString.call(hasOwnProperty).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),MAX_SAFE_INTEGER=9007199254740991,isArray=function(t,r){var e=null==t?void 0:t[r];return isNative(e)?e:void 0}(Array,"isArray")||function(t){return isObjectLike(t)&&isLength(t.length)&&"[object Array]"==objToString.call(t)};module.exports=isArray},{}],116:[function(_dereq_,module,exports){function isEqual(a,l,i,e){var s=(i="function"==typeof i?bindCallback(i,e,3):void 0)?i(a,l):void 0;return void 0===s?baseIsEqual(a,l,i):!!s}var baseIsEqual=_dereq_("lodash._baseisequal"),bindCallback=_dereq_("lodash._bindcallback");module.exports=isEqual},{"lodash._baseisequal":111,"lodash._bindcallback":112}],117:[function(_dereq_,module,exports){function isLength(a){return"number"==typeof a&&a>-1&&a%1==0&&a<=MAX_SAFE_INTEGER}function isObjectLike(a){return!!a&&"object"==typeof a}function isTypedArray(a){return isObjectLike(a)&&isLength(a.length)&&!!typedArrayTags[objectToString.call(a)]}var MAX_SAFE_INTEGER=9007199254740991,typedArrayTags={};typedArrayTags["[object Float32Array]"]=typedArrayTags["[object Float64Array]"]=typedArrayTags["[object Int8Array]"]=typedArrayTags["[object Int16Array]"]=typedArrayTags["[object Int32Array]"]=typedArrayTags["[object Uint8Array]"]=typedArrayTags["[object Uint8ClampedArray]"]=typedArrayTags["[object Uint16Array]"]=typedArrayTags["[object Uint32Array]"]=!0,typedArrayTags["[object Arguments]"]=typedArrayTags["[object Array]"]=typedArrayTags["[object ArrayBuffer]"]=typedArrayTags["[object Boolean]"]=typedArrayTags["[object DataView]"]=typedArrayTags["[object Date]"]=typedArrayTags["[object Error]"]=typedArrayTags["[object Function]"]=typedArrayTags["[object Map]"]=typedArrayTags["[object Number]"]=typedArrayTags["[object Object]"]=typedArrayTags["[object RegExp]"]=typedArrayTags["[object Set]"]=typedArrayTags["[object String]"]=typedArrayTags["[object WeakMap]"]=!1;var objectToString=Object.prototype.toString;module.exports=isTypedArray},{}],118:[function(_dereq_,module,exports){function isArrayLike(e){return null!=e&&isLength(getLength(e))}function isIndex(e,t){return e="number"==typeof e||reIsUint.test(e)?+e:-1,t=null==t?MAX_SAFE_INTEGER:t,e>-1&&e%1==0&&e-1&&e%1==0&&e<=MAX_SAFE_INTEGER}function shimKeys(e){for(var t=keysIn(e),r=t.length,n=r&&e.length,s=!!n&&isLength(n)&&(isArray(e)||isArguments(e)),o=-1,i=[];++o0;++n":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{}}},geometry_type:{type:"enum",values:{Point:{},LineString:{},Polygon:{}}},function:{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:22,value:["number","color"],length:2},light:{anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},transition:!1},position:{type:"array",default:[1.15,210,30],length:3,value:"number",transition:!0,function:"interpolated","zoom-function":!0,"property-function":!1},color:{type:"color",default:"#ffffff",function:"interpolated","zoom-function":!0,"property-function":!1,transition:!0},intensity:{type:"number",default:.5,minimum:0,maximum:1,function:"interpolated","zoom-function":!0,"property-function":!1,transition:!0}},paint:["paint_fill","paint_line","paint_circle","paint_fill-extrusion","paint_symbol","paint_raster","paint_background"],paint_fill:{"fill-antialias":{type:"boolean",function:"piecewise-constant","zoom-function":!0,default:!0},"fill-opacity":{type:"number",function:"interpolated","zoom-function":!0,"property-function":!0,default:1,minimum:0,maximum:1,transition:!0},"fill-color":{type:"color",default:"#000000",function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,requires:[{"!":"fill-pattern"}]},"fill-outline-color":{type:"color",function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}]},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],function:"interpolated","zoom-function":!0,transition:!0,units:"pixels"},"fill-translate-anchor":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{map:{},viewport:{}},default:"map",requires:["fill-translate"]},"fill-pattern":{type:"string",function:"piecewise-constant","zoom-function":!0,transition:!0}},"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",function:"interpolated","zoom-function":!0,"property-function":!1,default:1,minimum:0,maximum:1,transition:!0},"fill-extrusion-color":{type:"color",default:"#000000",function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,requires:[{"!":"fill-extrusion-pattern"}]},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],function:"interpolated","zoom-function":!0,transition:!0,units:"pixels"},"fill-extrusion-translate-anchor":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"]},"fill-extrusion-pattern":{type:"string",function:"piecewise-constant","zoom-function":!0,transition:!0},"fill-extrusion-height":{type:"number",function:"interpolated","zoom-function":!0,"property-function":!0,default:0,minimum:0,maximum:65535,units:"meters",transition:!0},"fill-extrusion-base":{type:"number",function:"interpolated","zoom-function":!0,"property-function":!0,default:0,minimum:0,maximum:65535,units:"meters",transition:!0,requires:["fill-extrusion-height"]}},paint_line:{"line-opacity":{type:"number",function:"interpolated","zoom-function":!0,"property-function":!0,default:1,minimum:0,maximum:1,transition:!0},"line-color":{type:"color",default:"#000000",function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,requires:[{"!":"line-pattern"}]},"line-translate":{type:"array",value:"number",length:2,default:[0,0],function:"interpolated","zoom-function":!0,transition:!0,units:"pixels"},"line-translate-anchor":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{map:{},viewport:{}},default:"map",requires:["line-translate"]},"line-width":{type:"number",default:1,minimum:0,function:"interpolated","zoom-function":!0,transition:!0,units:"pixels"},"line-gap-width":{type:"number",default:0,minimum:0,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,units:"pixels"},"line-offset":{type:"number",default:0,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,units:"pixels"},"line-blur":{type:"number",default:0,minimum:0,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,units:"pixels"},"line-dasharray":{type:"array",value:"number",function:"piecewise-constant","zoom-function":!0,minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}]},"line-pattern":{type:"string",function:"piecewise-constant","zoom-function":!0,transition:!0}},paint_circle:{"circle-radius":{type:"number",default:5,minimum:0,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,units:"pixels"},"circle-color":{type:"color",default:"#000000",function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0},"circle-blur":{type:"number",default:0,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],function:"interpolated","zoom-function":!0,transition:!0,units:"pixels"},"circle-translate-anchor":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{map:{},viewport:{}},default:"map",requires:["circle-translate"]},"circle-pitch-scale":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{map:{},viewport:{}},default:"map"},"circle-stroke-width":{type:"number",default:0,minimum:0,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,units:"pixels"},"circle-stroke-color":{type:"color",default:"#000000",function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0}},paint_symbol:{"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,requires:["icon-image"]},"icon-color":{type:"color",default:"#000000",function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,requires:["icon-image"]},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,requires:["icon-image"]},"icon-halo-width":{type:"number",default:0,minimum:0,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,units:"pixels",requires:["icon-image"]},"icon-halo-blur":{type:"number",default:0,minimum:0,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,units:"pixels",requires:["icon-image"]},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],function:"interpolated","zoom-function":!0,transition:!0,units:"pixels",requires:["icon-image"]},"icon-translate-anchor":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"]},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,requires:["text-field"]},"text-color":{type:"color",default:"#000000",function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,requires:["text-field"]},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,requires:["text-field"]},"text-halo-width":{type:"number",default:0,minimum:0,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,units:"pixels",requires:["text-field"]},"text-halo-blur":{type:"number",default:0,minimum:0,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,units:"pixels",requires:["text-field"]},"text-translate":{type:"array",value:"number",length:2,default:[0,0],function:"interpolated","zoom-function":!0,transition:!0,units:"pixels",requires:["text-field"]},"text-translate-anchor":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"]}},paint_raster:{"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,function:"interpolated","zoom-function":!0,transition:!0},"raster-hue-rotate":{type:"number",default:0,period:360,function:"interpolated","zoom-function":!0,transition:!0,units:"degrees"},"raster-brightness-min":{type:"number",function:"interpolated","zoom-function":!0,default:0,minimum:0,maximum:1,transition:!0},"raster-brightness-max":{type:"number",function:"interpolated","zoom-function":!0,default:1,minimum:0,maximum:1,transition:!0},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,function:"interpolated","zoom-function":!0,transition:!0},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,function:"interpolated","zoom-function":!0,transition:!0},"raster-fade-duration":{type:"number",default:300,minimum:0,function:"interpolated","zoom-function":!0,transition:!0,units:"milliseconds"}},paint_background:{"background-color":{type:"color",default:"#000000",function:"interpolated","zoom-function":!0,transition:!0,requires:[{"!":"background-pattern"}]},"background-pattern":{type:"string",function:"piecewise-constant","zoom-function":!0,transition:!0},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,function:"interpolated","zoom-function":!0,transition:!0}},transition:{duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}}}},{}],121:[function(_dereq_,module,exports){"use strict";module.exports=function(r){for(var t=arguments,e=1;e7)return[new ValidationError(u,a,"constants have been deprecated as of v8")];if(!(a in l.constants))return[new ValidationError(u,a,'constant "%s" not found',a)];e=extend({},e,{value:l.constants[a]})}return n.function&&"object"===getType(a)?r(e):n.type&&i[n.type]?i[n.type](e):t(extend({},e,{valueSpec:n.type?o[n.type]:n}))}},{"../error/validation_error":104,"../util/extend":121,"../util/get_type":122,"./validate_array":128,"./validate_boolean":129,"./validate_color":130,"./validate_constants":131,"./validate_enum":132,"./validate_filter":133,"./validate_function":134,"./validate_layer":136,"./validate_light":138,"./validate_number":139,"./validate_object":140,"./validate_source":143,"./validate_string":144}],128:[function(_dereq_,module,exports){"use strict";var getType=_dereq_("../util/get_type"),validate=_dereq_("./validate"),ValidationError=_dereq_("../error/validation_error");module.exports=function(e){var r=e.value,t=e.valueSpec,a=e.style,n=e.styleSpec,l=e.key,i=e.arrayElementValidator||validate;if("array"!==getType(r))return[new ValidationError(l,r,"array expected, %s found",getType(r))];if(t.length&&r.length!==t.length)return[new ValidationError(l,r,"array length %d expected, length %d found",t.length,r.length)];if(t["min-length"]&&r.length7)return t?[new ValidationError(e,t,"constants have been deprecated as of v8")]:[];var o=getType(t);if("object"!==o)return[new ValidationError(e,t,"object expected, %s found",o)];var n=[];for(var i in t)"@"!==i[0]&&n.push(new ValidationError(e+"."+i,t[i],'constants must start with "@"'));return n}},{"../error/validation_error":104,"../util/get_type":122}],132:[function(_dereq_,module,exports){"use strict";var ValidationError=_dereq_("../error/validation_error"),unbundle=_dereq_("../util/unbundle_jsonlint");module.exports=function(e){var r=e.key,n=e.value,u=e.valueSpec,o=[];return Array.isArray(u.values)?-1===u.values.indexOf(unbundle(n))&&o.push(new ValidationError(r,n,"expected one of [%s], %s found",u.values.join(", "),n)):-1===Object.keys(u.values).indexOf(unbundle(n))&&o.push(new ValidationError(r,n,"expected one of [%s], %s found",Object.keys(u.values).join(", "),n)),o}},{"../error/validation_error":104,"../util/unbundle_jsonlint":126}],133:[function(_dereq_,module,exports){"use strict";var ValidationError=_dereq_("../error/validation_error"),validateEnum=_dereq_("./validate_enum"),getType=_dereq_("../util/get_type"),unbundle=_dereq_("../util/unbundle_jsonlint");module.exports=function e(r){var t,a=r.value,n=r.key,l=r.styleSpec,s=[];if("array"!==getType(a))return[new ValidationError(n,a,"array expected, %s found",getType(a))];if(a.length<1)return[new ValidationError(n,a,"filter array must have at least 1 element")];switch(s=s.concat(validateEnum({key:n+"[0]",value:a[0],valueSpec:l.filter_operator,style:r.style,styleSpec:r.styleSpec})),unbundle(a[0])){case"<":case"<=":case">":case">=":a.length>=2&&"$type"===unbundle(a[1])&&s.push(new ValidationError(n,a,'"$type" cannot be use with operator "%s"',a[0]));case"==":case"!=":3!==a.length&&s.push(new ValidationError(n,a,'filter array for operator "%s" must have 3 elements',a[0]));case"in":case"!in":a.length>=2&&"string"!==(t=getType(a[1]))&&s.push(new ValidationError(n+"[1]",a[1],"string expected, %s found",t));for(var o=2;ounbundle(r[0].zoom))return[new ValidationError(o,r[0].zoom,"stop zoom values must appear in ascending order")];unbundle(r[0].zoom)!==l&&(l=unbundle(r[0].zoom),i=void 0,s={}),t=t.concat(validateObject({key:o+"[0]",value:r[0],valueSpec:{zoom:{}},style:e.style,styleSpec:e.styleSpec,objectElementValidators:{zoom:validateNumber,value:a}}))}else t=t.concat(a({key:o+"[0]",value:r[0],valueSpec:{},style:e.style,styleSpec:e.styleSpec}));return t.concat(validate({key:o+"[1]",value:r[1],valueSpec:u,style:e.style,styleSpec:e.styleSpec}))}function a(e){var t=getType(e.value),r=unbundle(e.value);if(n){if(t!==n)return[new ValidationError(e.key,e.value,"%s stop domain type must match previous stop domain type %s",t,n)]}else n=t;if("number"!==t&&"string"!==t&&"boolean"!==t)return[new ValidationError(e.key,e.value,"stop domain value must be a number, string, or boolean")];if("number"!==t&&"categorical"!==p){var a="number expected, %s found";return u["property-function"]&&void 0===p&&(a+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new ValidationError(e.key,e.value,a,t)]}return"categorical"!==p||"number"!==t||isFinite(r)&&Math.floor(r)===r?"number"===t&&void 0!==i&&r=8&&(d&&!e.valueSpec["property-function"]?v.push(new ValidationError(e.key,e.value,"property functions not supported")):y&&!e.valueSpec["zoom-function"]&&v.push(new ValidationError(e.key,e.value,"zoom functions not supported"))),"categorical"!==p&&!c||void 0!==e.value.property||v.push(new ValidationError(e.key,e.value,'"property" property is required')),v}},{"../error/validation_error":104,"../util/get_type":122,"../util/unbundle_jsonlint":126,"./validate":127,"./validate_array":128,"./validate_number":139,"./validate_object":140}],135:[function(_dereq_,module,exports){"use strict";var ValidationError=_dereq_("../error/validation_error"),validateString=_dereq_("./validate_string");module.exports=function(r){var e=r.value,t=r.key,a=validateString(r);return a.length?a:(-1===e.indexOf("{fontstack}")&&a.push(new ValidationError(t,e,'"glyphs" url must include a "{fontstack}" token')),-1===e.indexOf("{range}")&&a.push(new ValidationError(t,e,'"glyphs" url must include a "{range}" token')),a)}},{"../error/validation_error":104,"./validate_string":144}],136:[function(_dereq_,module,exports){"use strict";var ValidationError=_dereq_("../error/validation_error"),unbundle=_dereq_("../util/unbundle_jsonlint"),validateObject=_dereq_("./validate_object"),validateFilter=_dereq_("./validate_filter"),validatePaintProperty=_dereq_("./validate_paint_property"),validateLayoutProperty=_dereq_("./validate_layout_property"),extend=_dereq_("../util/extend");module.exports=function(e){var r=[],t=e.value,a=e.key,i=e.style,l=e.styleSpec;t.type||t.ref||r.push(new ValidationError(a,t,'either "type" or "ref" is required'));var u=unbundle(t.type),n=unbundle(t.ref);if(t.id)for(var o=unbundle(t.id),s=0;sm.maximum?[new ValidationError(r,i,"%s is greater than the maximum value %s",i,m.maximum)]:[]}},{"../error/validation_error":104,"../util/get_type":122}],140:[function(_dereq_,module,exports){"use strict";var ValidationError=_dereq_("../error/validation_error"),getType=_dereq_("../util/get_type"),validateSpec=_dereq_("./validate");module.exports=function(e){var r=e.key,t=e.value,i=e.valueSpec||{},a=e.objectElementValidators||{},o=e.style,l=e.styleSpec,n=[],u=getType(t);if("object"!==u)return[new ValidationError(r,t,"object expected, %s found",u)];for(var d in t){var p=d.split(".")[0],s=i[p]||i["*"],c=void 0;if(a[p])c=a[p];else if(i[p])c=validateSpec;else if(a["*"])c=a["*"];else{if(!i["*"]){n.push(new ValidationError(r,t[d],'unknown property "%s"',d));continue}c=validateSpec}n=n.concat(c({key:(r?r+".":r)+d,value:t[d],valueSpec:s,style:o,styleSpec:l,object:t,objectKey:d}))}for(var v in i)i[v].required&&void 0===i[v].default&&void 0===t[v]&&n.push(new ValidationError(r,t,'missing required property "%s"',v));return n}},{"../error/validation_error":104,"../util/get_type":122,"./validate":127}],141:[function(_dereq_,module,exports){"use strict";var validateProperty=_dereq_("./validate_property");module.exports=function(r){return validateProperty(r,"paint")}},{"./validate_property":142}],142:[function(_dereq_,module,exports){"use strict";var validate=_dereq_("./validate"),ValidationError=_dereq_("../error/validation_error"),getType=_dereq_("../util/get_type");module.exports=function(e,t){var r=e.key,i=e.style,a=e.styleSpec,n=e.value,o=e.objectKey,l=a[t+"_"+e.layerType];if(!l)return[];var y=o.match(/^(.*)-transition$/);if("paint"===t&&y&&l[y[1]]&&l[y[1]].transition)return validate({key:r,value:n,valueSpec:a.transition,style:i,styleSpec:a});var p=e.valueSpec||l[o];if(!p)return[new ValidationError(r,n,'unknown property "%s"',o)];var s;if("string"===getType(n)&&p["property-function"]&&!p.tokens&&(s=/^{([^}]+)}$/.exec(n)))return[new ValidationError(r,n,'"%s" does not support interpolation syntax\nUse an identity property function instead: `{ "type": "identity", "property": %s` }`.',o,JSON.stringify(s[1]))];var u=[];return"symbol"===e.layerType&&"text-field"===o&&i&&!i.glyphs&&u.push(new ValidationError(r,n,'use of "text-field" requires a style "glyphs" property')),u.concat(validate({key:e.key,value:n,valueSpec:p,style:i,styleSpec:a}))}},{"../error/validation_error":104,"../util/get_type":122,"./validate":127}],143:[function(_dereq_,module,exports){"use strict";var ValidationError=_dereq_("../error/validation_error"),unbundle=_dereq_("../util/unbundle_jsonlint"),validateObject=_dereq_("./validate_object"),validateEnum=_dereq_("./validate_enum");module.exports=function(e){var a=e.value,t=e.key,r=e.styleSpec,l=e.style;if(!a.type)return[new ValidationError(t,a,'"type" is required')];var i=[];switch(unbundle(a.type)){case"vector":case"raster":if(i=i.concat(validateObject({key:t,value:a,valueSpec:r.source_tile,style:e.style,styleSpec:r})),"url"in a)for(var s in a)["type","url","tileSize"].indexOf(s)<0&&i.push(new ValidationError(t+"."+s,a[s],'a source with a "url" property may not include a "%s" property',s));return i;case"geojson":return validateObject({key:t,value:a,valueSpec:r.source_geojson,style:l,styleSpec:r});case"video":return validateObject({key:t,value:a,valueSpec:r.source_video,style:l,styleSpec:r});case"image":return validateObject({key:t,value:a,valueSpec:r.source_image,style:l,styleSpec:r});case"canvas":return validateObject({key:t,value:a,valueSpec:r.source_canvas,style:l,styleSpec:r});default:return validateEnum({key:t+".type",value:a.type,valueSpec:{values:["vector","raster","geojson","video","image","canvas"]},style:l,styleSpec:r})}}},{"../error/validation_error":104,"../util/unbundle_jsonlint":126,"./validate_enum":132,"./validate_object":140}],144:[function(_dereq_,module,exports){"use strict";var getType=_dereq_("../util/get_type"),ValidationError=_dereq_("../error/validation_error");module.exports=function(r){var e=r.value,t=r.key,i=getType(e);return"string"!==i?[new ValidationError(t,e,"string expected, %s found",i)]:[]}},{"../error/validation_error":104,"../util/get_type":122}],145:[function(_dereq_,module,exports){"use strict";function validateStyleMin(e,a){a=a||latestStyleSpec;var t=[];return t=t.concat(validate({key:"",value:e,valueSpec:a.$root,styleSpec:a,style:e,objectElementValidators:{glyphs:validateGlyphsURL,"*":function(){return[]}}})),a.$version>7&&e.constants&&(t=t.concat(validateConstants({key:"constants",value:e.constants,style:e,styleSpec:a}))),sortErrors(t)}function sortErrors(e){return[].concat(e).sort(function(e,a){return e.line-a.line})}function wrapCleanErrors(e){return function(){return sortErrors(e.apply(this,arguments))}}var validateConstants=_dereq_("./validate/validate_constants"),validate=_dereq_("./validate/validate"),latestStyleSpec=_dereq_("./reference/latest"),validateGlyphsURL=_dereq_("./validate/validate_glyphs_url");validateStyleMin.source=wrapCleanErrors(_dereq_("./validate/validate_source")),validateStyleMin.light=wrapCleanErrors(_dereq_("./validate/validate_light")),validateStyleMin.layer=wrapCleanErrors(_dereq_("./validate/validate_layer")),validateStyleMin.filter=wrapCleanErrors(_dereq_("./validate/validate_filter")),validateStyleMin.paintProperty=wrapCleanErrors(_dereq_("./validate/validate_paint_property")),validateStyleMin.layoutProperty=wrapCleanErrors(_dereq_("./validate/validate_layout_property")),module.exports=validateStyleMin},{"./reference/latest":119,"./validate/validate":127,"./validate/validate_constants":131,"./validate/validate_filter":133,"./validate/validate_glyphs_url":135,"./validate/validate_layer":136,"./validate/validate_layout_property":137,"./validate/validate_light":138,"./validate/validate_paint_property":141,"./validate/validate_source":143}],146:[function(_dereq_,module,exports){"use strict";var AnimationLoop=function(){this.n=0,this.times=[]};AnimationLoop.prototype.stopped=function(){return this.times=this.times.filter(function(t){return t.time>=(new Date).getTime()}),!this.times.length},AnimationLoop.prototype.set=function(t){return this.times.push({id:this.n,time:t+(new Date).getTime()}),this.n++},AnimationLoop.prototype.cancel=function(t){this.times=this.times.filter(function(i){return i.id!==t})},module.exports=AnimationLoop},{}],147:[function(_dereq_,module,exports){"use strict";var Evented=_dereq_("../util/evented"),ajax=_dereq_("../util/ajax"),browser=_dereq_("../util/browser"),normalizeURL=_dereq_("../util/mapbox").normalizeSpriteURL,SpritePosition=function(){this.x=0,this.y=0,this.width=0,this.height=0,this.pixelRatio=1,this.sdf=!1},ImageSprite=function(t){function e(e,i){var r=this;t.call(this),this.base=e,this.retina=browser.devicePixelRatio>1,this.setEventedParent(i);var a=this.retina?"@2x":"";ajax.getJSON(normalizeURL(e,a,".json"),function(t,e){return t?void r.fire("error",{error:t}):(r.data=e,void(r.imgData&&r.fire("data",{dataType:"style"})))}),ajax.getImage(normalizeURL(e,a,".png"),function(t,e){return t?void r.fire("error",{error:t}):(r.imgData=browser.getImageData(e),r.width=e.width,void(r.data&&r.fire("data",{dataType:"style"})))})}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.toJSON=function(){return this.base},e.prototype.loaded=function(){return!(!this.data||!this.imgData)},e.prototype.resize=function(){var t=this;if(browser.devicePixelRatio>1!==this.retina){var i=new e(this.base);i.on("data",function(){t.data=i.data,t.imgData=i.imgData,t.width=i.width,t.retina=i.retina})}},e.prototype.getSpritePosition=function(t){if(!this.loaded())return new SpritePosition;var e=this.data&&this.data[t];return e&&this.imgData?e:new SpritePosition},e}(Evented);module.exports=ImageSprite},{"../util/ajax":194,"../util/browser":195,"../util/evented":203,"../util/mapbox":210}],148:[function(_dereq_,module,exports){"use strict";var styleSpec=_dereq_("../style-spec/reference/latest"),util=_dereq_("../util/util"),Evented=_dereq_("../util/evented"),validateStyle=_dereq_("./validate_style"),StyleDeclaration=_dereq_("./style_declaration"),StyleTransition=_dereq_("./style_transition"),Light=function(t){function i(i){t.call(this),this.properties=["anchor","color","position","intensity"],this._specifications=styleSpec.light,this.set(i)}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.set=function(t){var i=this;if(!this._validate(validateStyle.light,t)){this._declarations={},this._transitions={},this._transitionOptions={},this.calculated={},t=util.extend({anchor:this._specifications.anchor.default,color:this._specifications.color.default,position:this._specifications.position.default,intensity:this._specifications.intensity.default},t);for(var e=0,o=i.properties;eMath.floor(e)&&(t.lastIntegerZoom=Math.floor(e+1),t.lastIntegerZoomTime=Date.now()),t.lastZoom=e},t.prototype._checkLoaded=function(){if(!this._loaded)throw new Error("Style is not done loading")},t.prototype.update=function(e,t){var r=this;if(this._changed){var i=Object.keys(this._updatedLayers),o=Object.keys(this._removedLayers);(i.length||o.length||this._updatedSymbolOrder)&&this._updateWorkerLayers(i,o);for(var s in r._updatedSources){var a=r._updatedSources[s];"reload"===a?r._reloadSource(s):"clear"===a&&r._clearSource(s)}this._applyClasses(e,t),this._resetUpdates(),this.fire("data",{dataType:"style"})}},t.prototype._updateWorkerLayers=function(e,t){var r=this,i=this._updatedSymbolOrder?this._order.filter(function(e){return"symbol"===r._layers[e].type}):null;this.dispatcher.broadcast("updateLayers",{layers:this._serializeLayers(e),removedIds:t,symbolOrder:i})},t.prototype._resetUpdates=function(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSymbolOrder=!1,this._updatedSources={},this._updatedPaintProps={},this._updatedAllPaintProps=!1},t.prototype.setState=function(e){var t=this;if(this._checkLoaded(),validateStyle.emitErrors(this,validateStyle(e)))return!1;(e=util.extend({},e)).layers=deref(e.layers);var r=diff(this.serialize(),e).filter(function(e){return!(e.command in ignoredDiffOperations)});if(0===r.length)return!1;var i=r.filter(function(e){return!(e.command in supportedDiffOperations)});if(i.length>0)throw new Error("Unimplemented: "+i.map(function(e){return e.command}).join(", ")+".");return r.forEach(function(e){"setTransition"!==e.command&&t[e.command].apply(t,e.args)}),this.stylesheet=e,!0},t.prototype.addSource=function(e,t,r){var i=this;if(this._checkLoaded(),void 0!==this.sourceCaches[e])throw new Error("There is already a source with this ID");if(!t.type)throw new Error("The type property must be defined, but the only the following properties were given: "+Object.keys(t)+".");if(!(["vector","raster","geojson","video","image","canvas"].indexOf(t.type)>=0)||!this._validate(validateStyle.source,"sources."+e,t,null,r)){var a=this.sourceCaches[e]=new SourceCache(e,t,this.dispatcher);a.style=this,a.setEventedParent(this,function(){return{isSourceLoaded:i.loaded(),source:a.serialize(),sourceId:e}}),a.onAdd(this.map),this._changed=!0}},t.prototype.removeSource=function(e){if(this._checkLoaded(),void 0===this.sourceCaches[e])throw new Error("There is no source with this ID");var t=this.sourceCaches[e];delete this.sourceCaches[e],delete this._updatedSources[e],t.setEventedParent(null),t.clearTiles(),t.onRemove&&t.onRemove(this.map),this._changed=!0},t.prototype.getSource=function(e){return this.sourceCaches[e]&&this.sourceCaches[e].getSource()},t.prototype.addLayer=function(e,t,r){this._checkLoaded();var i=e.id;if("object"==typeof e.source&&(this.addSource(i,e.source),e=util.extend(e,{source:i})),!this._validate(validateStyle.layer,"layers."+i,e,{arrayIndex:-1},r)){var o=StyleLayer.create(e);this._validateLayer(o),o.setEventedParent(this,{layer:{id:i}});var s=t?this._order.indexOf(t):this._order.length;if(this._order.splice(s,0,i),this._layers[i]=o,this._removedLayers[i]&&o.source){var a=this._removedLayers[i];delete this._removedLayers[i],this._updatedSources[o.source]=a.type!==o.type?"clear":"reload"}this._updateLayer(o),"symbol"===o.type&&(this._updatedSymbolOrder=!0),this.updateClasses(i)}},t.prototype.moveLayer=function(e,t){this._checkLoaded(),this._changed=!0;var r=this._layers[e];if(r){var i=this._order.indexOf(e);this._order.splice(i,1);var o=t?this._order.indexOf(t):this._order.length;this._order.splice(o,0,e),"symbol"===r.type&&(this._updatedSymbolOrder=!0,r.source&&!this._updatedSources[r.source]&&(this._updatedSources[r.source]="reload"))}else this.fire("error",{error:new Error("The layer '"+e+"' does not exist in the map's style and cannot be moved.")})},t.prototype.removeLayer=function(e){this._checkLoaded();var t=this._layers[e];if(t){t.setEventedParent(null);var r=this._order.indexOf(e);this._order.splice(r,1),"symbol"===t.type&&(this._updatedSymbolOrder=!0),this._changed=!0,this._removedLayers[e]=t,delete this._layers[e],delete this._updatedLayers[e],delete this._updatedPaintProps[e]}else this.fire("error",{error:new Error("The layer '"+e+"' does not exist in the map's style and cannot be removed.")})},t.prototype.getLayer=function(e){return this._layers[e]},t.prototype.setLayerZoomRange=function(e,t,r){this._checkLoaded();var i=this.getLayer(e);return i?void(i.minzoom===t&&i.maxzoom===r||(null!=t&&(i.minzoom=t),null!=r&&(i.maxzoom=r),this._updateLayer(i))):void this.fire("error",{error:new Error("The layer '"+e+"' does not exist in the map's style and cannot have zoom extent.")})},t.prototype.setFilter=function(e,t){this._checkLoaded();var r=this.getLayer(e);return r?void(null!==t&&void 0!==t&&this._validate(validateStyle.filter,"layers."+r.id+".filter",t)||util.deepEqual(r.filter,t)||(r.filter=util.clone(t),this._updateLayer(r))):void this.fire("error",{error:new Error("The layer '"+e+"' does not exist in the map's style and cannot be filtered.")})},t.prototype.getFilter=function(e){return util.clone(this.getLayer(e).filter)},t.prototype.setLayoutProperty=function(e,t,r){this._checkLoaded();var i=this.getLayer(e);return i?void(util.deepEqual(i.getLayoutProperty(t),r)||(i.setLayoutProperty(t,r),this._updateLayer(i))):void this.fire("error",{error:new Error("The layer '"+e+"' does not exist in the map's style and cannot be styled.")})},t.prototype.getLayoutProperty=function(e,t){return this.getLayer(e).getLayoutProperty(t)},t.prototype.setPaintProperty=function(e,t,r,i){this._checkLoaded();var o=this.getLayer(e);if(o){if(!util.deepEqual(o.getPaintProperty(t,i),r)){var s=o.isPaintValueFeatureConstant(t);o.setPaintProperty(t,r,i),!(r&&MapboxGLFunction.isFunctionDefinition(r)&&"$zoom"!==r.property&&void 0!==r.property)&&s||this._updateLayer(o),this.updateClasses(e,t)}}else this.fire("error",{error:new Error("The layer '"+e+"' does not exist in the map's style and cannot be styled.")})},t.prototype.getPaintProperty=function(e,t,r){return this.getLayer(e).getPaintProperty(t,r)},t.prototype.getTransition=function(){return util.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},t.prototype.updateClasses=function(e,t){if(this._changed=!0,e){var r=this._updatedPaintProps;r[e]||(r[e]={}),r[e][t||"all"]=!0}else this._updatedAllPaintProps=!0},t.prototype.serialize=function(){var e=this;return util.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:util.mapObject(this.sourceCaches,function(e){return e.serialize()}),layers:this._order.map(function(t){return e._layers[t].serialize()})},function(e){return void 0!==e})},t.prototype._updateLayer=function(e){this._updatedLayers[e.id]=!0,e.source&&!this._updatedSources[e.source]&&(this._updatedSources[e.source]="reload"),this._changed=!0},t.prototype._flattenRenderedFeatures=function(e){for(var t=this,r=[],i=this._order.length-1;i>=0;i--)for(var o=t._order[i],s=0,a=e;s=this.maxzoom)||"none"===this.layout.visibility},i.prototype.updatePaintTransitions=function(t,i,a,e,o){for(var n=this,r=util.extend({},this._paintDeclarations[""]),s=0;s=this.endTime)return o;var a=this.oldTransition.calculate(t,i,this.startTime),n=util.easeCubicInOut((e-this.startTime-this.delay)/this.duration);return this.interp(a,o,n)},StyleTransition.prototype._calculateTargetValue=function(t,i){if(!this.zoomTransitioned)return this.declaration.calculate(t,i);var e=t.zoom,o=this.zoomHistory.lastIntegerZoom,a=e>o?2:.5,n=this.declaration.calculate({zoom:e>o?e-1:e+1},i),r=this.declaration.calculate({zoom:e},i),s=Math.min((Date.now()-this.zoomHistory.lastIntegerZoomTime)/this.duration,1),l=Math.abs(e-o),u=interpolate(s,1,l);return void 0!==n&&void 0!==r?{from:n,fromScale:a,to:r,toScale:1,t:u}:void 0},module.exports=StyleTransition},{"../style-spec/util/interpolate":123,"../util/util":215}],159:[function(_dereq_,module,exports){"use strict";module.exports=_dereq_("../style-spec/validate_style.min"),module.exports.emitErrors=function(r,e){if(e&&e.length){for(var t=0;t-a/2;){if(--s<0)return!1;f-=e[s].dist(i),i=e[s]}f+=e[s].dist(e[s+1]),s++;for(var l=[],o=0;fr;)o-=l.shift().angleDelta;if(o>n)return!1;s++,f+=c.dist(g)}return!0}module.exports=checkMaxAngle},{}],162:[function(_dereq_,module,exports){"use strict";function clipLine(n,x,y,o,e){for(var r=[],t=0;t=o&&w.x>=o||(P.x>=o?P=new Point(o,P.y+(w.y-P.y)*((o-P.x)/(w.x-P.x)))._round():w.x>=o&&(w=new Point(o,P.y+(w.y-P.y)*((o-P.x)/(w.x-P.x)))._round()),P.y>=e&&w.y>=e||(P.y>=e?P=new Point(P.x+(w.x-P.x)*((e-P.y)/(w.y-P.y)),e)._round():w.y>=e&&(w=new Point(P.x+(w.x-P.x)*((e-P.y)/(w.y-P.y)),e)._round()),u&&P.equals(u[u.length-1])||(u=[P],r.push(u)),u.push(w)))))}return r}var Point=_dereq_("point-geometry");module.exports=clipLine},{"point-geometry":26}],163:[function(_dereq_,module,exports){"use strict";var createStructArrayType=_dereq_("../util/struct_array"),Point=_dereq_("point-geometry"),CollisionBoxArray=createStructArrayType({members:[{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:"Float32",name:"maxScale"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"},{type:"Int16",name:"bbox0"},{type:"Int16",name:"bbox1"},{type:"Int16",name:"bbox2"},{type:"Int16",name:"bbox3"},{type:"Float32",name:"placementScale"}]});Object.defineProperty(CollisionBoxArray.prototype.StructType.prototype,"anchorPoint",{get:function(){return new Point(this.anchorPointX,this.anchorPointY)}}),module.exports=CollisionBoxArray},{"../util/struct_array":213,"point-geometry":26}],164:[function(_dereq_,module,exports){"use strict";var CollisionFeature=function(t,e,i,o,s,a,n,r,l,d,u){var h=n.top*r-l,x=n.bottom*r+l,f=n.left*r-l,m=n.right*r+l;if(this.boxStartIndex=t.length,d){var _=x-h,b=m-f;if(_>0)if(_=Math.max(10*r,_),u){var v=e[i.segment+1].sub(e[i.segment])._unit()._mult(b),c=[i.sub(v),i.add(v)];this._addLineCollisionBoxes(t,c,i,0,b,_,o,s,a)}else this._addLineCollisionBoxes(t,e,i,i.segment,b,_,o,s,a)}else t.emplaceBack(i.x,i.y,f,h,m,x,1/0,o,s,a,0,0,0,0,0);this.boxEndIndex=t.length};CollisionFeature.prototype._addLineCollisionBoxes=function(t,e,i,o,s,a,n,r,l){var d=a/2,u=Math.floor(s/d),h=-a/2,x=this.boxes,f=i,m=o+1,_=h;do{if(--m<0)return x;_-=e[m].dist(f),f=e[m]}while(_>-s/2);for(var b=e[m].dist(e[m+1]),v=0;v=e.length)return x;b=e[m].dist(e[m+1])}var g=c-_,p=e[m],B=e[m+1].sub(p)._unit()._mult(g)._add(p)._round(),y=s/2/Math.max(Math.abs(c-h)-d/2,0);t.emplaceBack(B.x,B.y,-a/2,-a/2,a/2,a/2,y,n,r,l,0,0,0,0,0)}return x},module.exports=CollisionFeature},{}],165:[function(_dereq_,module,exports){"use strict";var Point=_dereq_("point-geometry"),EXTENT=_dereq_("../data/extent"),Grid=_dereq_("grid-index"),intersectionTests=_dereq_("../util/intersection_tests"),CollisionTile=function(t,e,i){if("object"==typeof t){var r=t;i=e,t=r.angle,e=r.pitch,this.grid=new Grid(r.grid),this.ignoredGrid=new Grid(r.ignoredGrid)}else this.grid=new Grid(EXTENT,12,6),this.ignoredGrid=new Grid(EXTENT,12,0);this.minScale=.5,this.maxScale=2,this.angle=t,this.pitch=e;var a=Math.sin(t),o=Math.cos(t);if(this.rotationMatrix=[o,-a,a,o],this.reverseRotationMatrix=[o,a,-a,o],this.yStretch=1/Math.cos(e/180*Math.PI),this.yStretch=Math.pow(this.yStretch,1.3),this.collisionBoxArray=i,0===i.length){i.emplaceBack();var n=32767;i.emplaceBack(0,0,0,-n,0,n,n,0,0,0,0,0,0,0,0,0),i.emplaceBack(EXTENT,0,0,-n,0,n,n,0,0,0,0,0,0,0,0,0),i.emplaceBack(0,0,-n,0,n,0,n,0,0,0,0,0,0,0,0,0),i.emplaceBack(0,EXTENT,-n,0,n,0,n,0,0,0,0,0,0,0,0,0)}this.tempCollisionBox=i.get(0),this.edges=[i.get(1),i.get(2),i.get(3),i.get(4)]};CollisionTile.prototype.serialize=function(t){var e=this.grid.toArrayBuffer(),i=this.ignoredGrid.toArrayBuffer();return t&&(t.push(e),t.push(i)),{angle:this.angle,pitch:this.pitch,grid:e,ignoredGrid:i}},CollisionTile.prototype.placeCollisionFeature=function(t,e,i){for(var r=this,a=this.collisionBoxArray,o=this.minScale,n=this.rotationMatrix,l=this.yStretch,h=t.boxStartIndex;h=r.maxScale)return o}if(i){var S=void 0;if(r.angle){var P=r.reverseRotationMatrix,b=new Point(s.x1,s.y1).matMult(P),T=new Point(s.x2,s.y1).matMult(P),w=new Point(s.x1,s.y2).matMult(P),N=new Point(s.x2,s.y2).matMult(P);(S=r.tempCollisionBox).anchorPointX=s.anchorPoint.x,S.anchorPointY=s.anchorPoint.y,S.x1=Math.min(b.x,T.x,w.x,N.x),S.y1=Math.min(b.y,T.x,w.x,N.x),S.x2=Math.max(b.x,T.x,w.x,N.x),S.y2=Math.max(b.y,T.x,w.x,N.x),S.maxScale=s.maxScale}else S=s;for(var B=0;B=r.maxScale)return o}}}return o},CollisionTile.prototype.queryRenderedSymbols=function(t,e){var i={},r=[];if(0===t.length||0===this.grid.length&&0===this.ignoredGrid.length)return r;for(var a=this.collisionBoxArray,o=this.rotationMatrix,n=this.yStretch,l=[],h=1/0,s=1/0,x=-1/0,c=-1/0,g=0;gS.maxScale)){var T=S.anchorPoint.matMult(o),w=T.x+S.x1/e,N=T.y+S.y1/e*n,B=T.x+S.x2/e,G=T.y+S.y2/e*n,E=[new Point(w,N),new Point(B,N),new Point(B,G),new Point(w,G)];intersectionTests.polygonIntersectsPolygon(l,E)&&(i[P][b]=!0,r.push(u[v]))}}return r},CollisionTile.prototype.getPlacementScale=function(t,e,i,r,a){var o=e.x-r.x,n=e.y-r.y,l=(a.x1-i.x2)/o,h=(a.x2-i.x1)/o,s=(a.y1-i.y2)*this.yStretch/n,x=(a.y2-i.y1)*this.yStretch/n;(isNaN(l)||isNaN(h))&&(l=h=1),(isNaN(s)||isNaN(x))&&(s=x=1);var c=Math.min(Math.max(l,h),Math.max(s,x)),g=a.maxScale,y=i.maxScale;return c>g&&(c=g),c>y&&(c=y),c>t&&c>=a.placementScale&&(t=c),t},CollisionTile.prototype.insertCollisionFeature=function(t,e,i){for(var r=this,a=i?this.ignoredGrid:this.grid,o=this.collisionBoxArray,n=t.boxStartIndex;n=0&&k=0&&q=0&&p+h<=s){var M=new Anchor(k,q,A,f)._round();n&&!checkMaxAngle(e,M,l,n,a)||x.push(M)}}g+=y}return i||x.length||o||(x=resample(e,g/2,t,n,a,l,o,!0,c)),x}var interpolate=_dereq_("../style-spec/util/interpolate"),Anchor=_dereq_("../symbol/anchor"),checkMaxAngle=_dereq_("./check_max_angle");module.exports=getAnchors},{"../style-spec/util/interpolate":123,"../symbol/anchor":160,"./check_max_angle":161}],167:[function(_dereq_,module,exports){"use strict";var ShelfPack=_dereq_("@mapbox/shelf-pack"),util=_dereq_("../util/util"),GlyphAtlas=function(){this.width=128,this.height=128,this.atlas=new ShelfPack(this.width,this.height),this.index={},this.ids={},this.data=new Uint8Array(this.width*this.height)};GlyphAtlas.prototype.getGlyphs=function(){var t,i,e,h=this,r={};for(var s in h.ids)t=s.split("#"),i=t[0],e=t[1],r[i]||(r[i]=[]),r[i].push(e);return r},GlyphAtlas.prototype.getRects=function(){var t,i,e,h=this,r={};for(var s in h.ids)t=s.split("#"),i=t[0],e=t[1],r[i]||(r[i]={}),r[i][e]=h.index[s];return r},GlyphAtlas.prototype.addGlyph=function(t,i,e,h){var r=this;if(!e)return null;var s=i+"#"+e.id;if(this.index[s])return this.ids[s].indexOf(t)<0&&this.ids[s].push(t),this.index[s];if(!e.bitmap)return null;var a=e.width+2*h,E=e.height+2*h,l=a+2,T=E+2;l+=4-l%4,T+=4-T%4;var u=this.atlas.packOne(l,T);if(u||(this.resize(),u=this.atlas.packOne(l,T)),!u)return util.warnOnce("glyph bitmap overflow"),null;this.index[s]=u,this.ids[s]=[t];for(var d=this.data,p=e.bitmap,A=0;A=2048||e>=2048)){this.texture&&(this.gl&&this.gl.deleteTexture(this.texture),this.texture=null),this.width*=4,this.height*=4,this.atlas.resize(this.width,this.height);for(var h=new ArrayBuffer(this.width*this.height),r=0;r65535)return a("glyphs > 65535 not supported");void 0===this.loading[t]&&(this.loading[t]={});var l=this.loading[t];if(l[e])l[e].push(a);else{l[e]=[a];var r=glyphUrl(t,256*e+"-"+(256*e+255),this.url);ajax.getArrayBuffer(r,function(t,a){for(var i=!t&&new Glyphs(new Protobuf(a.data)),r=0;r=0^o,r=Math.abs(n),h=new Point(e.x,e.y),c=getSegmentEnd(l,a,i),g={anchor:h,end:c,index:i,minScale:getMinScaleForSegment(r,h,c),maxScale:1/0};;){if(insertSegmentGlyph(t,g,l,o),g.minScale<=e.scale)return e.scale;var u=getNextVirtualSegment(g,a,r,l);if(!u)return g.minScale;g=u}}function insertSegmentGlyph(t,e,n,a){var i=Math.atan2(e.end.y-e.anchor.y,e.end.x-e.anchor.x),o=n?i:i+Math.PI;t.push({anchorPoint:e.anchor,upsideDown:a,minScale:e.minScale,maxScale:e.maxScale,angle:(o+2*Math.PI)%(2*Math.PI)})}function getVirtualSegmentAnchor(t,e,n){var a=e.sub(t)._unit();return t.sub(a._mult(n))}function getMinScaleForSegment(t,e,n){return t/e.dist(n)}function getSegmentEnd(t,e,n){return t?e[n+1]:e[n]}function getNextVirtualSegment(t,e,n,a){for(var i=t.end,o=i,l=t.index;o.equals(i);){if(a&&l+21?2:1,this.dirty=!0}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.allocateImage=function(t,i){var r=(t/=this.pixelRatio)+2+(4-(t+2)%4),a=(i/=this.pixelRatio)+2+(4-(i+2)%4),h=this.shelfPack.packOne(r,a);return h||(util.warnOnce("SpriteAtlas out of space."),null)},i.prototype.addImage=function(t,i,e){var r,a,h;if(i instanceof window.HTMLImageElement?(r=i.width,a=i.height,i=browser.getImageData(i),h=1):(r=e.width,a=e.height,h=e.pixelRatio||1),ArrayBuffer.isView(i)&&(i=new Uint32Array(i.buffer)),!(i instanceof Uint32Array))return this.fire("error",{error:new Error("Image provided in an invalid format. Supported formats are HTMLImageElement and ArrayBufferView.")});if(this.images[t])return this.fire("error",{error:new Error("An image with this name already exists.")});var s=this.allocateImage(r,a);if(!s)return this.fire("error",{error:new Error("There is not enough space to add this image.")});var o={rect:s,width:r/h,height:a/h,sdf:!1,pixelRatio:h/this.pixelRatio};this.images[t]=o,this.copy(i,r,s,{pixelRatio:h,x:0,y:0,width:r,height:a},!1),this.fire("data",{dataType:"style"})},i.prototype.removeImage=function(t){var i=this.images[t];return delete this.images[t],i?(this.shelfPack.unref(i.rect),void this.fire("data",{dataType:"style"})):this.fire("error",{error:new Error("No image with this name exists.")})},i.prototype.getImage=function(t,i){if(this.images[t])return this.images[t];if(!this.sprite)return null;var e=this.sprite.getSpritePosition(t);if(!e.width||!e.height)return null;var r=this.allocateImage(e.width,e.height);if(!r)return null;var a={rect:r,width:e.width/e.pixelRatio,height:e.height/e.pixelRatio,sdf:e.sdf,pixelRatio:e.pixelRatio/this.pixelRatio};if(this.images[t]=a,!this.sprite.imgData)return null;var h=new Uint32Array(this.sprite.imgData.buffer);return this.copy(h,this.sprite.width,r,e,i),a},i.prototype.getPosition=function(t,i){var e=this.getImage(t,i),r=e&&e.rect;if(!r)return null;var a=e.width*e.pixelRatio,h=e.height*e.pixelRatio;return{size:[e.width,e.height],tl:[(r.x+1)/this.width,(r.y+1)/this.height],br:[(r.x+1+a)/this.width,(r.y+1+h)/this.height]}},i.prototype.allocate=function(){var t=this;if(!this.data){var i=Math.floor(this.width*this.pixelRatio),e=Math.floor(this.height*this.pixelRatio);this.data=new Uint32Array(i*e);for(var r=0;r1||(b?(clearTimeout(b),b=null,h("dblclick",t)):b=setTimeout(l,300))}function i(e){f("touchmove",e)}function c(e){f("touchend",e)}function d(e){f("touchcancel",e)}function l(){b=null}function s(e){DOM.mousePos(g,e).equals(L)&&h("click",e)}function v(e){h("dblclick",e),e.preventDefault()}function m(t){var n=e.dragRotate&&e.dragRotate.isActive();E||n?E&&(p=t):h("contextmenu",t),t.preventDefault()}function h(t,n){var o=DOM.mousePos(g,n);return e.fire(t,{lngLat:e.unproject(o),point:o,originalEvent:n})}function f(t,n){var o=DOM.touchPos(g,n),r=o.reduce(function(e,t,n,o){return e.add(t.div(o.length))},new Point(0,0));return e.fire(t,{lngLat:e.unproject(r),point:r,lngLats:o.map(function(t){return e.unproject(t)},this),points:o,originalEvent:n})}var g=e.getCanvasContainer(),p=null,E=!1,L=null,b=null;for(var q in handlers)e[q]=new handlers[q](e,t),t.interactive&&t[q]&&e[q].enable(t[q]);g.addEventListener("mouseout",n,!1),g.addEventListener("mousedown",o,!1),g.addEventListener("mouseup",r,!1),g.addEventListener("mousemove",a,!1),g.addEventListener("touchstart",u,!1),g.addEventListener("touchend",c,!1),g.addEventListener("touchmove",i,!1),g.addEventListener("touchcancel",d,!1),g.addEventListener("click",s,!1),g.addEventListener("dblclick",v,!1),g.addEventListener("contextmenu",m,!1)}},{"../util/dom":202,"./handler/box_zoom":182,"./handler/dblclick_zoom":183,"./handler/drag_pan":184,"./handler/drag_rotate":185,"./handler/keyboard":186,"./handler/scroll_zoom":187,"./handler/touch_zoom_rotate":188,"point-geometry":26}],175:[function(_dereq_,module,exports){"use strict";var util=_dereq_("../util/util"),interpolate=_dereq_("../style-spec/util/interpolate"),browser=_dereq_("../util/browser"),LngLat=_dereq_("../geo/lng_lat"),LngLatBounds=_dereq_("../geo/lng_lat_bounds"),Point=_dereq_("point-geometry"),Camera=function(t){function e(e,i){t.call(this),this.moving=!1,this.transform=e,this._bearingSnap=i.bearingSnap}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getCenter=function(){return this.transform.center},e.prototype.setCenter=function(t,e){return this.jumpTo({center:t},e)},e.prototype.panBy=function(t,e,i){return t=Point.convert(t).mult(-1),this.panTo(this.transform.center,util.extend({offset:t},e),i)},e.prototype.panTo=function(t,e,i){return this.easeTo(util.extend({center:t},e),i)},e.prototype.getZoom=function(){return this.transform.zoom},e.prototype.setZoom=function(t,e){return this.jumpTo({zoom:t},e),this},e.prototype.zoomTo=function(t,e,i){return this.easeTo(util.extend({zoom:t},e),i)},e.prototype.zoomIn=function(t,e){return this.zoomTo(this.getZoom()+1,t,e),this},e.prototype.zoomOut=function(t,e){return this.zoomTo(this.getZoom()-1,t,e),this},e.prototype.getBearing=function(){return this.transform.bearing},e.prototype.setBearing=function(t,e){return this.jumpTo({bearing:t},e),this},e.prototype.rotateTo=function(t,e,i){return this.easeTo(util.extend({bearing:t},e),i)},e.prototype.resetNorth=function(t,e){return this.rotateTo(0,util.extend({duration:1e3},t),e),this},e.prototype.snapToNorth=function(t,e){return Math.abs(this.getBearing())e?1:0}),["bottom","left","right","top"])){t=LngLatBounds.convert(t);var n=[e.padding.left-e.padding.right,e.padding.top-e.padding.bottom],r=Math.min(e.padding.right,e.padding.left),a=Math.min(e.padding.top,e.padding.bottom);e.offset=[e.offset[0]+n[0],e.offset[1]+n[1]];var s=Point.convert(e.offset),h=this.transform,p=h.project(t.getNorthWest()),u=h.project(t.getSouthEast()),c=u.sub(p),f=(h.width-2*r-2*Math.abs(s.x))/c.x,m=(h.height-2*a-2*Math.abs(s.y))/c.y;return m<0||f<0?void util.warnOnce("Map cannot fit within canvas with the given bounds, padding, and/or offset."):(e.center=h.unproject(p.add(u).div(2)),e.zoom=Math.min(h.scaleZoom(h.scale*Math.min(f,m)),e.maxZoom),e.bearing=0,e.linear?this.easeTo(e,i):this.flyTo(e,i))}util.warnOnce("options.padding must be a positive number, or an Object with keys 'bottom', 'left', 'right', 'top'")}},e.prototype.jumpTo=function(t,e){this.stop();var i=this.transform,o=!1,n=!1,r=!1;return"zoom"in t&&i.zoom!==+t.zoom&&(o=!0,i.zoom=+t.zoom),"center"in t&&(i.center=LngLat.convert(t.center)),"bearing"in t&&i.bearing!==+t.bearing&&(n=!0,i.bearing=+t.bearing),"pitch"in t&&i.pitch!==+t.pitch&&(r=!0,i.pitch=+t.pitch),this.fire("movestart",e).fire("move",e),o&&this.fire("zoomstart",e).fire("zoom",e).fire("zoomend",e),n&&this.fire("rotate",e),r&&this.fire("pitchstart",e).fire("pitch",e).fire("pitchend",e),this.fire("moveend",e)},e.prototype.easeTo=function(t,e){var i=this;this.stop(),!1===(t=util.extend({offset:[0,0],duration:500,easing:util.ease},t)).animate&&(t.duration=0),t.smoothEasing&&0!==t.duration&&(t.easing=this._smoothOutEasing(t.duration));var o=this.transform,n=this.getZoom(),r=this.getBearing(),a=this.getPitch(),s="zoom"in t?+t.zoom:n,h="bearing"in t?this._normalizeBearing(t.bearing,r):r,p="pitch"in t?+t.pitch:a,u=o.centerPoint.add(Point.convert(t.offset)),c=o.pointLocation(u),f=LngLat.convert(t.center||c);this._normalizeCenter(f);var m,g,d=o.project(c),l=o.project(f).sub(d),v=o.zoomScale(s-n);return t.around&&(m=LngLat.convert(t.around),g=o.locationPoint(m)),this.zooming=s!==n,this.rotating=r!==h,this.pitching=p!==a,this._prepareEase(e,t.noMoveStart),clearTimeout(this._onEaseEnd),this._ease(function(t){if(this.zooming&&(o.zoom=interpolate(n,s,t)),this.rotating&&(o.bearing=interpolate(r,h,t)),this.pitching&&(o.pitch=interpolate(a,p,t)),m)o.setLocationAtPoint(m,g);else{var i=o.zoomScale(o.zoom-n),c=s>n?Math.min(2,v):Math.max(.5,v),f=Math.pow(c,1-t),b=o.unproject(d.add(l.mult(t*f)).mult(i));o.setLocationAtPoint(o.renderWorldCopies?b.wrap():b,u)}this._fireMoveEvents(e)},function(){t.delayEndEvents?i._onEaseEnd=setTimeout(function(){return i._easeToEnd(e)},t.delayEndEvents):i._easeToEnd(e)},t),this},e.prototype._prepareEase=function(t,e){this.moving=!0,e||this.fire("movestart",t),this.zooming&&this.fire("zoomstart",t),this.pitching&&this.fire("pitchstart",t)},e.prototype._fireMoveEvents=function(t){this.fire("move",t),this.zooming&&this.fire("zoom",t),this.rotating&&this.fire("rotate",t),this.pitching&&this.fire("pitch",t)},e.prototype._easeToEnd=function(t){var e=this.zooming,i=this.pitching;this.moving=!1,this.zooming=!1,this.rotating=!1,this.pitching=!1,e&&this.fire("zoomend",t),i&&this.fire("pitchend",t),this.fire("moveend",t)},e.prototype.flyTo=function(t,e){function i(t){var e=(M*M-z*z+(t?-1:1)*L*L*E*E)/(2*(t?M:z)*L*E);return Math.log(Math.sqrt(e*e+1)-e)}function o(t){return(Math.exp(t)-Math.exp(-t))/2}function n(t){return(Math.exp(t)+Math.exp(-t))/2}function r(t){return o(t)/n(t)}var a=this;this.stop(),t=util.extend({offset:[0,0],speed:1.2,curve:1.42,easing:util.ease},t);var s=this.transform,h=this.getZoom(),p=this.getBearing(),u=this.getPitch(),c="zoom"in t?+t.zoom:h,f="bearing"in t?this._normalizeBearing(t.bearing,p):p,m="pitch"in t?+t.pitch:u,g=s.zoomScale(c-h),d=s.centerPoint.add(Point.convert(t.offset)),l=s.pointLocation(d),v=LngLat.convert(t.center||l);this._normalizeCenter(v);var b=s.project(l),y=s.project(v).sub(b),_=t.curve,z=Math.max(s.width,s.height),M=z/g,E=y.mag();if("minZoom"in t){var T=util.clamp(Math.min(t.minZoom,h,c),s.minZoom,s.maxZoom),x=z/s.zoomScale(T-h);_=Math.sqrt(x/E*2)}var L=_*_,j=i(0),w=function(t){return n(j)/n(j+_*t)},P=function(t){return z*((n(j)*r(j+_*t)-o(j))/L)/E},Z=(i(1)-j)/_;if(Math.abs(E)<1e-6){if(Math.abs(z-M)<1e-6)return this.easeTo(t,e);var q=M180?-360:i<-180?360:0}},e.prototype._smoothOutEasing=function(t){var e=util.ease;if(this._prevEase){var i=this._prevEase,o=(Date.now()-i.start)/i.duration,n=i.easing(o+.01)-i.easing(o),r=.27/Math.sqrt(n*n+1e-4)*.01,a=Math.sqrt(.0729-r*r);e=util.bezier(r,a,.25,1)}return this._prevEase={start:(new Date).getTime(),duration:t,easing:e},e},e}(_dereq_("../util/evented"));module.exports=Camera},{"../geo/lng_lat":62,"../geo/lng_lat_bounds":63,"../style-spec/util/interpolate":123,"../util/browser":195,"../util/evented":203,"../util/util":215,"point-geometry":26}],176:[function(_dereq_,module,exports){"use strict";var DOM=_dereq_("../../util/dom"),util=_dereq_("../../util/util"),AttributionControl=function(t){this.options=t,util.bindAll(["_updateEditLink","_updateData","_updateCompact"],this)};AttributionControl.prototype.getDefaultPosition=function(){return"bottom-right"},AttributionControl.prototype.onAdd=function(t){var i=this.options&&this.options.compact;return this._map=t,this._container=DOM.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),i&&this._container.classList.add("mapboxgl-compact"),this._updateAttributions(),this._updateEditLink(),this._map.on("sourcedata",this._updateData),this._map.on("moveend",this._updateEditLink),void 0===i&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container},AttributionControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off("sourcedata",this._updateData),this._map.off("moveend",this._updateEditLink),this._map.off("resize",this._updateCompact),this._map=void 0},AttributionControl.prototype._updateEditLink=function(){if(this._editLink||(this._editLink=this._container.querySelector(".mapboxgl-improve-map")),this._editLink){var t=this._map.getCenter();this._editLink.href="https://www.mapbox.com/map-feedback/#/"+t.lng+"/"+t.lat+"/"+Math.round(this._map.getZoom()+1)}},AttributionControl.prototype._updateData=function(t){t&&"metadata"===t.sourceDataType&&(this._updateAttributions(),this._updateEditLink())},AttributionControl.prototype._updateAttributions=function(){if(this._map.style){var t=[],i=this._map.style.sourceCaches;for(var o in i){var n=i[o].getSource();n.attribution&&t.indexOf(n.attribution)<0&&t.push(n.attribution)}t.sort(function(t,i){return t.length-i.length}),t=t.filter(function(i,o){for(var n=o+1;n=0)return!1;return!0}),this._container.innerHTML=t.join(" | "),this._editLink=null}},AttributionControl.prototype._updateCompact=function(){var t=this._map.getCanvasContainer().offsetWidth<=640;this._container.classList[t?"add":"remove"]("mapboxgl-compact")},module.exports=AttributionControl},{"../../util/dom":202,"../../util/util":215}],177:[function(_dereq_,module,exports){"use strict";var DOM=_dereq_("../../util/dom"),util=_dereq_("../../util/util"),window=_dereq_("../../util/window"),FullscreenControl=function(){this._fullscreen=!1,util.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in window.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in window.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in window.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in window.document&&(this._fullscreenchange="MSFullscreenChange")};FullscreenControl.prototype.onAdd=function(e){var n="mapboxgl-ctrl",l=this._container=DOM.create("div",n+" mapboxgl-ctrl-group"),t=this._fullscreenButton=DOM.create("button",n+"-icon "+n+"-fullscreen",this._container);return t.setAttribute("aria-label","Toggle fullscreen"),t.type="button",this._fullscreenButton.addEventListener("click",this._onClickFullscreen),this._mapContainer=e.getContainer(),window.document.addEventListener(this._fullscreenchange,this._changeIcon),l},FullscreenControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},FullscreenControl.prototype._isFullscreen=function(){return this._fullscreen},FullscreenControl.prototype._changeIcon=function(){if((window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement)===this._mapContainer!==this._fullscreen){this._fullscreen=!this._fullscreen;var n="mapboxgl-ctrl";this._fullscreenButton.classList.toggle(n+"-shrink"),this._fullscreenButton.classList.toggle(n+"-fullscreen")}},FullscreenControl.prototype._onClickFullscreen=function(){this._isFullscreen()?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._mapContainer.requestFullscreen?this._mapContainer.requestFullscreen():this._mapContainer.mozRequestFullScreen?this._mapContainer.mozRequestFullScreen():this._mapContainer.msRequestFullscreen?this._mapContainer.msRequestFullscreen():this._mapContainer.webkitRequestFullscreen&&this._mapContainer.webkitRequestFullscreen()},module.exports=FullscreenControl},{"../../util/dom":202,"../../util/util":215,"../../util/window":197}],178:[function(_dereq_,module,exports){"use strict";function checkGeolocationSupport(t){void 0!==supportsGeolocation?t(supportsGeolocation):void 0!==window.navigator.permissions?window.navigator.permissions.query({name:"geolocation"}).then(function(o){supportsGeolocation="denied"!==o.state,t(supportsGeolocation)}):(supportsGeolocation=!!window.navigator.geolocation,t(supportsGeolocation))}var supportsGeolocation,Evented=_dereq_("../../util/evented"),DOM=_dereq_("../../util/dom"),window=_dereq_("../../util/window"),util=_dereq_("../../util/util"),defaultGeoPositionOptions={enableHighAccuracy:!1,timeout:6e3},GeolocateControl=function(t){function o(o){t.call(this),this.options=o||{},util.bindAll(["_onSuccess","_onError","_finish","_setupUI"],this)}return t&&(o.__proto__=t),o.prototype=Object.create(t&&t.prototype),o.prototype.constructor=o,o.prototype.onAdd=function(t){return this._map=t,this._container=DOM.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),checkGeolocationSupport(this._setupUI),this._container},o.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map=void 0},o.prototype._onSuccess=function(t){this._map.jumpTo({center:[t.coords.longitude,t.coords.latitude],zoom:17,bearing:0,pitch:0}),this.fire("geolocate",t),this._finish()},o.prototype._onError=function(t){this.fire("error",t),this._finish()},o.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},o.prototype._setupUI=function(t){!1!==t&&(this._container.addEventListener("contextmenu",function(t){return t.preventDefault()}),this._geolocateButton=DOM.create("button","mapboxgl-ctrl-icon mapboxgl-ctrl-geolocate",this._container),this._geolocateButton.type="button",this._geolocateButton.setAttribute("aria-label","Geolocate"),this.options.watchPosition&&this._geolocateButton.setAttribute("aria-pressed",!1),this._geolocateButton.addEventListener("click",this._onClickGeolocate.bind(this)))},o.prototype._onClickGeolocate=function(){var t=util.extend(defaultGeoPositionOptions,this.options&&this.options.positionOptions||{});this.options.watchPosition?void 0!==this._geolocationWatchID?(this._geolocateButton.classList.remove("mapboxgl-watching"),this._geolocateButton.setAttribute("aria-pressed",!1),window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0):(this._geolocateButton.classList.add("mapboxgl-watching"),this._geolocateButton.setAttribute("aria-pressed",!0),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,t)):(window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,t),this._timeoutId=setTimeout(this._finish,1e4))},o}(Evented);module.exports=GeolocateControl},{"../../util/dom":202,"../../util/evented":203,"../../util/util":215,"../../util/window":197}],179:[function(_dereq_,module,exports){"use strict";var DOM=_dereq_("../../util/dom"),util=_dereq_("../../util/util"),LogoControl=function(){util.bindAll(["_updateLogo"],this)};LogoControl.prototype.onAdd=function(o){return this._map=o,this._container=DOM.create("div","mapboxgl-ctrl"),this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._container},LogoControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off("sourcedata",this._updateLogo)},LogoControl.prototype.getDefaultPosition=function(){return"bottom-left"},LogoControl.prototype._updateLogo=function(o){if(o&&"metadata"===o.sourceDataType)if(!this._container.childNodes.length&&this._logoRequired()){var t=DOM.create("a","mapboxgl-ctrl-logo");t.target="_blank",t.href="https://www.mapbox.com/",t.setAttribute("aria-label","Mapbox logo"),this._container.appendChild(t),this._map.off("data",this._updateLogo)}else this._container.childNodes.length&&!this._logoRequired()&&this.onRemove()},LogoControl.prototype._logoRequired=function(){if(this._map.style){var o=this._map.style.sourceCaches;for(var t in o)if(o[t].getSource().mapbox_logo)return!0;return!1}},module.exports=LogoControl},{"../../util/dom":202,"../../util/util":215}],180:[function(_dereq_,module,exports){"use strict";function copyMouseEvent(t){return new window.MouseEvent(t.type,{button:2,buttons:2,bubbles:!0,cancelable:!0,detail:t.detail,view:t.view,screenX:t.screenX,screenY:t.screenY,clientX:t.clientX,clientY:t.clientY,movementX:t.movementX,movementY:t.movementY,ctrlKey:t.ctrlKey,shiftKey:t.shiftKey,altKey:t.altKey,metaKey:t.metaKey})}var DOM=_dereq_("../../util/dom"),window=_dereq_("../../util/window"),util=_dereq_("../../util/util"),className="mapboxgl-ctrl",NavigationControl=function(){util.bindAll(["_rotateCompassArrow"],this)};NavigationControl.prototype._rotateCompassArrow=function(){var t="rotate("+this._map.transform.angle*(180/Math.PI)+"deg)";this._compassArrow.style.transform=t},NavigationControl.prototype.onAdd=function(t){return this._map=t,this._container=DOM.create("div",className+" "+className+"-group",t.getContainer()),this._container.addEventListener("contextmenu",this._onContextMenu.bind(this)),this._zoomInButton=this._createButton(className+"-icon "+className+"-zoom-in","Zoom In",t.zoomIn.bind(t)),this._zoomOutButton=this._createButton(className+"-icon "+className+"-zoom-out","Zoom Out",t.zoomOut.bind(t)),this._compass=this._createButton(className+"-icon "+className+"-compass","Reset North",t.resetNorth.bind(t)),this._compassArrow=DOM.create("span",className+"-compass-arrow",this._compass),this._compass.addEventListener("mousedown",this._onCompassDown.bind(this)),this._onCompassMove=this._onCompassMove.bind(this),this._onCompassUp=this._onCompassUp.bind(this),this._map.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._container},NavigationControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off("rotate",this._rotateCompassArrow),this._map=void 0},NavigationControl.prototype._onContextMenu=function(t){t.preventDefault()},NavigationControl.prototype._onCompassDown=function(t){0===t.button&&(DOM.disableDrag(),window.document.addEventListener("mousemove",this._onCompassMove),window.document.addEventListener("mouseup",this._onCompassUp),this._map.getCanvasContainer().dispatchEvent(copyMouseEvent(t)),t.stopPropagation())},NavigationControl.prototype._onCompassMove=function(t){0===t.button&&(this._map.getCanvasContainer().dispatchEvent(copyMouseEvent(t)),t.stopPropagation())},NavigationControl.prototype._onCompassUp=function(t){0===t.button&&(window.document.removeEventListener("mousemove",this._onCompassMove),window.document.removeEventListener("mouseup",this._onCompassUp),DOM.enableDrag(),this._map.getCanvasContainer().dispatchEvent(copyMouseEvent(t)),t.stopPropagation())},NavigationControl.prototype._createButton=function(t,o,e){var n=DOM.create("button",t,this._container);return n.type="button",n.setAttribute("aria-label",o),n.addEventListener("click",function(){e()}),n},module.exports=NavigationControl},{"../../util/dom":202,"../../util/util":215,"../../util/window":197}],181:[function(_dereq_,module,exports){"use strict";function updateScale(t,e,o){var n=o&&o.maxWidth||100,i=t._container.clientHeight/2,a=getDistance(t.unproject([0,i]),t.unproject([n,i]));if(o&&"imperial"===o.unit){var r=3.2808*a;r>5280?setScale(e,n,r/5280,"mi"):setScale(e,n,r,"ft")}else setScale(e,n,a,"m")}function setScale(t,e,o,n){var i=getRoundNum(o),a=i/o;"m"===n&&i>=1e3&&(i/=1e3,n="km"),t.style.width=e*a+"px",t.innerHTML=i+n}function getDistance(t,e){var n=Math.PI/180,i=t.lat*n,a=e.lat*n,r=Math.sin(i)*Math.sin(a)+Math.cos(i)*Math.cos(a)*Math.cos((e.lng-t.lng)*n);return 6371e3*Math.acos(Math.min(r,1))}function getRoundNum(t){var e=Math.pow(10,(""+Math.floor(t)).length-1),o=t/e;return o=o>=10?10:o>=5?5:o>=3?3:o>=2?2:1,e*o}var DOM=_dereq_("../../util/dom"),util=_dereq_("../../util/util"),ScaleControl=function(t){this.options=t,util.bindAll(["_onMove"],this)};ScaleControl.prototype.getDefaultPosition=function(){return"bottom-left"},ScaleControl.prototype._onMove=function(){updateScale(this._map,this._container,this.options)},ScaleControl.prototype.onAdd=function(t){return this._map=t,this._container=DOM.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",t.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},ScaleControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off("move",this._onMove),this._map=void 0},module.exports=ScaleControl},{"../../util/dom":202,"../../util/util":215}],182:[function(_dereq_,module,exports){"use strict";var DOM=_dereq_("../../util/dom"),LngLatBounds=_dereq_("../../geo/lng_lat_bounds"),util=_dereq_("../../util/util"),window=_dereq_("../../util/window"),BoxZoomHandler=function(o){this._map=o,this._el=o.getCanvasContainer(),this._container=o.getContainer(),util.bindAll(["_onMouseDown","_onMouseMove","_onMouseUp","_onKeyDown"],this)};BoxZoomHandler.prototype.isEnabled=function(){return!!this._enabled},BoxZoomHandler.prototype.isActive=function(){return!!this._active},BoxZoomHandler.prototype.enable=function(){this.isEnabled()||(this._map.dragPan&&this._map.dragPan.disable(),this._el.addEventListener("mousedown",this._onMouseDown,!1),this._map.dragPan&&this._map.dragPan.enable(),this._enabled=!0)},BoxZoomHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("mousedown",this._onMouseDown),this._enabled=!1)},BoxZoomHandler.prototype._onMouseDown=function(o){o.shiftKey&&0===o.button&&(window.document.addEventListener("mousemove",this._onMouseMove,!1),window.document.addEventListener("keydown",this._onKeyDown,!1),window.document.addEventListener("mouseup",this._onMouseUp,!1),DOM.disableDrag(),this._startPos=DOM.mousePos(this._el,o),this._active=!0)},BoxZoomHandler.prototype._onMouseMove=function(o){var e=this._startPos,t=DOM.mousePos(this._el,o);this._box||(this._box=DOM.create("div","mapboxgl-boxzoom",this._container),this._container.classList.add("mapboxgl-crosshair"),this._fireEvent("boxzoomstart",o));var n=Math.min(e.x,t.x),i=Math.max(e.x,t.x),s=Math.min(e.y,t.y),a=Math.max(e.y,t.y);DOM.setTransform(this._box,"translate("+n+"px,"+s+"px)"),this._box.style.width=i-n+"px",this._box.style.height=a-s+"px"},BoxZoomHandler.prototype._onMouseUp=function(o){if(0===o.button){var e=this._startPos,t=DOM.mousePos(this._el,o),n=(new LngLatBounds).extend(this._map.unproject(e)).extend(this._map.unproject(t));this._finish(),e.x===t.x&&e.y===t.y?this._fireEvent("boxzoomcancel",o):this._map.fitBounds(n,{linear:!0}).fire("boxzoomend",{originalEvent:o,boxZoomBounds:n})}},BoxZoomHandler.prototype._onKeyDown=function(o){27===o.keyCode&&(this._finish(),this._fireEvent("boxzoomcancel",o))},BoxZoomHandler.prototype._finish=function(){this._active=!1,window.document.removeEventListener("mousemove",this._onMouseMove,!1),window.document.removeEventListener("keydown",this._onKeyDown,!1),window.document.removeEventListener("mouseup",this._onMouseUp,!1),this._container.classList.remove("mapboxgl-crosshair"),this._box&&(this._box.parentNode.removeChild(this._box),this._box=null),DOM.enableDrag()},BoxZoomHandler.prototype._fireEvent=function(o,e){return this._map.fire(o,{originalEvent:e})},module.exports=BoxZoomHandler},{"../../geo/lng_lat_bounds":63,"../../util/dom":202,"../../util/util":215,"../../util/window":197}],183:[function(_dereq_,module,exports){"use strict";var DoubleClickZoomHandler=function(o){this._map=o,this._onDblClick=this._onDblClick.bind(this)};DoubleClickZoomHandler.prototype.isEnabled=function(){return!!this._enabled},DoubleClickZoomHandler.prototype.enable=function(){this.isEnabled()||(this._map.on("dblclick",this._onDblClick),this._enabled=!0)},DoubleClickZoomHandler.prototype.disable=function(){this.isEnabled()&&(this._map.off("dblclick",this._onDblClick),this._enabled=!1)},DoubleClickZoomHandler.prototype._onDblClick=function(o){this._map.zoomTo(this._map.getZoom()+(o.originalEvent.shiftKey?-1:1),{around:o.lngLat},o)},module.exports=DoubleClickZoomHandler},{}],184:[function(_dereq_,module,exports){"use strict";var DOM=_dereq_("../../util/dom"),util=_dereq_("../../util/util"),window=_dereq_("../../util/window"),inertiaEasing=util.bezier(0,0,.3,1),DragPanHandler=function(t){this._map=t,this._el=t.getCanvasContainer(),util.bindAll(["_onDown","_onMove","_onUp","_onTouchEnd","_onMouseUp"],this)};DragPanHandler.prototype.isEnabled=function(){return!!this._enabled},DragPanHandler.prototype.isActive=function(){return!!this._active},DragPanHandler.prototype.enable=function(){this.isEnabled()||(this._el.classList.add("mapboxgl-touch-drag-pan"),this._el.addEventListener("mousedown",this._onDown),this._el.addEventListener("touchstart",this._onDown),this._enabled=!0)},DragPanHandler.prototype.disable=function(){this.isEnabled()&&(this._el.classList.remove("mapboxgl-touch-drag-pan"),this._el.removeEventListener("mousedown",this._onDown),this._el.removeEventListener("touchstart",this._onDown),this._enabled=!1)},DragPanHandler.prototype._onDown=function(t){this._ignoreEvent(t)||this.isActive()||(t.touches?(window.document.addEventListener("touchmove",this._onMove),window.document.addEventListener("touchend",this._onTouchEnd)):(window.document.addEventListener("mousemove",this._onMove),window.document.addEventListener("mouseup",this._onMouseUp)),window.addEventListener("blur",this._onMouseUp),this._active=!1,this._startPos=this._pos=DOM.mousePos(this._el,t),this._inertia=[[Date.now(),this._pos]])},DragPanHandler.prototype._onMove=function(t){if(!this._ignoreEvent(t)){this.isActive()||(this._active=!0,this._map.moving=!0,this._fireEvent("dragstart",t),this._fireEvent("movestart",t));var e=DOM.mousePos(this._el,t),n=this._map;n.stop(),this._drainInertiaBuffer(),this._inertia.push([Date.now(),e]),n.transform.setLocationAtPoint(n.transform.pointLocation(this._pos),e),this._fireEvent("drag",t),this._fireEvent("move",t),this._pos=e,t.preventDefault()}},DragPanHandler.prototype._onUp=function(t){var e=this;if(this.isActive()){this._active=!1,this._fireEvent("dragend",t),this._drainInertiaBuffer();var n=function(){e._map.moving=!1,e._fireEvent("moveend",t)},i=this._inertia;if(i.length<2)return void n();var o=i[i.length-1],r=i[0],a=o[1].sub(r[1]),s=(o[0]-r[0])/1e3;if(0===s||o[1].equals(r[1]))return void n();var u=a.mult(.3/s),d=u.mag();d>1400&&(d=1400,u._unit()._mult(d));var h=d/750,v=u.mult(-h/2);this._map.panBy(v,{duration:1e3*h,easing:inertiaEasing,noMoveStart:!0},{originalEvent:t})}},DragPanHandler.prototype._onMouseUp=function(t){this._ignoreEvent(t)||(this._onUp(t),window.document.removeEventListener("mousemove",this._onMove),window.document.removeEventListener("mouseup",this._onMouseUp),window.removeEventListener("blur",this._onMouseUp))},DragPanHandler.prototype._onTouchEnd=function(t){this._ignoreEvent(t)||(this._onUp(t),window.document.removeEventListener("touchmove",this._onMove),window.document.removeEventListener("touchend",this._onTouchEnd))},DragPanHandler.prototype._fireEvent=function(t,e){return this._map.fire(t,{originalEvent:e})},DragPanHandler.prototype._ignoreEvent=function(t){var e=this._map;if(e.boxZoom&&e.boxZoom.isActive())return!0;if(e.dragRotate&&e.dragRotate.isActive())return!0;if(t.touches)return t.touches.length>1;if(t.ctrlKey)return!0;return"mousemove"===t.type?!1&t.buttons:t.button&&0!==t.button},DragPanHandler.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now();t.length>0&&e-t[0][0]>160;)t.shift()},module.exports=DragPanHandler},{"../../util/dom":202,"../../util/util":215,"../../util/window":197}],185:[function(_dereq_,module,exports){"use strict";var DOM=_dereq_("../../util/dom"),util=_dereq_("../../util/util"),window=_dereq_("../../util/window"),inertiaEasing=util.bezier(0,0,.25,1),DragRotateHandler=function(t,e){this._map=t,this._el=t.getCanvasContainer(),this._bearingSnap=e.bearingSnap,this._pitchWithRotate=!1!==e.pitchWithRotate,util.bindAll(["_onDown","_onMove","_onUp"],this)};DragRotateHandler.prototype.isEnabled=function(){return!!this._enabled},DragRotateHandler.prototype.isActive=function(){return!!this._active},DragRotateHandler.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener("mousedown",this._onDown),this._enabled=!0)},DragRotateHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("mousedown",this._onDown),this._enabled=!1)},DragRotateHandler.prototype._onDown=function(t){this._ignoreEvent(t)||this.isActive()||(window.document.addEventListener("mousemove",this._onMove),window.document.addEventListener("mouseup",this._onUp),window.addEventListener("blur",this._onUp),this._active=!1,this._inertia=[[Date.now(),this._map.getBearing()]],this._startPos=this._pos=DOM.mousePos(this._el,t),this._center=this._map.transform.centerPoint,t.preventDefault())},DragRotateHandler.prototype._onMove=function(t){if(!this._ignoreEvent(t)){this.isActive()||(this._active=!0,this._map.moving=!0,this._fireEvent("rotatestart",t),this._fireEvent("movestart",t),this._pitchWithRotate&&this._fireEvent("pitchstart",t));var e=this._map;e.stop();var i=this._pos,n=DOM.mousePos(this._el,t),r=.8*(i.x-n.x),a=-.5*(i.y-n.y),o=e.getBearing()-r,s=e.getPitch()-a,h=this._inertia,_=h[h.length-1];this._drainInertiaBuffer(),h.push([Date.now(),e._normalizeBearing(o,_[1])]),e.transform.bearing=o,this._pitchWithRotate&&(this._fireEvent("pitch",t),e.transform.pitch=s),this._fireEvent("rotate",t),this._fireEvent("move",t),this._pos=n}},DragRotateHandler.prototype._onUp=function(t){var e=this;if(!this._ignoreEvent(t)&&(window.document.removeEventListener("mousemove",this._onMove),window.document.removeEventListener("mouseup",this._onUp),window.removeEventListener("blur",this._onUp),this.isActive())){this._active=!1,this._fireEvent("rotateend",t),this._drainInertiaBuffer();var i=this._map,n=i.getBearing(),r=this._inertia,a=function(){Math.abs(n)180&&(u=180);var l=u/180;_+=p*u*(l/2),Math.abs(i._normalizeBearing(_,0))1;var i=t.ctrlKey?1:2,n=t.ctrlKey?0:2,r=t.button;return"undefined"!=typeof InstallTrigger&&2===t.button&&t.ctrlKey&&window.navigator.platform.toUpperCase().indexOf("MAC")>=0&&(r=0),"mousemove"===t.type?t.buttons&0===i:!this.isActive()&&r!==n},DragRotateHandler.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now();t.length>0&&e-t[0][0]>160;)t.shift()},module.exports=DragRotateHandler},{"../../util/dom":202,"../../util/util":215,"../../util/window":197}],186:[function(_dereq_,module,exports){"use strict";function easeOut(e){return e*(2-e)}var KeyboardHandler=function(e){this._map=e,this._el=e.getCanvasContainer(),this._onKeyDown=this._onKeyDown.bind(this)};KeyboardHandler.prototype.isEnabled=function(){return!!this._enabled},KeyboardHandler.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener("keydown",this._onKeyDown,!1),this._enabled=!0)},KeyboardHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("keydown",this._onKeyDown),this._enabled=!1)},KeyboardHandler.prototype._onKeyDown=function(e){if(!(e.altKey||e.ctrlKey||e.metaKey)){var t=0,a=0,n=0,r=0,i=0;switch(e.keyCode){case 61:case 107:case 171:case 187:t=1;break;case 189:case 109:case 173:t=-1;break;case 37:e.shiftKey?a=-1:(e.preventDefault(),r=-1);break;case 39:e.shiftKey?a=1:(e.preventDefault(),r=1);break;case 38:e.shiftKey?n=1:(e.preventDefault(),i=-1);break;case 40:e.shiftKey?n=-1:(i=1,e.preventDefault());break;default:return}var s=this._map,o=s.getZoom(),d={duration:300,delayEndEvents:500,easing:easeOut,zoom:t?Math.round(o)+t*(e.shiftKey?2:1):o,bearing:s.getBearing()+15*a,pitch:s.getPitch()+10*n,offset:[100*-r,100*-i],center:s.getCenter()};s.easeTo(d,{originalEvent:e})}},module.exports=KeyboardHandler},{}],187:[function(_dereq_,module,exports){"use strict";var DOM=_dereq_("../../util/dom"),util=_dereq_("../../util/util"),browser=_dereq_("../../util/browser"),window=_dereq_("../../util/window"),ua=window.navigator.userAgent.toLowerCase(),firefox=-1!==ua.indexOf("firefox"),safari=-1!==ua.indexOf("safari")&&-1===ua.indexOf("chrom"),ScrollZoomHandler=function(e){this._map=e,this._el=e.getCanvasContainer(),util.bindAll(["_onWheel","_onTimeout"],this)};ScrollZoomHandler.prototype.isEnabled=function(){return!!this._enabled},ScrollZoomHandler.prototype.enable=function(e){this.isEnabled()||(this._el.addEventListener("wheel",this._onWheel,!1),this._el.addEventListener("mousewheel",this._onWheel,!1),this._enabled=!0,this._aroundCenter=e&&"center"===e.around)},ScrollZoomHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("wheel",this._onWheel),this._el.removeEventListener("mousewheel",this._onWheel),this._enabled=!1)},ScrollZoomHandler.prototype._onWheel=function(e){var t;"wheel"===e.type?(t=e.deltaY,firefox&&e.deltaMode===window.WheelEvent.DOM_DELTA_PIXEL&&(t/=browser.devicePixelRatio),e.deltaMode===window.WheelEvent.DOM_DELTA_LINE&&(t*=40)):"mousewheel"===e.type&&(t=-e.wheelDeltaY,safari&&(t/=3));var o=browser.now(),i=o-(this._time||0);this._pos=DOM.mousePos(this._el,e),this._time=o,0!==t&&t%4.000244140625==0?this._type="wheel":0!==t&&Math.abs(t)<4?this._type="trackpad":i>400?(this._type=null,this._lastValue=t,this._timeout=setTimeout(this._onTimeout,40)):this._type||(this._type=Math.abs(i*t)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,t+=this._lastValue)),e.shiftKey&&t&&(t/=4),this._type&&this._zoom(-t,e),e.preventDefault()},ScrollZoomHandler.prototype._onTimeout=function(){this._type="wheel",this._zoom(-this._lastValue)},ScrollZoomHandler.prototype._zoom=function(e,t){if(0!==e){var o=this._map,i=2/(1+Math.exp(-Math.abs(e/100)));e<0&&0!==i&&(i=1/i);var l=o.ease?o.ease.to:o.transform.scale,s=o.transform.scaleZoom(l*i);o.zoomTo(s,{duration:"wheel"===this._type?200:0,around:this._aroundCenter?o.getCenter():o.unproject(this._pos),delayEndEvents:200,smoothEasing:!0},{originalEvent:t})}},module.exports=ScrollZoomHandler},{"../../util/browser":195,"../../util/dom":202,"../../util/util":215,"../../util/window":197}],188:[function(_dereq_,module,exports){"use strict";var DOM=_dereq_("../../util/dom"),util=_dereq_("../../util/util"),window=_dereq_("../../util/window"),inertiaEasing=util.bezier(0,0,.15,1),TouchZoomRotateHandler=function(t){this._map=t,this._el=t.getCanvasContainer(),util.bindAll(["_onStart","_onMove","_onEnd"],this)};TouchZoomRotateHandler.prototype.isEnabled=function(){return!!this._enabled},TouchZoomRotateHandler.prototype.enable=function(t){this.isEnabled()||(this._el.classList.add("mapboxgl-touch-zoom-rotate"),this._el.addEventListener("touchstart",this._onStart,!1),this._enabled=!0,this._aroundCenter=t&&"center"===t.around)},TouchZoomRotateHandler.prototype.disable=function(){this.isEnabled()&&(this._el.classList.remove("mapboxgl-touch-zoom-rotate"),this._el.removeEventListener("touchstart",this._onStart),this._enabled=!1)},TouchZoomRotateHandler.prototype.disableRotation=function(){this._rotationDisabled=!0},TouchZoomRotateHandler.prototype.enableRotation=function(){this._rotationDisabled=!1},TouchZoomRotateHandler.prototype._onStart=function(t){if(2===t.touches.length){var e=DOM.mousePos(this._el,t.touches[0]),o=DOM.mousePos(this._el,t.touches[1]);this._startVec=e.sub(o),this._startScale=this._map.transform.scale,this._startBearing=this._map.transform.bearing,this._gestureIntent=void 0,this._inertia=[],window.document.addEventListener("touchmove",this._onMove,!1),window.document.addEventListener("touchend",this._onEnd,!1)}},TouchZoomRotateHandler.prototype._onMove=function(t){if(2===t.touches.length){var e=DOM.mousePos(this._el,t.touches[0]),o=DOM.mousePos(this._el,t.touches[1]),i=e.add(o).div(2),n=e.sub(o),a=n.mag()/this._startVec.mag(),r=this._rotationDisabled?0:180*n.angleWith(this._startVec)/Math.PI,s=this._map;if(this._gestureIntent){var h={duration:0,around:s.unproject(i)};"rotate"===this._gestureIntent&&(h.bearing=this._startBearing+r),"zoom"!==this._gestureIntent&&"rotate"!==this._gestureIntent||(h.zoom=s.transform.scaleZoom(this._startScale*a)),s.stop(),this._drainInertiaBuffer(),this._inertia.push([Date.now(),a,i]),s.easeTo(h,{originalEvent:t})}else{var u=Math.abs(1-a)>.15;Math.abs(r)>4?this._gestureIntent="rotate":u&&(this._gestureIntent="zoom"),this._gestureIntent&&(this._startVec=n,this._startScale=s.transform.scale,this._startBearing=s.transform.bearing)}t.preventDefault()}},TouchZoomRotateHandler.prototype._onEnd=function(t){window.document.removeEventListener("touchmove",this._onMove),window.document.removeEventListener("touchend",this._onEnd),this._drainInertiaBuffer();var e=this._inertia,o=this._map;if(e.length<2)o.snapToNorth({},{originalEvent:t});else{var i=e[e.length-1],n=e[0],a=o.transform.scaleZoom(this._startScale*i[1]),r=o.transform.scaleZoom(this._startScale*n[1]),s=a-r,h=(i[0]-n[0])/1e3,u=i[2];if(0!==h&&a!==r){var l=.15*s/h;Math.abs(l)>2.5&&(l=l>0?2.5:-2.5);var d=1e3*Math.abs(l/(12*.15)),c=a+l*d/2e3;c<0&&(c=0),o.easeTo({zoom:c,duration:d,easing:inertiaEasing,around:this._aroundCenter?o.getCenter():o.unproject(u)},{originalEvent:t})}else o.snapToNorth({},{originalEvent:t})}},TouchZoomRotateHandler.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now();t.length>2&&e-t[0][0]>160;)t.shift()},module.exports=TouchZoomRotateHandler},{"../../util/dom":202,"../../util/util":215,"../../util/window":197}],189:[function(_dereq_,module,exports){"use strict";var util=_dereq_("../util/util"),window=_dereq_("../util/window"),Hash=function(){util.bindAll(["_onHashChange","_updateHash"],this)};Hash.prototype.addTo=function(t){return this._map=t,window.addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this},Hash.prototype.remove=function(){return window.removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),delete this._map,this},Hash.prototype._onHashChange=function(){var t=window.location.hash.replace("#","").split("/");return t.length>=3&&(this._map.jumpTo({center:[+t[2],+t[1]],zoom:+t[0],bearing:+(t[3]||0),pitch:+(t[4]||0)}),!0)},Hash.prototype._updateHash=function(){var t=this._map.getCenter(),e=this._map.getZoom(),a=this._map.getBearing(),h=this._map.getPitch(),i=Math.max(0,Math.ceil(Math.log(e)/Math.LN2)),n="#"+Math.round(100*e)/100+"/"+t.lat.toFixed(i)+"/"+t.lng.toFixed(i);(a||h)&&(n+="/"+Math.round(10*a)/10),h&&(n+="/"+Math.round(h)),window.history.replaceState("","",n)},module.exports=Hash},{"../util/util":215,"../util/window":197}],190:[function(_dereq_,module,exports){"use strict";function removeNode(t){t.parentNode&&t.parentNode.removeChild(t)}var util=_dereq_("../util/util"),browser=_dereq_("../util/browser"),window=_dereq_("../util/window"),DOM=_dereq_("../util/dom"),ajax=_dereq_("../util/ajax"),Style=_dereq_("../style/style"),AnimationLoop=_dereq_("../style/animation_loop"),Painter=_dereq_("../render/painter"),Transform=_dereq_("../geo/transform"),Hash=_dereq_("./hash"),bindHandlers=_dereq_("./bind_handlers"),Camera=_dereq_("./camera"),LngLat=_dereq_("../geo/lng_lat"),LngLatBounds=_dereq_("../geo/lng_lat_bounds"),Point=_dereq_("point-geometry"),AttributionControl=_dereq_("./control/attribution_control"),LogoControl=_dereq_("./control/logo_control"),isSupported=_dereq_("mapbox-gl-supported"),defaultOptions={center:[0,0],zoom:0,bearing:0,pitch:0,minZoom:0,maxZoom:22,interactive:!0,scrollZoom:!0,boxZoom:!0,dragRotate:!0,dragPan:!0,keyboard:!0,doubleClickZoom:!0,touchZoomRotate:!0,bearingSnap:7,hash:!1,attributionControl:!0,failIfMajorPerformanceCaveat:!1,preserveDrawingBuffer:!1,trackResize:!0,renderWorldCopies:!0,refreshExpiredTiles:!0},Map=function(t){function e(e){var o=this;if(null!=(e=util.extend({},defaultOptions,e)).minZoom&&null!=e.maxZoom&&e.minZoom>e.maxZoom)throw new Error("maxZoom must be greater than minZoom");var i=new Transform(e.minZoom,e.maxZoom,e.renderWorldCopies);if(t.call(this,i,e),this._interactive=e.interactive,this._failIfMajorPerformanceCaveat=e.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=e.preserveDrawingBuffer,this._trackResize=e.trackResize,this._bearingSnap=e.bearingSnap,this._refreshExpiredTiles=e.refreshExpiredTiles,"string"==typeof e.container){if(this._container=window.document.getElementById(e.container),!this._container)throw new Error("Container '"+e.container+"' not found.")}else this._container=e.container;this.animationLoop=new AnimationLoop,e.maxBounds&&this.setMaxBounds(e.maxBounds),util.bindAll(["_onWindowOnline","_onWindowResize","_contextLost","_contextRestored","_update","_render","_onData","_onDataLoading"],this),this._setupContainer(),this._setupPainter(),this.on("move",this._update.bind(this,!1)),this.on("zoom",this._update.bind(this,!0)),this.on("moveend",function(){o.animationLoop.set(300),o._rerender()}),void 0!==window&&(window.addEventListener("online",this._onWindowOnline,!1),window.addEventListener("resize",this._onWindowResize,!1)),bindHandlers(this,e),this._hash=e.hash&&(new Hash).addTo(this),this._hash&&this._hash._onHashChange()||this.jumpTo({center:e.center,zoom:e.zoom,bearing:e.bearing,pitch:e.pitch}),this._classes=[],this.resize(),e.classes&&this.setClasses(e.classes),e.style&&this.setStyle(e.style),e.attributionControl&&this.addControl(new AttributionControl),this.addControl(new LogoControl,e.logoPosition),this.on("style.load",function(){this.transform.unmodified&&this.jumpTo(this.style.stylesheet),this.style.update(this._classes,{transition:!1})}),this.on("data",this._onData),this.on("dataloading",this._onDataLoading)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var o={showTileBoundaries:{},showCollisionBoxes:{},showOverdrawInspector:{},repaint:{},vertices:{}};return e.prototype.addControl=function(t,e){void 0===e&&t.getDefaultPosition&&(e=t.getDefaultPosition()),void 0===e&&(e="top-right");var o=t.onAdd(this),i=this._controlPositions[e];return-1!==e.indexOf("bottom")?i.insertBefore(o,i.firstChild):i.appendChild(o),this},e.prototype.removeControl=function(t){return t.onRemove(this),this},e.prototype.addClass=function(t,e){return util.warnOnce("Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS."),this._classes.indexOf(t)>=0||""===t?this:(this._classes.push(t),this._classOptions=e,this.style&&this.style.updateClasses(),this._update(!0))},e.prototype.removeClass=function(t,e){util.warnOnce("Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.");var o=this._classes.indexOf(t);return o<0||""===t?this:(this._classes.splice(o,1),this._classOptions=e,this.style&&this.style.updateClasses(),this._update(!0))},e.prototype.setClasses=function(t,e){util.warnOnce("Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.");for(var o={},i=0;i=0},e.prototype.getClasses=function(){return util.warnOnce("Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS."),this._classes},e.prototype.resize=function(){var t=this._containerDimensions(),e=t[0],o=t[1];return this._resizeCanvas(e,o),this.transform.resize(e,o),this.painter.resize(e,o),this.fire("movestart").fire("move").fire("resize").fire("moveend")},e.prototype.getBounds=function(){var t=new LngLatBounds(this.transform.pointLocation(new Point(0,this.transform.height)),this.transform.pointLocation(new Point(this.transform.width,0)));return(this.transform.angle||this.transform.pitch)&&(t.extend(this.transform.pointLocation(new Point(this.transform.size.x,0))),t.extend(this.transform.pointLocation(new Point(0,this.transform.size.y)))),t},e.prototype.setMaxBounds=function(t){if(t){var e=LngLatBounds.convert(t);this.transform.lngRange=[e.getWest(),e.getEast()],this.transform.latRange=[e.getSouth(),e.getNorth()],this.transform._constrain(),this._update()}else null!==t&&void 0!==t||(this.transform.lngRange=[],this.transform.latRange=[],this._update());return this},e.prototype.setMinZoom=function(t){if((t=null===t||void 0===t?0:t)>=0&&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")},e.prototype.getMaxZoom=function(){return this.transform.maxZoom},e.prototype.project=function(t){return this.transform.locationPoint(LngLat.convert(t))},e.prototype.unproject=function(t){return this.transform.pointLocation(Point.convert(t))},e.prototype.on=function(e,o,i){var r=this;if(void 0===i)return t.prototype.on.call(this,e,o);var s=function(){if("mouseenter"===e||"mouseover"===e){var t=!1;return{layer:o,listener:i,delegates:{mousemove:function(s){var n=r.queryRenderedFeatures(s.point,{layers:[o]});n.length?t||(t=!0,i.call(r,util.extend({features:n},s,{type:e}))):t=!1},mouseout:function(){t=!1}}}}if("mouseleave"===e||"mouseout"===e){var a=!1;return{layer:o,listener:i,delegates:{mousemove:function(t){r.queryRenderedFeatures(t.point,{layers:[o]}).length?a=!0:a&&(a=!1,i.call(r,util.extend({},t,{type:e})))},mouseout:function(t){a&&(a=!1,i.call(r,util.extend({},t,{type:e})))}}}}var u=function(t){var e=r.queryRenderedFeatures(t.point,{layers:[o]});e.length&&i.call(r,util.extend({features:e},t))};return{layer:o,listener:i,delegates:(d={},d[e]=u,d)};var d}();this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[e]=this._delegatedListeners[e]||[],this._delegatedListeners[e].push(s);for(var n in s.delegates)r.on(n,s.delegates[n]);return this},e.prototype.off=function(e,o,i){var r=this;if(void 0===i)return t.prototype.off.call(this,e,o);if(this._delegatedListeners&&this._delegatedListeners[e])for(var s=this._delegatedListeners[e],n=0;nthis._map.transform.height-n?["bottom"]:[],this._pos.xthis._map.transform.width-e/2&&t.push("right"),t=0===t.length?"bottom":t.join("-")}var i=this._pos.add(o[t]).round(),r={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%)"},s=this._container.classList;for(var p in r)s.remove("mapboxgl-popup-anchor-"+p);s.add("mapboxgl-popup-anchor-"+t),DOM.setTransform(this._container,r[t]+" translate("+i.x+"px,"+i.y+"px)")}},o.prototype._onClickClose=function(){this.remove()},o}(Evented);module.exports=Popup},{"../geo/lng_lat":62,"../util/dom":202,"../util/evented":203,"../util/smart_wrap":212,"../util/util":215,"../util/window":197,"point-geometry":26}],193:[function(_dereq_,module,exports){"use strict";var Actor=function(t,e,a){this.target=t,this.parent=e,this.mapId=a,this.callbacks={},this.callbackID=0,this.receive=this.receive.bind(this),this.target.addEventListener("message",this.receive,!1)};Actor.prototype.send=function(t,e,a,r,s){var i=a?this.mapId+":"+this.callbackID++:null;a&&(this.callbacks[i]=a),this.target.postMessage({targetMapId:s,sourceMapId:this.mapId,type:t,id:String(i),data:e},r)},Actor.prototype.receive=function(t){var e,a=this,r=t.data,s=r.id;if(!r.targetMapId||this.mapId===r.targetMapId){var i=function(t,e,r){a.target.postMessage({sourceMapId:a.mapId,type:"",id:String(s),error:t?String(t):null,data:e},r)};if(""===r.type)e=this.callbacks[r.id],delete this.callbacks[r.id],e&&e(r.error||null,r.data);else if(void 0!==r.id&&this.parent[r.type])this.parent[r.type](r.sourceMapId,r.data,i);else if(void 0!==r.id&&this.parent.getWorkerSource){var p=r.type.split(".");this.parent.getWorkerSource(r.sourceMapId,p[0])[p[1]](r.data,i)}else this.parent[r.type](r.data)}},Actor.prototype.remove=function(){this.target.removeEventListener("message",this.receive,!1)},module.exports=Actor},{}],194:[function(_dereq_,module,exports){"use strict";function sameOrigin(e){var t=window.document.createElement("a");return t.href=e,t.protocol===window.document.location.protocol&&t.host===window.document.location.host}var window=_dereq_("./window"),AJAXError=function(e){function t(t,r){e.call(this,t),this.status=r}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(Error);exports.getJSON=function(e,t){var r=new window.XMLHttpRequest;return r.open("GET",e,!0),r.setRequestHeader("Accept","application/json"),r.onerror=function(e){t(e)},r.onload=function(){if(r.status>=200&&r.status<300&&r.response){var e;try{e=JSON.parse(r.response)}catch(e){return t(e)}t(null,e)}else t(new AJAXError(r.statusText,r.status))},r.send(),r},exports.getArrayBuffer=function(e,t){var r=new window.XMLHttpRequest;return r.open("GET",e,!0),r.responseType="arraybuffer",r.onerror=function(e){t(e)},r.onload=function(){return 0===r.response.byteLength&&200===r.status?t(new Error("http status 200 returned without content.")):void(r.status>=200&&r.status<300&&r.response?t(null,{data:r.response,cacheControl:r.getResponseHeader("Cache-Control"),expires:r.getResponseHeader("Expires")}):t(new AJAXError(r.statusText,r.status)))},r.send(),r};exports.getImage=function(e,t){return exports.getArrayBuffer(e,function(e,r){if(e)return t(e);var n=new window.Image,o=window.URL||window.webkitURL;n.onload=function(){t(null,n),o.revokeObjectURL(n.src)};var s=new window.Blob([new Uint8Array(r.data)],{type:"image/png"});n.cacheControl=r.cacheControl,n.expires=r.expires,n.src=r.data.byteLength?o.createObjectURL(s):"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII="})},exports.getVideo=function(e,t){var r=window.document.createElement("video");r.onloadstart=function(){t(null,r)};for(var n=0;n=a+n?e.call(t,1):(e.call(t,(i-a)/n),exports.frame(o)))}if(!n)return e.call(t,1),null;var r=!1,a=module.exports.now();return exports.frame(o),function(){r=!0}},exports.getImageData=function(e){var n=window.document.createElement("canvas"),t=n.getContext("2d");return n.width=e.width,n.height=e.height,t.drawImage(e,0,0,e.width,e.height),t.getImageData(0,0,e.width,e.height).data},exports.supported=_dereq_("mapbox-gl-supported"),exports.hardwareConcurrency=window.navigator.hardwareConcurrency||4,Object.defineProperty(exports,"devicePixelRatio",{get:function(){return window.devicePixelRatio}}),exports.supportsWebp=!1;var webpImgTest=window.document.createElement("img");webpImgTest.onload=function(){exports.supportsWebp=!0},webpImgTest.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA="},{"./window":197,"mapbox-gl-supported":22}],196:[function(_dereq_,module,exports){"use strict";var WebWorkify=_dereq_("webworkify"),window=_dereq_("../window"),workerURL=window.URL.createObjectURL(new WebWorkify(_dereq_("../../source/worker"),{bare:!0}));module.exports=function(){return new window.Worker(workerURL)}},{"../../source/worker":100,"../window":197,webworkify:41}],197:[function(_dereq_,module,exports){"use strict";module.exports=self},{}],198:[function(_dereq_,module,exports){"use strict";function compareAreas(e,r){return r.area-e.area}var quickselect=_dereq_("quickselect"),calculateSignedArea=_dereq_("./util").calculateSignedArea;module.exports=function(e,r){var a=e.length;if(a<=1)return[e];for(var t,u,c=[],i=0;i1)for(var n=0;n0||this._oneTimeListeners&&this._oneTimeListeners[e]&&this._oneTimeListeners[e].length>0||this._eventedParent&&this._eventedParent.listens(e)},Evented.prototype.setEventedParent=function(e,t){return this._eventedParent=e,this._eventedParentData=t,this},module.exports=Evented},{"./util":215}],204:[function(_dereq_,module,exports){"use strict";function compareMax(e,t){return t.max-e.max}function Cell(e,t,n,r){this.p=new Point(e,t),this.h=n,this.d=pointToPolygonDist(this.p,r),this.max=this.d+this.h*Math.SQRT2}function pointToPolygonDist(e,t){for(var n=!1,r=1/0,o=0;oe.y!=h.y>e.y&&e.x<(h.x-a.x)*(e.y-a.y)/(h.y-a.y)+a.x&&(n=!n),r=Math.min(r,distToSegmentSquared(e,a,h))}return(n?1:-1)*Math.sqrt(r)}function getCentroidCell(e){for(var t=0,n=0,r=0,o=e[0],i=0,l=o.length,u=l-1;ii)&&(i=a.x),(!s||a.y>l)&&(l=a.y)}var h=i-r,p=l-o,y=Math.min(h,p),x=y/2,d=new Queue(null,compareMax);if(0===y)return[r,o];for(var g=r;gm.d||!m.d)&&(m=v,n&&console.log("found best %d after %d probes",Math.round(1e4*v.d)/1e4,c)),v.max-m.d<=t||(x=v.h/2,d.push(new Cell(v.p.x-x,v.p.y-x,x,e)),d.push(new Cell(v.p.x+x,v.p.y-x,x,e)),d.push(new Cell(v.p.x-x,v.p.y+x,x,e)),d.push(new Cell(v.p.x+x,v.p.y+x,x,e)),c+=4)}return n&&(console.log("num probes: "+c),console.log("best distance: "+m.d)),m.p}},{"./intersection_tests":207,"point-geometry":26,tinyqueue:30}],205:[function(_dereq_,module,exports){"use strict";var globalWorkerPool,WorkerPool=_dereq_("./worker_pool");module.exports=function(){return globalWorkerPool||(globalWorkerPool=new WorkerPool),globalWorkerPool}},{"./worker_pool":218}],206:[function(_dereq_,module,exports){"use strict";function Glyphs(a,e){this.stacks=a.readFields(readFontstacks,[],e)}function readFontstacks(a,e,r){if(1===a){var t=r.readMessage(readFontstack,{glyphs:{}});e.push(t)}}function readFontstack(a,e,r){if(1===a)e.name=r.readString();else if(2===a)e.range=r.readString();else if(3===a){var t=r.readMessage(readGlyph,{});e.glyphs[t.id]=t}}function readGlyph(a,e,r){1===a?e.id=r.readVarint():2===a?e.bitmap=r.readBytes():3===a?e.width=r.readVarint():4===a?e.height=r.readVarint():5===a?e.left=r.readSVarint():6===a?e.top=r.readSVarint():7===a&&(e.advance=r.readVarint())}module.exports=Glyphs},{}],207:[function(_dereq_,module,exports){"use strict";function polygonIntersectsPolygon(n,t){for(var e=0;e=3)for(var u=0;u1){if(lineIntersectsLine(n,t))return!0;for(var r=0;r1?n.distSqr(e):n.distSqr(e.sub(t)._mult(o)._add(t))}function multiPolygonContainsPoint(n,t){for(var e,r,o,i=!1,l=0;lt.y!=o.y>t.y&&t.x<(o.x-r.x)*(t.y-r.y)/(o.y-r.y)+r.x&&(i=!i);return i}function polygonContainsPoint(n,t){for(var e=!1,r=0,o=n.length-1;rt.y!=l.y>t.y&&t.x<(l.x-i.x)*(t.y-i.y)/(l.y-i.y)+i.x&&(e=!e)}return e}var isCounterClockwise=_dereq_("./util").isCounterClockwise;module.exports={multiPolygonIntersectsBufferedMultiPoint:multiPolygonIntersectsBufferedMultiPoint,multiPolygonIntersectsMultiPolygon:multiPolygonIntersectsMultiPolygon,multiPolygonIntersectsBufferedMultiLine:multiPolygonIntersectsBufferedMultiLine,polygonIntersectsPolygon:polygonIntersectsPolygon,distToSegmentSquared:distToSegmentSquared}},{"./util":215}],208:[function(_dereq_,module,exports){"use strict";var unicodeBlockLookup={"Latin-1 Supplement":function(n){return n>=128&&n<=255},"Hangul Jamo":function(n){return n>=4352&&n<=4607},"Unified Canadian Aboriginal Syllabics":function(n){return n>=5120&&n<=5759},"Unified Canadian Aboriginal Syllabics Extended":function(n){return n>=6320&&n<=6399},"General Punctuation":function(n){return n>=8192&&n<=8303},"Letterlike Symbols":function(n){return n>=8448&&n<=8527},"Number Forms":function(n){return n>=8528&&n<=8591},"Miscellaneous Technical":function(n){return n>=8960&&n<=9215},"Control Pictures":function(n){return n>=9216&&n<=9279},"Optical Character Recognition":function(n){return n>=9280&&n<=9311},"Enclosed Alphanumerics":function(n){return n>=9312&&n<=9471},"Geometric Shapes":function(n){return n>=9632&&n<=9727},"Miscellaneous Symbols":function(n){return n>=9728&&n<=9983},"Miscellaneous Symbols and Arrows":function(n){return n>=11008&&n<=11263},"CJK Radicals Supplement":function(n){return n>=11904&&n<=12031},"Kangxi Radicals":function(n){return n>=12032&&n<=12255},"Ideographic Description Characters":function(n){return n>=12272&&n<=12287},"CJK Symbols and Punctuation":function(n){return n>=12288&&n<=12351},Hiragana:function(n){return n>=12352&&n<=12447},Katakana:function(n){return n>=12448&&n<=12543},Bopomofo:function(n){return n>=12544&&n<=12591},"Hangul Compatibility Jamo":function(n){return n>=12592&&n<=12687},Kanbun:function(n){return n>=12688&&n<=12703},"Bopomofo Extended":function(n){return n>=12704&&n<=12735},"CJK Strokes":function(n){return n>=12736&&n<=12783},"Katakana Phonetic Extensions":function(n){return n>=12784&&n<=12799},"Enclosed CJK Letters and Months":function(n){return n>=12800&&n<=13055},"CJK Compatibility":function(n){return n>=13056&&n<=13311},"CJK Unified Ideographs Extension A":function(n){return n>=13312&&n<=19903},"Yijing Hexagram Symbols":function(n){return n>=19904&&n<=19967},"CJK Unified Ideographs":function(n){return n>=19968&&n<=40959},"Yi Syllables":function(n){return n>=40960&&n<=42127},"Yi Radicals":function(n){return n>=42128&&n<=42191},"Hangul Jamo Extended-A":function(n){return n>=43360&&n<=43391},"Hangul Syllables":function(n){return n>=44032&&n<=55215},"Hangul Jamo Extended-B":function(n){return n>=55216&&n<=55295},"Private Use Area":function(n){return n>=57344&&n<=63743},"CJK Compatibility Ideographs":function(n){return n>=63744&&n<=64255},"Vertical Forms":function(n){return n>=65040&&n<=65055},"CJK Compatibility Forms":function(n){return n>=65072&&n<=65103},"Small Form Variants":function(n){return n>=65104&&n<=65135},"Halfwidth and Fullwidth Forms":function(n){return n>=65280&&n<=65519}};module.exports=unicodeBlockLookup},{}],209:[function(_dereq_,module,exports){"use strict";var LRUCache=function(t,e){this.max=t,this.onRemove=e,this.reset()};LRUCache.prototype.reset=function(){var t=this;for(var e in t.data)t.onRemove(t.data[e]);return this.data={},this.order=[],this},LRUCache.prototype.add=function(t,e){if(this.has(t))this.order.splice(this.order.indexOf(t),1),this.data[t]=e,this.order.push(t);else if(this.data[t]=e,this.order.push(t),this.order.length>this.max){var r=this.get(this.order[0]);r&&this.onRemove(r)}return this},LRUCache.prototype.has=function(t){return t in this.data},LRUCache.prototype.keys=function(){return this.order},LRUCache.prototype.get=function(t){if(!this.has(t))return null;var e=this.data[t];return delete this.data[t],this.order.splice(this.order.indexOf(t),1),e},LRUCache.prototype.getWithoutRemoving=function(t){return this.has(t)?this.data[t]:null},LRUCache.prototype.remove=function(t){if(!this.has(t))return this;var e=this.data[t];return delete this.data[t],this.onRemove(e),this.order.splice(this.order.indexOf(t),1),this},LRUCache.prototype.setMaxSize=function(t){var e=this;for(this.max=t;this.order.length>this.max;){var r=e.get(e.order[0]);r&&e.onRemove(r)}return this},module.exports=LRUCache},{}],210:[function(_dereq_,module,exports){"use strict";function makeAPIURL(r,e){var t=parseUrl(config.API_URL);if(r.protocol=t.protocol,r.authority=t.authority,!config.REQUIRE_ACCESS_TOKEN)return formatUrl(r);if(!(e=e||config.ACCESS_TOKEN))throw new Error("An API access token is required to use Mapbox GL. "+help);if("s"===e[0])throw new Error("Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). "+help);return r.params.push("access_token="+e),formatUrl(r)}function isMapboxURL(r){return 0===r.indexOf("mapbox:")}function replaceTempAccessToken(r){for(var e=0;e=2||512===t?"@2x":"",s=browser.supportsWebp?".webp":"$1";return o.path=o.path.replace(imageExtensionRe,""+a+s),replaceTempAccessToken(o.params),formatUrl(o)};var urlRe=/^(\w+):\/\/([^\/?]*)(\/[^?]+)?\??(.+)?/},{"./browser":195,"./config":199}],211:[function(_dereq_,module,exports){"use strict";var isChar=_dereq_("./is_char_in_unicode_block");module.exports.allowsIdeographicBreaking=function(a){for(var i=0,r=a;i=65097&&a<=65103)||isChar["CJK Compatibility Ideographs"](a)||isChar["CJK Compatibility"](a)||isChar["CJK Radicals Supplement"](a)||isChar["CJK Strokes"](a)||!(!isChar["CJK Symbols and Punctuation"](a)||a>=12296&&a<=12305||a>=12308&&a<=12319||12336===a)||isChar["CJK Unified Ideographs Extension A"](a)||isChar["CJK Unified Ideographs"](a)||isChar["Enclosed CJK Letters and Months"](a)||isChar["Hangul Compatibility Jamo"](a)||isChar["Hangul Jamo Extended-A"](a)||isChar["Hangul Jamo Extended-B"](a)||isChar["Hangul Jamo"](a)||isChar["Hangul Syllables"](a)||isChar.Hiragana(a)||isChar["Ideographic Description Characters"](a)||isChar.Kanbun(a)||isChar["Kangxi Radicals"](a)||isChar["Katakana Phonetic Extensions"](a)||isChar.Katakana(a)&&12540!==a||!(!isChar["Halfwidth and Fullwidth Forms"](a)||65288===a||65289===a||65293===a||a>=65306&&a<=65310||65339===a||65341===a||65343===a||a>=65371&&a<=65503||65507===a||a>=65512&&a<=65519)||!(!isChar["Small Form Variants"](a)||a>=65112&&a<=65118||a>=65123&&a<=65126)||isChar["Unified Canadian Aboriginal Syllabics"](a)||isChar["Unified Canadian Aboriginal Syllabics Extended"](a)||isChar["Vertical Forms"](a)||isChar["Yijing Hexagram Symbols"](a)||isChar["Yi Syllables"](a)||isChar["Yi Radicals"](a)))},exports.charHasNeutralVerticalOrientation=function(a){return!!(isChar["Latin-1 Supplement"](a)&&(167===a||169===a||174===a||177===a||188===a||189===a||190===a||215===a||247===a)||isChar["General Punctuation"](a)&&(8214===a||8224===a||8225===a||8240===a||8241===a||8251===a||8252===a||8258===a||8263===a||8264===a||8265===a||8273===a)||isChar["Letterlike Symbols"](a)||isChar["Number Forms"](a)||isChar["Miscellaneous Technical"](a)&&(a>=8960&&a<=8967||a>=8972&&a<=8991||a>=8996&&a<=9e3||9003===a||a>=9085&&a<=9114||a>=9150&&a<=9165||9167===a||a>=9169&&a<=9179||a>=9186&&a<=9215)||isChar["Control Pictures"](a)&&9251!==a||isChar["Optical Character Recognition"](a)||isChar["Enclosed Alphanumerics"](a)||isChar["Geometric Shapes"](a)||isChar["Miscellaneous Symbols"](a)&&!(a>=9754&&a<=9759)||isChar["Miscellaneous Symbols and Arrows"](a)&&(a>=11026&&a<=11055||a>=11088&&a<=11097||a>=11192&&a<=11243)||isChar["CJK Symbols and Punctuation"](a)||isChar.Katakana(a)||isChar["Private Use Area"](a)||isChar["CJK Compatibility Forms"](a)||isChar["Small Form Variants"](a)||isChar["Halfwidth and Fullwidth Forms"](a)||8734===a||8756===a||8757===a||a>=9984&&a<=10087||a>=10102&&a<=10131||65532===a||65533===a)},exports.charHasRotatedVerticalOrientation=function(a){return!(exports.charHasUprightVerticalOrientation(a)||exports.charHasNeutralVerticalOrientation(a))}},{"./is_char_in_unicode_block":208}],212:[function(_dereq_,module,exports){"use strict";var LngLat=_dereq_("../geo/lng_lat");module.exports=function(n,t,l){if(n=new LngLat(n.lng,n.lat),t){var a=new LngLat(n.lng-360,n.lat),i=new LngLat(n.lng+360,n.lat),o=l.locationPoint(n).distSqr(t);l.locationPoint(a).distSqr(t)180;){var e=l.locationPoint(n);if(e.x>=0&&e.y>=0&&e.x<=l.width&&e.y<=l.height)break;n.lng>l.center.lng?n.lng-=360:n.lng+=360}return n}},{"../geo/lng_lat":62}],213:[function(_dereq_,module,exports){"use strict";function createStructArrayType(t){var e=JSON.stringify(t);if(structArrayTypeCache[e])return structArrayTypeCache[e];var r=void 0===t.alignment?1:t.alignment,i=0,n=0,a=["Uint8"],o=t.members.map(function(t){a.indexOf(t.type)<0&&a.push(t.type);var e=sizeOf(t.type),o=i=align(i,Math.max(r,e)),s=t.components||1;return n=Math.max(n,e),i+=e*s,{name:t.name,type:t.type,components:s,offset:o}}),s=align(i,Math.max(n,r)),p=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Struct);p.prototype.alignment=r,p.prototype.size=s;for(var y=0,c=o;ythis.capacity){this.capacity=Math.max(t,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var e=this.uint8;this._refreshViews(),e&&this.uint8.set(e)}},StructArray.prototype._refreshViews=function(){for(var t=this,e=0,r=t._usedTypes;e=1)return 1;var e=r*r,t=e*r;return 4*(r<.5?t:3*(r-e)+t-.75)},exports.bezier=function(r,e,t,n){var o=new UnitBezier(r,e,t,n);return function(r){return o.solve(r)}},exports.ease=exports.bezier(.25,.1,.25,1),exports.clamp=function(r,e,t){return Math.min(t,Math.max(e,r))},exports.wrap=function(r,e,t){var n=t-e,o=((r-e)%n+n)%n+e;return o===e?t:o},exports.asyncAll=function(r,e,t){if(!r.length)return t(null,[]);var n=r.length,o=new Array(r.length),a=null;r.forEach(function(r,i){e(r,function(r,e){r&&(a=r),o[i]=e,0==--n&&t(a,o)})})},exports.values=function(r){var e=[];for(var t in r)e.push(r[t]);return e},exports.keysDifference=function(r,e){var t=[];for(var n in r)n in e||t.push(n);return t},exports.extend=function(r,e,t,n){for(var o=arguments,a=1;a=0)return!0;return!1};var warnOnceHistory={};exports.warnOnce=function(r){warnOnceHistory[r]||("undefined"!=typeof console&&console.warn(r),warnOnceHistory[r]=!0)},exports.isCounterClockwise=function(r,e,t){return(t.y-r.y)*(e.x-r.x)>(e.y-r.y)*(t.x-r.x)},exports.calculateSignedArea=function(r){for(var e=0,t=0,n=r.length,o=n-1,a=void 0,i=void 0;t0||Math.abs(e.y-t.y)>0)&&Math.abs(exports.calculateSignedArea(r))>.01},exports.sphericalToCartesian=function(r){var e=r[0],t=r[1],n=r[2];return t+=90,t*=Math.PI/180,n*=Math.PI/180,[e*Math.cos(t)*Math.sin(n),e*Math.sin(t)*Math.sin(n),e*Math.cos(n)]},exports.parseCacheControl=function(r){var e=/(?:^|(?:\s*\,\s*))([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,t={};if(r.replace(e,function(r,e,n,o){var a=n||o;return t[e]=!a||a.toLowerCase(),""}),t["max-age"]){var n=parseInt(t["max-age"],10);isNaN(n)?delete t["max-age"]:t["max-age"]=n}return t}},{"../geo/coordinate":61,"@mapbox/unitbezier":3,"point-geometry":26}],216:[function(_dereq_,module,exports){"use strict";var Feature=function(e,t,r,o){this.type="Feature",this._vectorTileFeature=e,e._z=t,e._x=r,e._y=o,this.properties=e.properties,null!=e.id&&(this.id=e.id)},prototypeAccessors={geometry:{}};prototypeAccessors.geometry.get=function(){return void 0===this._geometry&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry},prototypeAccessors.geometry.set=function(e){this._geometry=e},Feature.prototype.toJSON=function(){var e=this,t={geometry:this.geometry};for(var r in e)"_geometry"!==r&&"_vectorTileFeature"!==r&&(t[r]=e[r]);return t},Object.defineProperties(Feature.prototype,prototypeAccessors),module.exports=Feature},{}],217:[function(_dereq_,module,exports){"use strict";var scriptDetection=_dereq_("./script_detection");module.exports=function(t){for(var o="",e=0;e":"﹀","?":"︖","@":"@","[":"﹇","\\":"\","]":"﹈","^":"^",_:"︳","`":"`","{":"︷","|":"―","}":"︸","~":"~","¢":"¢","£":"£","¥":"¥","¦":"¦","¬":"¬","¯":" ̄","–":"︲","—":"︱","‘":"﹃","’":"﹄","“":"﹁","”":"﹂","…":"︙","‧":"・","₩":"₩","、":"︑","。":"︒","〈":"︿","〉":"﹀","《":"︽","》":"︾","「":"﹁","」":"﹂","『":"﹃","』":"﹄","【":"︻","】":"︼","〔":"︹","〕":"︺","〖":"︗","〗":"︘","!":"︕","(":"︵",")":"︶",",":"︐","-":"︲",".":"・",":":"︓",";":"︔","<":"︿",">":"﹀","?":"︖","[":"﹇","]":"﹈","_":"︳","{":"︷","|":"―","}":"︸","⦅":"︵","⦆":"︶","。":"︒","「":"﹁","」":"﹂"}},{"./script_detection":211}],218:[function(_dereq_,module,exports){"use strict";var WebWorker=_dereq_("./web_worker"),WorkerPool=function(){this.active={}};WorkerPool.prototype.acquire=function(r){var e=this;if(!this.workers){var o=_dereq_("../").workerCount;for(this.workers=[];this.workers.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 Tvqk>Me`x=|1BCcppKQT+sg8V7 literal 124401 zcmV(pK=8j?kiB>UH-@7ds2xhjFmaTDt_XkM2~jZ_GN!)l6e-IOx}rE=_8C+T)9r;1 z=r#m^=sEjzvxja#RaH$)Dr1O={%I+w4h2yE1qp(Y8Qd)?Se}(RNh+a|61GGUkbHMI zAF!29No$0YeidoORS`MimcxuBG_%!R3-^+EoCD5n7IMlNw3FC6ZOb(LPNsay|o z7f*-{zoj(uj#4baRva5%`U?JGUkZXrS{G^HTgR4QJcR5y%_X|zNPo?n!Mv{v*VdBL>~(63u6BSD|#s!hFbSw z*por4+WquOEkprF@Q=ki3zuIw57lh2YPc>#*qR>>{HWix@xVwQ6l$KtJFGjzccqTL z^?n+Pq5p@oJ$PVvdP6J>>XxPuxOs<=%UC+;jN`gv^BC^|8OTlf0a!#-tYU~Mw!M1P zDK2q~`BdNPR~^+q4}Q9`S5y6i*sI*E72tW=rb-7){%1DpJX}sM^a1_kTgD=C;*N-1IeY@v!(pFn*!EeP|Q|qx21|fz2#X~zYHX;Qoe|$~ZoeRItE1_z6D8qHa zx!VK>b{eF|jqX}zet)0KY3#qrXgH{nJL`YC%(6Rg>%R&?gI%IjoGy_H$&#fQ@y)#@ zKZ4#}fBCXjmMoW9lx3lz87C;L_CNF0>U5S)a@8nJNOq>@!-Hf~39GC`ZPJ`W-U0&Ne;veJq zBpxwmI{1dn-l{gq;d*3$JrEs1Qvl!|F#Lb7S(-bEWR{x63mgz^X@8fW@RHh*oN*Aa zMjQ>bbW3cGH{gbj-}k1ye*FqXs zyDm{OYA2v|ov<9Ic5}Y zSTmbenlxBpj*DfF^L777s1iYdt1@;*I_JBrv=IBBu*WUAA@71R^a} z=LWVL`$ppb?@g`R{vQAcsw_#V)W#{>kF(nWKvHUB>~5B`=?Z*GUx6_aJ_28;mfGfR83KutB)<@9*c!gi-e)mg7Q#a` zBO){UArqNakoF*m{*SL%XYYNk`}OOd33rc3FhqitNPy3vUKs$E;A07;X01jewv@9! zn`MHmZy-l}HTpH{{v-Nl#+C+d>%rpXIX;|G}86`}d|2 z>uTD~|4onvB@vQnf>0fQ%#xbQ}HrZq?Pc)^zcH^Z?Un!AcXiDJ4Si-h|d4-LmDrTup6s2OR~FkhP#bfmA2PsegzQ%1jH?-fd4aW z{(nDJTd&$?=1Eu%YuEyW5O5W>MB2}f+_wQPn$)oDIPwxjk+nMio(o%H$jG%qw$Qc8 zQt$>4cDv3uway(=<-Zu_q6+8}8%XpEc%%eYd<7Sqs6?X!9{Z?xvHnk-()jTJucR<> zCdhc7ed5(=1MHX@bX>qGk>A<@^FQWqHi$HPE9R;Dj529uG{Wb-pa2skc(K67v({9e zaT|sCG&U6?>H$@SLGWTRH7TP(zOE6!Y_Dk;WyMYv&y06*#p`0*_Ay!OERloidg{;t z3f-B*I8aH^TUe{2jH;n_PzOZ0j7tvBPaKBQDu};L_R{MinSZcoxBA*$VVaownJA z3W}kWFuK4h9E5o`BQ~!PlaY_|pq8!LSVQ#^ASli7qCf3%1`gJ9qMvu$6KiYi6s>ry z&3R1mjx28{P?CpgrHC6ouZL}Wq5?sH2(cErEZed%cqQ1XxCwEEvN;lkuQr7dX}Zyg znTlU{q{lIK`pSJbABGF(x<;UtuV z%rMySH++%Y%v*vBEWAi4EOR_da?HIXt}Skz10y$5CkSyas9EHuZl!2YuD>6u+l5PQ zHlakvV=S{PJQl%*~VZQ6BJpaMu044k&oX*HEPJmcj+HEbwgE6o?U)?M!7^Ta{) zNExPn0p2!O=0Y{zWM<(anPiIB3suXhv0HK~YiYdk87RsysTCCj0E_@~wxw5lev>*Q zDj=cXz$=7)Sw9V}@F~Qe z!3-p=dTQ*|E%cUe%`6bAm18OgOB6p2?5DjYwXd8^$(@#Kuy}l@97O%<3ClI&4Jt73 z9r8+bU4e2%uv43SM9y`>QjrCnVG$Gy`EP&)7r$h`oJTKyx}hDv>}XqAO-o{JOJmd< zqSmSXubK!(D5VZ35%+kO04uS^F`377>S#GW3-r)lKG7dP>JWT){~2{JDqO1v-C-QQ zmj)75Lwk-4vzpHa%4Rf0A1;jvD`)9erAzs&41!6>XdQ;563+}PKDGwO1Skw;2 z6jOoYNFf{`q%j^Fe^LEl%=-7p!q!o!z2Um1h~)Xf2oj*SRQkKY>8Nb?NdR#EdUgjr zs+?k8*=SP>2x-Uv=$qp>)S*%L8qK5Z>PweDgJfI2~EBP{mY;QGc zrrN~JJMvk({WAgJX;c-W{4*0QHWF-kszO(@-`+)n*8-wZuwh&4P5Fwi$vh6Cd?&83 z@|C&5Lb!r-Lg1Va)PJ{Z*VAFFGR+!FsE03Pz;@YH!nrrhsKu1eBiJn@dW*~9i zkYvpd^s7u7&{92$K;3VkAQh&?4nqkdh7lFw@-3@pbXU2*vH@JH76coFAqGVlpr^FD zBclQ^?F1*ZE@om{2ZK_NomL>&FtZxgP5!Y>ScBe5HKUDJ>=$|NJwr8lyP3iSc*z&lB_pP3Iy;}@klN4{3 zvS96LL8=W%q4skM<9b*)U;-sthaV*wX;-;$~$I46xx-*49^7) z(J69_I)jP!hV4ccd`FNRZZNl8>&T>KzCsBc8~St}k}-M3D>bau@w610{IRNkH%%-& zO@H691?-f z0vIrypQma+7Y6sa+35}aEUG4(sT)QmmX+BX4BZAJ*bDknMv**pOo67B7ndhaar#~h z9tN%3{YW=3if(aoERX_?xsg6U;+K#7HUoe+^PP@qcbg3qX9bcSkiUjJAAn}D0>g2V z4FK>9khY8X%MH0LTNg_TJ{K6S>Di3bGV0Tt9;csKaGlt}ZQj^rI%+VCLS-J`c$ z=tKc+Kmnoa<+6tCxGYd3pM-XrlejY}glWIXgNM5liyYotsDfyB=? zrA7O-KGNn*MSQ|5*i#lRK@2Zkma-}dJ%?8~JCTxtWF@JH0COT|RU`>djL?hEJr1*k zp*?arqa4Gs7If}<KXb%i~vLBx;$3uz9d+H0^kyn>& zi$q`qxLe8|F}uXVC<@$S(?Mv8CmGu^{ygFKi`whPu@^N?h)vOR>v?7(K_URXAcYMK zQt_oAKuPr-y`6YPa8UTM2AV)$wrG2JUeSwV6kGI1u|5{l;6H{1cRmKiV%_P=v%B&D zam3U5HRQrmvv^Y>_43g63%A~Kq=*#>>cz}USppIt)nAV}@f|Nir7eW`V#lQ?5;Az=q<-&*Z=kJ`z+^bBWtVRN;g zsC`B4yHWc#Y9}P|*i7vdX7u|S#71peY#`&et=iA6+E>-S6SbdHweL*rJ5&1{XQmL% zkWr7qz00=!W{SgP1h(2YM|+_k;*($GqJ~4AQC6QoS{NFNNue6#9b1@`0~|&|!93Z< z9xLIC=_W}b&pQ@@;bxEYvl#$!C&SgXSVMjdz^j;wJyV@>9AvQ}M_0V9|GQ{k-c&;_-oaaR!Zwjr}= z=+~1L`G|2C31M8zwqf6yXdYg!AK$@Y{Jw;6Y)=$>wjH z>(KL=3Y|KNDt8L$)LUo~6q(^>pk;6i8x4N_&N&b3;J5D#E@T0QY?Nwhzb!B#)c~YE zSg0=&w;g?^H`i|dBMO;bTD?y?DyfcOQRJOK3jHd)AU1U{5s0k_@w24k!t#q6nghsg znAL>mU(8w=L``)T?xg~KiT=7osr zyK1hp7hjKZ4AB1TD?PwYJ?7VZu4_Z%4K`72w869t|Hc^N$1cgEwx=y%_dp|}g{*=7 z*eQnI;n=p(MsB!*D*8K^fVQVskxh^RAj23f0RTO$5t1yb zXB329Pvv0@FWmZ#Rcf?Dg{`M18k=WAD8-bDig%I`kpwc`Zf3psVRx}GSJc7}R>VGb z00kH<h_6b8z2fGfFME4hh0 ziJ7PTadRoeU9uiJrGhVT{9^{P5z+$WOH4{)sYUPpfP3YgCSGoKZruA)tP+Gbp8M^g z?W9RAYjN5sQoIJ5Nf@LjM{Jb-88O*b+8ZAJ8x9~_pS#J~w}hAD+Ijl&{P&=%APT;S zvR@G%9&{XbAzhvIP#VTbFK$)%(tXGz#y<^%vdn|O@trXHN`036@-sXBWiYA~CEsM7&c&tKt_mk+n;bWvP^zl%w- zNFTrkMhoBx^G^e2rb7AhXKSvx3*Ofvz&K!0ehtqX%b40wS4 z+Uxp!)k}}RY^wAb0fhL%Yc34XS=pW1!3G}wd1Z^K=&@JNo|MRnf;<~gb#~i%h=JZm zY+gEPq!foRKz`xV2a#b()ik!>x2MD4gGn% z95mx71rYkp^*-#19_M3k;~Is~|1l1{DWV3Y z>H#H!Gr+7;7-a@Xb|H9eOk$Hb+7l?wrbY9F_O}HVPj+Qf5Yfw;25ftv8=KHnM(NPh zbWLHZhv!=($NpcPd$6F9(qH$PUn^>{nAPPQh=G-u_hHBGV)%!k;Qw&_B$)w;bHz-2 zJxKz)G>>;QFjsFDB>+%CdS8J8SsNQbw@m)K-N!jx6KJZPNUp|E-lRzv64KBdg+f{; z#RkAH`o{eFT>d8S+%&bMHCfL3A_*FcvhX~7R9j0`Zaqm|FosRR)`F`7N_ zlIl8v7zRK`I|^f_C1@;!*{DXg)S}!?5uKkHCI6sJS|uctC?GMI{-$FCYK{%%#f*}% zN;QH9kC9PaiA9^fHuJe2kWDl-pZS+wAARrB8NhPieU7h^2Erg_ct4{Y4T-P~f z+es)8UyDQ(;>sQEQfDCN=BX#-4Qv&z$;dFk2m9Gk1sQuqH}mjTZi!^)<)I0`Fs16a z9!7bD(cDMT42>PVRNV73%`lgv+n_BL!*VH|RpsnzHlo4?#X}7(+;WL%fb7n`F312k z`)p_Z;k#ECql>-ITc>VzG%B3b5w*h*ZH7bN?S@waWQL3jTU*5#cNh(bxrA_$!x+a0 zX^<488JUJKQgLIgAKQxz+{{O+2?feMey0~GALL>71Z>SF#bk^2G&jFFh{~x}-bC|ep|r`q`3Iev zUCYD8wn47@1f%BU&(@DU<@)+ z86$jzBbr8q0L*xOe&;0Y{ziCkdni#NdRfa+EmO$>a`xoPtmb~2j7O* z(YG?Z$EFc)nuO|8K$9pE(3~=|ah`UbZ7{N$)Yy0&OlcWVux4XP(!waXLFbA6tb7~7rUgEjPm#h+r5RF-27I+*QwtO zN>)~M7@%}`CtwF=*e(~}hn2vL@cmZj3nVn}&|A^?C@o!Vlx$DZJtR@WFGvILN{mRj z4!v2QMczWfz&Bm{T(0n-KU6mgvXKT67m!W!e;BZ15Yzz|@@)W>I>AV^mP?;mH9Qo5 zC3-eW2|jAoS|;A5i--i`ZBDit{)tC^QL1g+&i6#SOCABU#5>_TO^G09VHiAlKoo-r znn)@bIOSUd6JnRx=VxecU|zr4VbU+LZ{xsKRx`D?f&u&aW#U^>aYCe#T|qKBG~rWQ zpH!Z1nOTae8#$W~=Yx^c(@3)dw7kRsgX13%>;5bHa`t0PIrH?Ko|o+!wA$WSun^NT zY1>;Q2}oum3|ZYRt^6UKS4gJsxsBjJ4pk6#${JH^UW2L8i03bxCkfk;`Z)bHz<5ZB?R_IVN8>E7&oHEytpU^glAA+{HnFjKSQ z5)ALTkCNcV9h>T+Qhk5!nl`vp1$dljQ{V7s6pD8|nPUgY9UAoDdI+B|!r;q-l}j%^ z#$`M6UJ>m7S}RLCgt<9Jqy67AOK9G+G@HKMb<=ruof{nEaQA5V&ft|QzyndqDdlr$ z@x%xa1744%){T$8Ayg@Ci;|86Ekz2qq|L1dm4Pl#MIET0ZFe&fKBE{l1>?2@lb@N@ z{72%8DkLQs=-2_n>$3Gxkx9NZ<#Pw`$f%qe4>Z?f&^5+p5LejI!zbdd!;H3jxD7v` zkTD@FINQd~ZL(un54ox@`<_Z3U}H0Ry`3^EZcGQtIH3NnY#&&YpVA3C!`wf%V32t1 z7@=RV3+V$t&B7E#xr-EBFhOw{o8ZuNYum}#hgs6e4GVtL<2G(^=6*|O-*ssOqd`P3j%K6^VJ75c5qf0~im-~j;L2l|&kaaeI z@N(k=ofXf>Qo{@JS;ZC;+>7!jT2$o=*|QOg0+DQ!hUwEGqy9 z&CSM=CqD(l^QLSi9Q>P16%*GdE#-`V|u{3cvZU`R-tsPUFsh9UoTZ^UN_SO z<8;8mGe+PA4QK@jIU))m0^gxonBQN^|LK3NXB=rP?=6@k(4l)YO_DVS0hMkBNz9X) z2udRlOjke2uYKoPc~wH+Vz)FOj`7pmOtA`n27+43!BRqSSY~m2f`@@8DZzHp3&_jT0<2jTEO`_q!_O0Yw$rxb zT5myn93^&89z4PaVH=rN7x!Gyi)fW<%n}dmG!BaJV7#PYrwu)=LbcSY z_{}>4GeDumxiDyvWAdVsm|@)bAqV84^V@z>>9;0DB&1O(wZv{+f_Bx&qzv7AtxZ9A zeFLi{K_@b0VI^^o&%P^3k!)d>`R-U@;XpX0nGnnRvx7PH`t7Jv#R095)NA^Srov`? zq^sH$dWuo)!L!U+)EWr3oKYiCfdL=%%%+ldt1@C|Kz;s@qNRieYY7X zNGJ~RXI!R2Qn?mS_Z&}H3G^7sdY%rV*JCK7srA__MNAh_kTw|fa*p;*opf~35<#{Z zVnslT?1aQXSiKG#46D%SS1d?NNQc$UybkD#LGiGul*3G{)phnz^E3d3_4 zNv%}9oc85qz@~9%$%FIa1nR=CQU5>gUFi|tsXt2c2zLVH3Zo6ruL7?4%Ui8n>zB5d zNsKE|xf*j?XNpuTET+2g6aS5@yI}g6Z7w+qgjI-eu-Pu4z-O6CGh{oeFqa#my|{0M z#Mr*a8AGv_7r-|7vWXQ$%fO{tl8_E&%ZTE!fvy$TYa^6>3*qowYN$3g*u=O5*zEcu z#YMYgn|oz7-Ic2mO`@&}BYAZv2zg=KUB?IdHU#&klR=*?F5cN07p)@*Qcgh<&w)%I97bALPUFHd%f%DO22Wy@^hs{xaROPslvvjyNCX@j zk|==Mf3eB!4W^U90Xk}a1A2#C6dF4!(G5Uu5LUMleYnD+8z?rVtX(Zp}|aH#*kK2tt2Kb=+D~_^v4aQnOlaDUu<2wU()EN-8>F zfeeWqRJunH%01g=l1eCd7wFoXZ5hcfRB|K1D0~kY(@HjT{&$mLf2C}f4sHPW zseBh=1uLIA1}~^Tmen=U+jAN*T5pd?x$I`f<^;doE{v&Y@Ah?N9OlY|<`(8x>&h|M#ZS;3PnzR^w^+Vx;x&p;GQ`ZV(zB@02n$qe0hAz+7tylctZ=kr z#;I}+PF{U^B5S0F_6T5fWxBWQvIFJY$*o2hXDuoIL#bRQ>>vpHPH%=3pOrwH2{S`t z^wT!oK*(%C*Y>tlSKBS+F}*1+zxNr14zEp(=n=2MBZqSh1b(&(nuwA{u^5 z(=r-Evr`I(CZm+Y{^obEMxszm#xCOzlGc zxIv7uS8lpH{A8<9e=b4OOGUq~Yj9g%BzBG?cA*3vPZeXsDlfE_d)uGhnQIJ950O9> zeJme z!4#nYYfFC2<|s?mE0V9zMwZbt%^hcI;U4>q+C`VTl#`@vI? z29PRv-}&e-F;rV`L+|1#8Ml4pZD2XTNYvbIGwgcIN+A~Er=^Md(7w1Wpu*>=bc>R&h z`Q%|G-}k!NUFB#9AMV+(Ta@Ln-?Lqr@th8VZPesB$>E6;{>2Jp3%!aqcG=O6b#7x6gAuPo@3LZXkc&J-f>OkiY!@|A9h5yv`8}<|SNg#Rl{>O~Tp=*~ zKmR`i<=UMbWLDgZF}s0B0?Fx)-I5`WJcmy_NXDT{NJc~B&FuD^Y;*`V8oGkIvJDUY z$vWLnMnhonfk?#bl}F4P%ov7jBnAM6QP;!!O*JaylRtwG5*Lvto9&Fec zHcq5jx=;alP*Dar5*=4@2qi1b+V-57E4(i=gL4yYb@g z+4-0w$&K(3&ziYRV|}Uu=O<%iJjE*h8)2LMA*0DDXMhdX!CW4ol!yD4suqe;h!93{ zVPlwFw%HXY!2Hbm(a|k|9}0nFsv|OnBb0wFNlVaL-xL>vAW46K^n3B=PoOe{3puKw zN0S@j*{WaML+wqgeh>dnQQJ#Peo9-)d;Hqbb~4(eSLah@ANmup5rpVR>%OC5WP@5Q zKcbQ2fs}^ojj1P;2fYH;F4dX}$21FJa&9E4)ng4W|#-Y1%)x+fjkxlTi=U z@Ofw2sx#^?$VJeqXmmiM$Dt5eFSh64>MJsoXo zBZCV2nDwgP*C%rk$;G=1^Q$bOVon@v^l z8Oy?ZlDilAZh6nfU8`66`Wc$~W6T06E114osu*`A9^NsUJ!3Ody^r}&$9F@0Q^bVE z=?QgLbZ9TRzr@|1JJp(n#;(gsn*&_nsY{v|?q$=JY`RfHKQo3q*0E{uOrCDN9EgnXhQxBGs+v`}=+ailcskzuF%% zh)VxK7SeflbBQnhfa-IK3%2xIJJw&PIY07Zzg{UI6bJWqtt-$W{A@qnFB>uTQRjn4 z=N0-#S(<)`2gFS#w_ed96vsI<^F#8&F)=|p)!)FKir*b2wZ=AoUY%r1o&PYrTfsYl z4yL~@A3dMz`StZ#G`kF2q?_dLL2I;)drhfXdRkPT92k4b5Co%r1p#Hh^D8No>C=4W zQh}rJhwYyks?jWQlTeNFUVZZUOp^cWA8mszPVS9pILwMgN`KBx=GlrDKK*`b7pI22 zT{+@mM*mqUQ@J+Uh93eWU#{}s?GnY1w`)fjXLnE$p?ulHF2@Y1XyMvu8zRqcOJ%QoGurmEwKQp=6@s0gefPtNsZ@VG|A*5PeA$VU9pmyz6U`h zd;2#+=cZ4Pw<*+od%Diup<3gPW_9B-;hI7XLNPyRq_LWmVoEG1iuIAQi6u@wd4{5S zKh;e)-2)wo6MTGQ+{lUTQ0^fZdd7pw8%_-1h0EeGwolsR7~f@juzPv~@_;W?j0 z3!|hJqg)Wrkpih=MtXle)p(lX$q9)YK+0quNhq+m3^8c{t+Z5ha-vK4HOmM<$sJ|F zcj{UYG`@D14fcU&)f0VlKViQt@01j7Na%@{aZ1ZSx6+wZq>^9|6M?;fAC#^%FBv>V zpO0k|0TI&36!W)4p$6Zh(qMB@MYc#~klY-@!k-MSU35Qgfhi;7;j85In|=XRNuVTf z&+MNBx2T1V*4<5BA%-JfHkWePLV!A*JH9@$f}20CV3BOTnC>Q^*1KC;Dk$J?h&(VO zrKV#wzK%qvtvNH{o&XQTuulcKl%|g3n81oeg^%fy7n%?PcyH{z@eRE^KWXh~8vh0q z>?@#UhY!C=zqaW@Eb3wki%91PRLh3uLm{_7ke`p#0oe_)7{m|SHIfFGw2$c4`=-lr zAZA-2ZTqeX52Y-#%;_hSJQ}5g7lY|Eg}+&duS7#y-8?kFZy+BON+d!(RkNMm4_O~t zU&a40-@N^&FFWg|S#*KT9GPRU~d=_c!cz5LwaI^J|U)TC_@sN-bX?e_(g?&@eZ_%`Ep(%H4+EWz>@~H*0^(&H%(VB(uqiB@C4 z(}c&P6=OLt%n;MMs~r%y$HP@(VDrM_2KXBVm_OK4lonR^9VD10L1T?H84@nH{sE&G zux8>3{G0bpZ@dv7==e}4p`ex&v_&X-T`U5CSY zd9N5F5PkT8DU7AeD?8g6=}%<=jIq{2B@HLc8Qb04rIugF#PwGmuk^+HhZoRJXNc!g zg^uXgmuehVbMTNQI$0M%CaZN4Cf!lxlp9t4hVw9g2!~ZVYn+}R&pFS+c@^uuuDP+H zIVTuqS^bJ*&BH1P*KbZ;W0f{mdC%Wbyf6db9ISon8`rcz5;m2SRI}wY#`iuiS-xwg z*YUkH$2&vL12cOQSn+s%#k5VU@K8H1(~6dd8j?s)dVsvWiXZg>=!Rq^so+5hKS6JkcOSRw)Lr?aXUSz)v5)ZQrCq` z171&H0&HxmyhJS)UFYT3)kVbM2o$?e33F~n3?$slpEV5;UoAa=X&(X{wkW5}e%6=t z&`NZWaqP=>6lQx7rDhuU2yD9;zVaYQBs$~T34?95+>XFrT5skvQCgc>Q&}$`fs*Up z)a1_WX?qA2hN!55ZVptder~rclNIJQ<8jXsQu`!|y|z3JV?H9~n1eHWgvhcYiB5(k z!SyMeV3J|={>2M!Xd!|6OkuV+1XD`0FV!apR7<)IjOO{p%yfjA5iY zZV*Q-=R(_vx^<~UTFS9rBm%=BY6 zZf7N|(I9!#fY?w`8}!O`!7_tRLjIufnMnq2#A1I5zigErxslzLlyS0E>tG`GV)=!g zl9__Zt63#{_;#;coGVr;07Z3_spUJn#)M8mpD)$p5jz-OS2a=eUcspSj+(b)1b zJ&AAcESIJ>VLr>*AJ#~TDn|%%vo4^*I=;aLzXKmyZJqI_{KV+O-G(NhbgyVPNeJ|r zAc^>-UcYInzg~|MF+z*&ay>bXuNS)5yqkO@*bOndoEjExsw9GN7smmtNZD-#Ih_|D zsooN`2l$1vThz5Q^O!YZDl&+Y_Y3X`DU3_(_ILH1-;5meMkQOucQ*sx?_e#?2h3_Q z6^*uWU`e()rlxWB(?*aMajAfVG1i*d^Cenm>70A4da{}>P$-1111=`<3DGJKh{??> z*VF_qT<7kGm!_@fv*p_aBaJ*>!=DLJ- za7FxhZ9CRm{-A|0i3rR80p*nXMliH4T2od5>ndXPzq&ZGxxEJ^NUeVW-?|dC3`w%E zQ&>D8lM;)Q=Nc5ngzHpmrVlzr)=Yjpgckz z4KO7z8ZjQyhg{WPBFW7kE6HZI!>%O-hteP;MeZPgnn~;GnP4O+WuvNxP@HOx-Sdh0 z*FqtTJ`;5q>$M_$K;mR1X?;cL zl_4P7ySx%WW!5HmUrYO5g=%L#{Z0P~2;FH3W<`-m5U~;|p3{$&(-O~(rW&kjVd_vS zNR@AkNI^P98I|NvmP*z4mN9)b+p#uVmIKT-&3!o7@91wICS|@De80SQD`Qu>!`|%C z0C%H~K zBLl$m0lObb)7OHa#bx2D=D>nKTABInC&k_fkh5HY{RvP(%V^1y1!v< zn;-LL!r812*m6X7pyXH+6=C{Xz&YIfKx>5T4hU&k3(fxQRAyi>+_*C*wM=??(V+3zY5tO0|*r&#TaW?l(_Qin8kp* z3}O18s_r^}(4d=Bb!l!MbZ#GXZWuI;dCC*P(if4KWH*s(#8Q-=2vY9bxJfZ&b$*^os-v`S(!Hd^ugYy7@_<|J6-yJr}E`R*AKn)_y0f>JRW=OzxbuI zyrp;g>k^>2p(eaU$x-z*dZ`j4mXlwe-cjvS@-q6^9OHFIF03(Wkd04Qh>aYNCvyM( zsl>~PoD6YK|F3^AE&sp&9%i9o%Rj9c^6;;%EJsqJd~<)C{wCbN&$K;X&prMwRV?As z-@n^>I}d!@Dy|}=zP~#{TFA8P{X4!t9iR5Vx4lij$7-Ap-+eoG#{2c)!iBs%qrcnw zt)u;y>-G6z?Mv0H_@dvW8W%W=#o^m>TzC!LPJ|zN>A>OYQDG|aG!^m95sYD)$H;xn z_*IqbfuJ72Ba|AfN=EFucjaBP)v;Gq_R((Z_Axj#HT1$7Q$P~dB(Mm@g1i6n_`X+? z3p6rbI$;H0;MsMf!x+os&GyEy?7)7xy^Vc;?s^~JflIMDjI8tr#TV!GO1Xjt4H7&ah+n zRk@Q%C^G5+={_P)03a!}93u1=43~trHtjP%EEW_jk|Q%a8Zt%5nO>^dsD{+KE~>@X z5N7Uq$C@5Jd3+nLLnDlAo917TMKXEsg;3z})qDST)Oh0II`u~ch{Mq z0_6z53%56)XV0W%WUVZMN#l*cNoWV=;!h9Rq0$v?)#OrwEF@7Q?&F-t6X14FNWe82 z&bhugP&Bq0f-=>$l|o{vQKzd5E(;_t=M^-mbX96z|6bby7q?E*e-bB2G_@qoi7jCp!VUB&PK60y!(1?a(lDn^V>!N> zv|2)|^=g?lV~xyjLrZv{{aa+*^A0-)jmfJ*%#3&pdpw@GbkZZ;S__=b-opVj{ReZE z7ojK;;#Cu9pXYVb0uIlxw29-W*Bjfy`RT%CDaW|l z^V)}}YI2MWBKOL2RbNQr_qzmPCTjQs78!F}^zqP#%&17rty%@?E=OG3qU+OODk*(3 zg{VnA52Y?WZ+g~kP%bSZNtN5A&lGkB6^r7kESFEDwimLw4DE)X^QyBR%`eWn=A1>7||5Z1B*Z)+1_3M8X1Ek;4w$RAQ z;i$8i=CA2Xy6WxCer0rn8oH(@HRws%Si0Wa0s2&*M}Lg@ar!@gvun5Nt;m9V;o{b9 zth;17++nNVI07vcy*YQ}z7GvRa(usieS}E|QS}~k=qJn$e<7C-gHoQSB7m;Vce_Zj|6>0W zi%vM}=gp}uKc~+htG8X$hFMF#abkYStM`Ym%)B?bZf12;rbvGD)WRT5CBNUo$7cK= z4j?z`$>(}D-y7F;*spF%R^=1q|9|)G>OC8v$!KrW_rh8O`khE)XeC=P9_IAX7-quY zab5h<9`%TP^4k&Xzr?J0P|D`^pk@LYUNu|pI}_H^E=AthBABiHfA4+p^B1IrEdn{) zdi{kP&+62W@-dJr7FNAej-v5!;KN5d>ZNo4$=hgOt=zDkOGh-GS@3Ui)LA!m$&t+J zN`FLL9n}8lnP=7wqZajuaU9P88DGpEj(N4$P!o^s*eg#v%g%ETyf@I+R}cgXrc$o> zNN_Mu%gA~Z3K`O1>jw>mkw~Krm2&%c`p3VXydF#Sv0T>jh1{2hGma(s4#o!DmA|gY z9J)u>yW;7s;*9ZqR+;SOgomU>zk))3*LNWABhAA<=_Qy|7C1o zdi{t1?7Itvim@`XdjeIluz9X?VKz-8hfaBGO%dCBUwo&oXc1Rq+on-ACzwkA`d@Ld zPD7z-2vPmp*oMw%Y(wy3EiwSbs~AfefW@O&=T8H$x;!zz`Bw1W?7zOIjHTF|A!gAZ zr{{_dK%r^hEw>M&m~Hs%$myifpWl|MMwsoQ5r+H&P!6&-!7j#`c3cB%XGB$$v=)tO@;v{;I&a zqlZmMIz+3Z>-nOa9j@Wdzo{56s}Fv^11BD#yV{F%T!;vXmV}m6oMQus{V3FO-~rbG z;a=Kf%~vP%7D*yS)aQ&7Vl{sz9pVq&C3UgOx1+oSTMf^fw#}02q%8qP^>vX@dU?9l zS7kXDVKW|wi_RAhJLnS0j_SfcKM2tO;-I^(YJtkPbWjPMzW4SE*P>p)+kQUAxNz7Q z%z05Os`i$y;YRnP>*O2Da}$dDPanh%+X9+5~~N#9k-6 zB;!%C8h-dk!zp%C9(NWrdD}Ry(AW9u4jfwMGy!Z zHUI$onw|R+=-@1SyLUuFKWJx-`v*!_~=Pib{1w494jE(8s{4(8N=BAG8p(QtZyGxc_p2No|j`1wz z5piP}v@DbdMubuk=_N!Ja+z_ZWEl{ivp@Uc*BN$gQ`7{AwxM98=N`D7U_488+v`$K z>f9|T$0rNLR^E<*ns@|6rkAm0KCc!AQS~jH8UpR$Qo5ud!lEXo8jE`^t3?ijy`)R4 zR<>@fZ`{S)sCR~#%9ePhM!~ByEpdYK3?R5i)5TrQ1Ui{g3_?{P<0>1iY4wv&yL#U` zPem1MSl^LEyx(`{Yo*_ zj~Tiwu_Xj;>C))X1N=M&0zQvUS7=Y(A(O#~QS@vk_%f%z`VaR?M|_b@c@Xc|@JybljS`eV?t<>Bg30 z7;qoV%?j(^d@E}W7r@2}*c^8kVoiWHj7Z-LaL;E%TwF<0%DAh9$73wp+;ahW!of$V zozX=Fn@b`MUDM2}Sd1ZaAW>e(V*pxQp-PQIp*n)7)|bLoJommet%S7hbg%6{F>O+aWfr|PS8AUTPPRL+;SZ0UWk%6q)dov=A(oa20$%%{0 zSp%Zk-!7h7IA9mK`;d-uMg1oOoY)T<8dkNztXPl`R540Ss-$L@b6S|HI`%~P+iicG zL7HSf-K)NPmh?afCzd%g`I;ft8t<%zxQ`+D%o7YLjMl1h%3arhpoqpC0|`mG+QG_f z@dhDE{{;A&TqoCYewL*=CFf6vFR}8Sm1;=y2z|)WX9F`Qqq*KruuhFMWl9+9B6j3F zo_W#0OAR05mP&cV!Sn~L@}f|o@;hRF}MCaL8c2MKveyJx-z z`NCWJ+7H%|XI8-ycD+0913_*uBSdI+tl4aQ`h?sZYI8App&ZQD3<#xBRm3ZptD;h| zDxYW-_l3Yk_rX*K%XQ=06mX?2Z2Y9ol2#TpDG>ew?&h=4C9Y6^P2H?`n7O#4j1v@E zWcw6BPbvPCqE9*7Q;rumu$B%yYo$;4iJM08bR`0ccU9~oPBtS{RjS35{ShiaSeRW& z#RUPe?9g2b&dlKkGL)I7=D=2-HLKD}L97Hc#giIMl*fgGw@UTL7s#d`Yf$K|d zd{9g_@4B6|LX3>(>Z_G@Be#ocKo6|++rIP`(qMx=biH=e;pO?>^Z~k6WvhH&+DJ@I zyBK$uLFVWK{1affV71is69f`f8<|c6}e?b-6_L)M%gH?a|a2jK1A5t#O-eu#Jo!9{k-K zN@F^>5AS0K>ClfuuO-~wx7M!1e$ASkMpn||ko;bFZ_k<>M7%{Jcof_BQr}-Qg;!c9 z{TK398??7>1dIe~I5b|zp@1%LxVLp1^-q6OCm&vb!V|=s_Z%g)n<3mw&s#r3m#G$f z6nY3YN{nWdF_V!tGIUe6+@AJ3bxMQT->H$d3!`Isi(6n@o#s!~Vv83?l#M<*S3D3F z=jqx3Kp0cOW`KEM((rJ1*N}*IX53Y6HduCIG{f^yDjIqkYVEEKvCX3_!jM!71(QNq zki{d4=o%;vPC2cSB2#`cp2bG#C zFE68teLljPMq*{khjMDfiFkXz^u6y-_dBya#TC>8LMNa)D4|{x5Y-C7qBO3W}6bHR&woEh}zP$)d=QjdWl?u@E zG9ei@c1|170KWq@@fHt+JnU#u6|!^Gm=319=O9@da5P^<(wZzHgE5rBf5~=hvf4?fZ&{8Jpi}CSk6T$Q+Dh6wAfV-U6xT~u$6LCo(#d_c z@knb`WuJVGT-|0NE`g@y74JrfsA#_`&hb@}7q9a}F|i_9uB;TMNe;YKI`3_-I3MvcPkjQp#qeIcg0*9ciY@FJ%AP5@2(Aa=&ex-iAEA@5toW@W9*2%JhK2Khn~E6 zRJ(un$=Iy3ddlHp3(U?xCElFJEj+UC0)F)#UK7K{2$F>MuZe|V)klxJo|8W?Yr$#U z+VzqbTjKF>=6Z$JJU=Q8RKC2PG9xMs)IB=8D-I1TdfsLqQ5aa6xk)PFlP&xYPnG6J z%|#&}@zYY|ySezTAnuh#1Z##{o{J^eY52?J?5X{lSce}`qB!m_6nrj%hc+Y!1em1( z9382@u)!=aYwKh;9J_G|3i{nfU?Ji*rif1wHLcc>tW-mln_r=h)|EGng`tZdypRxG z&?*oO;NO=0mo^v3Hf}&LGo@CNPQQD9s+DP|m2UY%$*6ngV{yrUtQ#pd=@MlQkeae) zEhzaL!ah89SOxPJ#vo!0U9p&gq80Ol#OIV%ngs(=!}rEjD(RigLPt|~8=B47JmQoO zAofH5Y2no5{6`A_!Bo{bBv;f9qPXS`cAEW6Wwo*RG}KY)qa}^M-ZAOQZ7&*;{uG&_ z{_Ck|W)bI?g2)wmTjiRYK(U7TK4XQY*OH(tfZJVqeH7=)8X z)`y54sKlU@r}SVQR8D<&9C9B~lh#8VR#0|GE3}_mS#+vpUnVW}=G-Fm(M+-hkP;-3 z0wPFZ8s)kmA1g(^_PEaaymN@(xbyClxsi20xQWlI5#w2<(X>MC8zq(!X4hqYp4^3A z5yHYqFx6`Y>P`b;f2dZeMSKe%GOdvF0sK%zVHpYW>awL4*PzdQ+XR&Cp_E**e1E(Y zy;wIULZTeX_y{p3Nc|zHAws|}<@H8FqmKXiHz6_V0Z!Fe>iuqtnmP#{!oYJ-bAI7Y zSK*Rygw^v;I#gW+GP4aqEiayLjr8&A_^w{e%TanEg_y7UoWQ5B1+nPOqy#8RLVP() zB3fX~*3W{C?~n%MVp<8tp=5_3x&WtqxgY}V2t#Wj@1)U~yJOSdI%{YqKQd}#2>Li! z`C@3=i5-=;%%BdpaCnDs#cx}VLk@AwFja~}aeORAFIvgZ3{NBfzbcBWUqdxze zM+{)PX4hAOHspKJ@pthg`7Jg}^4ogk0F~n4G4~128sodGys5V>7+1@x(-GZmO}aSZ zDZu?o8U*(3QFO$3KFu7;(G@gNmcLRZk4*rf?JQa~uvZEHjl}($PScqxmq`xnxqTO3 zg{ty}{rmn_yF*pnYxQIMm->a?00>a`b}`^hdwcU6A5wepO@<>Y=_Z?ysS!#oyi~ zIBMee52!9gRWBwqpR<@-oe>QsU$+{1icykytaB|%*dM(UaRHp@8Lxg65OgWUq3DHP z`omGm%qv9nf|x@kgJ+u?F0NLk=MOHS)7kQDzbIrVCdK$`;e~A0`$~igG{ID=8*57o zg_!8l{>?R}!nE1o78lRAf?Au_lmejqw*yqznJOA~=w#IzGWrev+NzmQ;m>sr=JDFl zi*-&^cwIP$0Z%`}BkbCXD2+rxMC5L*tX4Q9x{G;@k%aT%850mTw1`5mpE{KE|O`0sA~Lc*{yyT_N(>qlh5?dk#@xd`}uvyTRtK2?Pylz4+P=790(rTkqhsu zS1i!wogbgObV2t+7uh$_2MzPu@R^8o!^kW{?kSes1TxTeS4CpNM`jYF` z(FuAs>PHa6ELswaHiJ0<+ILLM!lI}@QRu}Fm82Xz1nzJ6HtaeO*9M1h~pLsRSIr_Ro+)20J$GIOL< zg>Fr6st$TcA7BStR3VIOoFr6_(u+Rh$J^2KMeCFld=n^C$Q8Rdez1kQPvp-v&`}K$ z6eBmI(Vl}kzT2Fkq6Q$Xo?$Ic#%#5dssIqw6OivhP4ZW{^27@}zxvKOm+l{N;r|!R zrtbM_de8U2IX>^F$*Zq^u&MfDz(k1w`9X>ogxo?c=K6Fmg!2_MtNGp76Y?}PkNNfTMEr4D=hb2#fYV)fL@NL|6bFkTdPZxS{eND*RVbWd!yMe@|w=3&a@&zU@?y`lx zrq#lhLyLG{0Vj9kpW9gVq*ID5*)8OjIwPDeU3f{Fh^iKSAwBn$PYa9d#7A{%i1`$w z3%hH4!a@gu24q8=7Eb8)lk#}_* zZ>{3%4$SFA+0j}52B-$=1iCN0;xfPplgQv{J>XG7j^t{NntvTQ{Wc|{PcjI4?5*N^0l4jLo* zF31L{Tvf|xrR3)*NadPDnXig0D2ABE!04KX8md&wr7W6aMk4xUa+ z``0s|Yy2m|!V^YQ-aV~;dA@YHPW9vsJ5bKzYgy?0d(Y;NLKdsM%&(Qa8R+SSskJE8 zGtXXKZK{SnWtP%sV*)NUq>=8gvu!v?LYcg0`C$ z@A_>zW$gcN)ih&T)Wx8hin_B#l0r1Gt3n7}1bvY{_Lqg4 z3LvcccNJz*L-HI&GavUTMj@Pw|gV=CrA9 zbOS??1o(v3**S;p-4i9^`s0h|y6gHN)-rd_N4Z5B!D%$d9vH&0^_wByKTboterfGG zeNbEQHnUK)xgq&vD~lO*2B5vA!MHmaau3F%C{SEa$(FvB+wgkst zhcg0LRlOSmrw?EV5qGsM?)_^MOW?R%M8d}OtzCNX%?~ypB#w~c;4!t)SN#34s`*F? zKkP0hF9FJ>=w&r9%&`%m@TF`_j|Qd$J=JH~TqC6O92sPFxP6~9^c@9CJKrEBa;DRR z1e`O`3Z@QQv3=gyT}uSJX2z2f{XrQQu~-s;K0Nd0#IdKCi5-8Q0rMHXVd^g3scmCX0FBW!&9RG@~JcOsrokemsM&K)_r7`!}yEcS(kbhjY1rlXLDFc^+$T%`ebUIU5<9+84`_MTU;^97KDVBE7_ ztFErp%ZWTZ_6Oj{RWsi<^+{~Q?IHd!(clm4%ANfeVO8wEAOeSmlJ0$nsM114a-=gE zr@9*9!1mLsXC2jkvz`Zan?IMa+I8J_YxH~?LiC>MF{S!KX$V2{${F4cWxe8syhA>S zJSVYH*~|WhAKDH4n#8hl4?YQ>f;Z&$#8bG-hZ#I{{A7AEJel2(6dYp>Sj|;@did3x zpQM#vU7;2)li>FcbQ9bo-)+T{wc-mdPppw|9KSmmbvK+srW2lN2c+!Qkpzw!$xkZWytDcwdg=F{ZW+jha%pYG`K~%-}ChOq^rYgM zM2Mz!b$437sNo}Oh)sI@;KNmR1|Z)Oq6JWk2g|!Z)Qacn`GG|H!1a0ojVTs{`pwij zOyi!vgtD%lgsl?I_rqgvU`9dKjEajGgw=(Eao;rMn|Ogd0X_TVJto^9MJll9X6u`P9w<3b{=*AI8)l;C@s03uZ>qX>1G8mS7Yh)zU|_L9?XcwB_14tj5Hd>r9nEz z`sEd=t;SKb{T+lX@!j0wOy}vsp4f`#cVK3xxwXcQMpHWDdq|iuI(V=Y%T3Cz!~!YI zk8|=_ReD5m&}Yq6hi)AInCJFkK=W98Yt4=`7E-yLrL|0^!{?X&b>;mGhU5w7gTdit zcqt)id5m=I>n4WkVhp`eoy6L&*O#nl4N9eYS&DFvzh9>sB!RP|}X zjeC{#*^vn|=sVNC=go+c{YI^f?cw6!jD{0R;zjAN*^xO9@EXMC@E=3#uwn;%;m zRlK$avx)tc%@ik%wHWr1;q(VTQN6&+ni4EepGIo=xTUV8gG())4?sCRiDxq@@oiy{ zF!;nge<#kUeN6PM7pX+Hm-sQL6s!E*)G82C_^UV?B)-1IIMDJeYFfjH%T=bAK50?t z?AxOG;qhLdNq`FN&U<07+OHjhQKQjCVCwkbiHYhAaq4Ai{<;tn-kns zqnQ1sLkRfW>#23;^HyMm{|x%Ky{FrF7->ugjVE=ur0HzGL$+lTX-+QP2Odw-G9J!T zB#A6F->drKXjW#uy>{I3MCMgIRG~@DM1G`km|_<{;MAnRFLp2(S~5gv^~=3Zw*fk? zQn{3C+r9bu?uDx;(Nx#eeuCo1b4Qv^akLBX{ST)G0cyumZLTD=R<@bL$sUL9Ye_?f3<)kP*R~f+o1a! zubq(2mdzp#QK8(Q6E9pmGLef1ok|vj1|~Vqr~&vHb{&rvR{33Ms=zaUl*=(l(`bHX z^*F7^VOnc%e=8et<U;}aZAoz*+a{$kxo2gM1_Vp2J#FZ>5WW8-C?#u>t! zLq}EoyxvkFdr8#^S}c2;<1yxOrV?^nVb4*Rq~`%yoX6Vd8ua|QT6rhlGADs1{^V92 z+ly9Su|1$bo$Uc5Dz=sFPq;~@@!vZa#HsJ)KfHW?@r?sZcIJ2(%HjJ^TZAzv(}&07 zkSpD7;n!`@Eyv8>j*4vOio1;!=>uXzU8{KqFWH>IYvaU&+`%D472&$>lxHV*Ylj}# zne?lH8{iJx(h1y2x4mI`RK7F4aCAV_nNgzQ$Vo5qQo_c|!4C(3gs!TPn*Bk7m@%_C zQioWRO1Kuw>K_yb)M!Hba5>=Mpo#b+<+*fQ+miF&^mcB)+a|opzxrZa^-^19^>NB> zv^|iuZIcW_`N}M1t#bWzepp-N!o88C4fdLbGpjEY`UjyM3$HuTVLQ4P*}k7ZvbepI~(pr{Km?(Z7Bvy{s?0+7MbN zNMkHbDv`8%7qjZNanW6JMRlSH^&=SFgYt$ornc;1T*MEI zSJxP!ZGmdVf@lx4AQY_s4N6}h{nzI`HmmJa?siT7oBO=mmOI>j{KN82413+}n^oIO z`DC;7%S%1hO=WBQaeAIFKVMb)<xHE7n)Dt1GEx^}! zNZixIibp!&4B&#I`uyDbsbC>PFK=^5eEmyFd#cq(W?K`lzqxcl+^XFA@Jrd(cFjvJ zI1?Kx>=%cL019o->2WkJ2a%~_4Y6ZCds^iSR2RtHCjthduQ`!*Ocd|hh7K)d-D~i2%|>VH<|B1>}ln$s7~RU+JJzKOU(Gr2}#Pw_hqU-u6EJOE2-I3}C zVbe#k(H9VqiwH%+&)Tp}5%^uZvCBbg494J?K18<%h-(V5S8=}9$F?F`FA=0#1F_ZJ zu^Xd45!Su4KrLfv4D8nn3Y!u&I-YqQjDhi%N`;GzTPNC|)~QX4UTv)tak-i}c^%Jg zWel4Zr1`F3qG|5OWpeSE;vx>ozHr$kN?7SzOV^IX@NwA;Sb?nm}cjUhqTsFz%480j44Sk?+JE=#F zWoTZZ{)5vhOhcX}&oUjVC8crS`_=4iM}KO6PzPs?L&@XZD2Z}j0<;R1#fbwv6MZ{m zd{Vy4-S=(hGI1w&xDh6;6B3{aD%+~Qwz}Zwz%xSC0qTN(y$Qd`=mUS~WX&gG> zXg$eNIT4flB+y1D6s;%yDdIAl`=-GQeVGk_lH|x7!SX*0SH&5-&VH5$A$#_^9L8M zIv4%s)pk-I>gIlKC}mO@gGwJfW-Zs28FxP<79x~Xwys(DHSdk@-WYI`-Ztz((kwV! z=a1PxUtbfvj>(w8w;zmIdd{Vk;ImtHaJwR|zyN8RA4{0TygM7*7Uwkm%QkGAt$Z2Y z&bHG=(l_#)&|iOhnUX}D4VSp?E>}Wx`HN6Q0NUu+@Ak_EfwAEbnObER1EJNe0!i>g zZtHgwsVFze6hfm|>|7#IBZ|>Cc62nMES>Up499Csc`mb1g3(d|zy=5KC0~J|aNDF9 zG7thYPj7DicHdFecQ(G(B%`l`OG8pUVI<*OHl$3#vZk4;HR6{G^f+!eebVixpE#oK z2sc?;FF`cB7F=w%!B{$NKw*jySKP*f^xcZY!cTe5HAF#4gy)?S{FF6&*Y*L*bK;q@ z&TOT0U;3#Y*+3Lpqgs*pRF3;2&dAxW&b%{jtzKNbnmH_WD=n>vNPNr|zH0rn*nSiG z<6hslD%$|xG1-LU_BJ}VEOOi*r}{K~37xNfxSef-VKx=nWhNPqpqs+#A!k_mxd zKg%#{>YSS6*z5I>t_#V3G6`U>N>uGHy6DnW;34~{EWuus?C~@sR()paOs6zPGQD}1 zb)_?8Q`U$xNpv;q@Uuol3}n7{stZX6_cI-R^B&4e$NdH+e>h-|D1o&)*%#4}bGq5- zpM%g%@C~~K4bLoQ*<2#+1CGilB~T zTsmz^lEAosL+A4?H2UU@#@c*c&V-P0qI!K@EMa7|KUk*mm!tez3raSNZ)oW6l1>nn zP2EbP1!pbc{9W=piOHzelWMQgR_4C_)5q|`wIRRM+T>FF)Gae<50h8DDwohQcj8CL3(lMU1^rIEY5#!z^XqY= z>)J2|#@G^+-)J%ITdPX3(M8NMyG5`2?Myoxz#FXVl(}ebQP{XFG_8eM)0O}OZVycg|F~Je37{Dzx>GS@%2X;u zL8NNzcmWdO$=(8^*G+K-THlb~1YizgCtXf*1mno~o51KBrKsf2dKI`e$E-97GaCUk zRF+UmPP1EFgM_joF;AgQ%p-*k4z&V$y7#P?9Z-80`2Jo{l8iwAZNQ|zlf0YrrFAv< zV=SsWKd>iTixvbtlqXeIr4khyD<%|P7uZ2&_Z@GLgHhfqc;F;Kh4`hl#f9A%&CxVr zBa76^|LOd^FiMX#q$$U_mMb&k!W`++@?TRx@<;^9%F^_{Ha&fe|30{FE&QI>M8B|>x*@(&x60c6 zGML7Gswa7^-WH~_O2{Ki^z2FkVfy?{Y4pa8mdx<+QcT>bg!TP+O+?x~35WbKvqU?K zm8$*YWtn&;`^{u*!?K+J(e% zvxdBFUXM!N7(G`-XaK9w7=k-n4P#33L`-j81zA)mGLGCad=zgQ(^}y>FDc2yZ?Vzq zpg3b>G^h5uduaLBy=dkR1uX4IJxD#f;EjyG8I8Wt%2s(B53_uTA1a)sV7Mu-RUk-A z?Urhniq7)F*VUsY+69g>AacuNftNoe6KY6#VteV4Q200^1HUsnAcgXeN=bWsxr>bt z?Wc8ZP29;=Qvqe(sLMEZs;%(wW8$=qC7%Rb&H5>hqL%8W7?rWX(2+U%5gC@8Hc5 zrFPSep1^3Vg9B1PG!@o{0Zrj%PRRd-t;RDgYSjT*AlflMaDu?}L-%F-onUM=c!Hxw zqkIU`O--$6{s)D5p0Y{ zrU4x)(NS|oy*z|G1QKjfR}NzW4Vh3!4kcMYB$=cj%(gn^8gS%g>S}H^s-Ka>MN7*E zdJEe-r$2cz5*{c$WWpmwy|dg&OMj8KO-1KYLl)8_lzAt-jf#Qko*g^%O78j!@GbmH z^&`C{y|<0M=>5*H7ff9)Z&QG4N*JxaK=J44wD-gY{woaj{RN?MQ4@wrT+k9`u&;5r zy`37wV0eth1#b+?L3-_rzx!oiz8$Ui3M)qu;zg40Zdv;dfezG!T_+c_0g@i4&CBkB zy-7&Yw#R=i#x}=<=CQ~GEPeL0^ zUl^L)H;pO67!C%oleN50hmWF}>(7vm(56?Is>WF_dP4S8sw&U`g6H7~P){yh$$b!i zr$VXx!@(xFhA}1g>EdkB#jYg<0(5b>-@2zNb4g$JCiJ$ zaS>_Fc*GaN0hgVhmL&uT{=GKJwKm498z|s*?tI=k+sBfUaf64i?dT+V@VI(;iigD+ zI{4g&&srluGMx?EVqWufXDw>}gqcUIb%SGGR@3(c>HDmm)%=iT6qU5IhY?k5(Isw< ziC1Fdex4)fs-lC8<7vHA63`gsDb|VG-F`&n>!?2LV%FPLTmImy+}eYu(~@1Aj_to1 z%-9%(J5`0Lfn0Z0?Ob7sKQHU|Mmes=sFl`S?=4MsM7z$IaXD+kyGO`g#JG|z98mF2 z6Y><^7Fw9M)D)G_{*C-``XLoSa^%(!G2}vX>MS(iqUGhw31rA@G)RRbnV5wjKjB!) z`iA_vGbWE9fMN*n)78sUSAkZ-EH(lyi~6Y6(Du_g`Eqd5Co*))QQ5BWd`2y>6{WVlvaz)Ps4_3Yk8U%?WRJBVg z#OugJgTzH1so%4#GsQM^*;k&c^xjOo_9|s^hGH|);;^ZQh2d$Dn1LF_Q_6sUfc3t8 zZ|G!u8zvYXbq)@y@a*`4)a^obR$E9WX9GK;NR`1Oy1O=C-`ehJexGDjx+Pp9R7$pCmPynOW1Ov$O@p~o`nFO+H6h~~+UnZi&|MkOe<}}HPB~x(b;8Tlz?IWU z%c_xBCc=}9f)Ki6<@wG|tZD0mYR6zWK6Td758;_9RJ%y3(XK}msGrm|9llT#Lwql* zok)2hFX;^0db@~ULb6+fT5@_&ua|h!9S%yUnuJEauPqL8mF^}BRG-jo<0m3|WQ1Ym zP5J?K1(7Yw>Q z*hZ!knYmBiC8;2JJT9rU(f+!(+$OS8oPbW0aUEXA;}{;NpYY_zb%HQXO73}<+t-jd z&g3{DLK~W&KFN7*795WsNr2*FIYE<74I__K8LPXTplKHSoMEom}o=Ic~7H|3RA-Vli!J1##Zs&B!9m+tm@;=trcj?F0H zaT7zoh?-e&D>PALacxj8zOV(w-J=Eb1B13Tn@xwSc-H5pVfUx=tUR^wlo0+ZJbEQR zt-o&Z@|6io?|WG5;uTY-qA6`6xg;IM^nD#uVzFJOC2h;eT5eVGo<-wV(D zp4G#{CnZcYPpOJQf0Joj*^`A5M}qD&d+~a3O+N2xVAH)2%KE`R^EaYNLfFeTXqg%o z=1AP^kPP{gc=M?lN8lCv1QmEr+;QjRiEtMiEj6*~DRooT&-~Ctvg9fhbnBMdd;Klt zFu`oy8p^GP!tXkRO>VvJ=q405XNZq~ju=K0W^k=VI<0eH5I4e*9s~|X836xXmiv5b z*c_M)FhEex^dVkX9+j7Y#kW3y=^K7NZrOHnpiS9|oFxIX8FU2vEfb`?jD4{T%lv0r zeC!JA+>vxfVkq(VH@a*g!dRb98OX@*mOVVV0~={I_XxszXK=SyqO;hy-5Q1RszrX7 zIUWz$w|6=@9E~!}_2f(~Vw^k-x9trr6a;vHyr<-b&wlv>_N~4V$h&`{ouf5!!cOj%qsxz^8L_Zd9_@4t{?27Lv<0l3Fdk zmbRAe3rrZ$^#(Qj)j)#_Suj8_=KmW)DI(m`;Q$@m@jO0zqdrH}$M2CQ{w#;puiB+~ zrbpjGxV4@}n&^Ge)aFErSh9t`j$UWti&D%UzO80`Hj(G0q(CmF4T^mqCA(bmZ^#MN zjIpFFA={^y>hnxPcyRThrFv8Q1kA&#q6FW!VIg(p3@&u)R~sR{*i{J3vh4AMc--lm z2hRYZ?;Q6*30fmk?=BGJLZF3|lcB55JCv4X{WK+Vwm%Y@6xfMq45@2u6(3;0pq=cl5aWE)cR*z>X%c^P4 zE8_8fH8p(hJhOZc%bZDyaFNq-wMs~|jP*<;ZV-tE81Q101KV-vyS*ogL|%b)U}IA) zJTRVd};K76}5UF6vNV|bkn|rFj#3X2`(oprL+Ne$Ax2=YQyKr|C{JQCod7wE!KowHx`?_Ce(C0@xE&6VFs2 zn41&?PIzJp5!!Gfdh=H|?m7lJAqjM}d4l1d9s)XlU01H8>^*FrNp{)q^u@b!!_BM$D-vWIhAAAXZ3l8e zDj1o%r5|4ReX*mIt@yw~_hvi4TP$i=&Da14 zm3m}tKDKv39mb~}GFiAHzJ5;`aDo@O-r+crw9d&Q{3nucbuE|0PqY7x!24VQULWga ziZ2kd)c%$4w%SJeFWASauD)A&UHgp@HzCPRd*MX2UGPBSAc?E!A56$Q_1GaK9_J{9bsFS&iVthnwl&;O@jua?6=h^zbgDkOW zo^9>YiuxryUci*(o2!u%bfpJMVc5p{8Y>wgl9A5K`{Q(ZAtRs?U3Mh93ZV)UUi zCIM`@2V3Vi_hbfKngD5V9{_q+2qkU;OfHL~$a3LKkT@%)yU=N1v3bx{T8M&7JgG=Z zbj1KnZCOK~wRLNz6Nj)^-nWi0%1kUS!wv&B&US*i92V+yF{%_1i2>fo)#c&UF;hJo zVGPg)yfBsWR6{DXjx^^HvIrb`7C$PecdR)|kdz>83F|0SK81@4_+z*W!_aSl!gf_^ z)E!}Yha~bK?9aNCj@7@~oH0yyBWdt8))M_`xcI=+t^o<_QG(_C)1x@GlnXn1>FU6^_!AvrAQXZ8W3RiNK8$E3BgIo;JZEzDEn`LaJS9ZR(qIUWX4*rr;oJWtcLy|E-m z`Am7OHbfCRasr$h>8Y=dB~X)MR#Xt;xBqc<)&=C=zE^`OvCRzlF+lC~ zS|OEwa6!g}Fy7%<@34Kt;a?Q<*Lte?857Aux7rrrwtoY-vk_Vi@_3?@gI0Ph%PR2= zPyIDC$J;4wdRSx)2KY1uF67l@%0zHeR?dK7UuJ+XsY-V3IzVG%$OuqlNbqB^Z;tVw zRk==DMXE(_wqYX^xU{M_OXEavpUcUuE?rH5YMo|1Rz}kvPBK1~9&P(-_~V!TX4Kn$ zc7HRyb8msVU{FEalNtlsrP@})St2uK3$tk>430m=v>l0E<DFt&0KCnalaL+iCdKvlg^r`B&|n?rt?P_9){%<@NMc#04Gze zM*OXBrLHsRCqJappi#dW?*uFEVy4I6%%Z7+M2@x|#C9TzE#80pS^eMs{n#A;W~_%$ zT-v|S?-o5)==_b&8X3pfvc=C)4XFr|#h()QKnQ#-OIS^?3@0j?eH704wl~SQ6`?6U zO-zTEP+y)B*lW97rOP2NCqHV3BkW*>`$(D=8RkWzCV}G^DT@i%G3CkRkVOU!iI~BV zGYb<#JDO25Uy@`JCT;Qs;qJD8-dG^eaP8Q{t44UjbOwlN9cAw&KyiVwaz9_l$W zd%?={J<0r{iKOH^)km*U6=hIp#p-(|iU2X=fv2;$p9zkhrAgA_shjTU+IP-;1H|yi z&!%nYr_;~hPWk$uzqI4I;Vy#Fez-+!-HotOM(c9`5q@)|kX9u~XenwQwPuhEB@3GT z`HY#*4Aj^MlWxg~PhqI5A7tN3_3vz04QS&y6TxU&cW!!VV4^-f0ln#yUn@Q5yuMdh zV>GP{GCGqhYdd*g^}-XjU;%>*wl{+s;gEh6-RK^$%oaB4)G9i?z4l>YU9S;NyIi$S z&T(l~P2N{EUtTE#(CVkmd1F1=F%PhFQ~0l53|l~hr*Hfg{Aj?(O|JQGs@jIuB*8`C z|HwzNu}O-}K??(RT8v5JUd7Vclm-~P>_a>EODvLW-sKfbxXh6mWLG^ZI?Iakeirxb zPgTd1Qza~;2^BiR$wFo%&=2vv@trxp?PP1i1$)))?qRCU;0#`d!IoDX^e~VK5|C%|1WT*TayU@^Blt)c@h` z$R0ud0Q!JJ=~J(ue!##%I1}{jnTIM{P`&X62kG=ndQIqlz;LQ=_m@u`!PCuNkFd%e z^0~AEUui20@#_$e&6>_Sw4s_(4{HcC3=x8-q%AP7kc-~X?SQ2!$&9)omaa=u+Au`r z+DeIv&up+gs4CaL01&Ag0xA^!q;2$<&WpEf!@40;>a3)B@|4&ZCw}Mp8e&KQpXd_A zDcs`V3nF^@wqMr@`EhF(x{!)8y{7JtdzWlo=smp)b4?RD#_Sew??T;$-f^c? zPj&sWzqFTkxcTY$)FB=>CLiC}_~Ywte|gq)rs0_xl$|Mhr9#}XqsOP7(7F`_5;@&v z=-%brrmD4jnNa>_MrlmhN{=OtOh>J0o~=AXr>O;`Wvid|b+bIHw|Fi2gKH%t_y2T6 zA$DJJ&_jT*T@IkOJoqBrTbzocYw>?*VZQ}i38h``Z!fdcQr}nOALi!ftYOh*6(imP ztwku@rPUelVGV+J!dh}l^bL71WI!-}b_!1Su;}ECq9IOGP>woe%3Xl$L7n#S7C;YR zn~5LtGRmDC(u0Rv#*%(EUAqS$AMg~@n_Sp zb7S3n&a+7^{Q`<;tspjHsLh~VY&c-cQ`L=L<%eIkiuclajK(9e60K&;K>Mv|Zxu|9 zrGv0rfktPe>b^|l@LIE6HB6{l!$LIcnqpI*wK{;4oNW*Pi23}Q#G^1_WBnwYjRy8U zuooqXl2VbHVNJ0Q^zsH=1Tc#A_lCPC4Q|D zhli%CwS+iK3alH%DdG@d)cUUmCNz?{sFSNNvC<3b@l81UCQ@NS&RXG#``oOG6A2~> zrzZSO30aII^ks}6H~T+TiceC1h4BS~$QZy9yh`j%1k8r;(5WowL?{=gjs%dhN~aGYL9BZzL-e)Xk~hQy<`kYlObwD>^`DyS{Zu@T>`uzrFCT|?)Ldj@~oG2 zcCc@sKdOs09v#FSVXG0JBQsViOV|IVZS(>Av;g}_GVjzAn*I*m!xA02lp_HaT_!E@ zLJuq&Jk%Zf+~pSET`71MeHtU_@K+@?+A{Y>cpc*lptgIZqLg0WMwhk z0wjhui`!Gl{Ni+-ZYQjiezzmYor+WG`9ja~9sYa3;wx+h^fj zy`8>I_@ToVi#@A5EkX#5kWLUvo+3E-B4I4D)*Y2scxnBr=1xCMn==weXe&`_EiT&I z3W{!8juNM~@QzAISvIe$dErXKrVyUO8cd;6hdCp8TK$lgLk^fdw?#sqQlW^{n?Qjo z3~y2mB}Ui`2_ZM|_?-bXAyUx@j|m%v=jmY&qM^jp-CUVP0DB9Oa*_aC&F(Kzn=NP- zXAn{={gQVY2yw6*A;4#+yB2iLg!#CMXou{ ztunN@KrwIP3_!j9(4y7QE}+Wlp8e=vVrg@|^zp{4Epa$3^ijaEc^~=3p9$UH{QH8U zY%2?1y6atn;Q4HZ@ewIMSY<%Tb%|YK4lU4cx@0WMH6n!JCS*+@GUPcV;;oi^UUKQE(deFOeRY$4%~pTgeLk);DSu4rx|mp z=EYA`vDq)mTkY=ucwQ;}^lC%RD7CzR2=%7xj8+<32}#OWTR=nlCaY}~Aj1lWis3ki zD?eeDl`4@YTj|wlMc>U8HxmY z0mv{CgbdwptM=EFS>JYVsjib$3YyCAYO7)tUz);@_0U8yb=ia`aomT#6OPTQ(QEO> zMDE_A;3z~40RlGdE+`rFQ^n`{vgZ2v@6j{VV9%le`|_>v*Uj6=wB=54*X{rzshY6q z@1q_@B?ytsP%O6BrC+utxOxunFpMr!(eew)bh7NJwA{ysdVU6Rc$`)TtPfx&jMvUd z9Nk`Jv4Y#AZ((Au%B_<7cxdPc)P{jNS9KtV{ddoy+5G_uOv}^O;8K5tTiJuQig5?I zD)LW&gy{>$N7hAEL`sb{a-3<)yMQN`pZ(J0qZHbOb^X6D1hEl{Ej!b{X5rRGVbAnb zI76OzZ_RL)s5P_i+ITdL5wgaxnLK!4;XXjEo1n~$ZDQoq$*As}A_KZ##0F*0;R3iP zTCaUy1y*r1p+m@J8TNuFETP9RqN_}Aicq^wr^ zC@aCbhtURnWsa&lnUL%K?y2C^1+#g;)OJ<@GWJ-7AL@iNV$wX#@2oNp{EZ+odzXxj zxAp}NpPYc?3~^Q&q~d-^mZbx?+t3cEsnbl(jU0f9bs_~2unTmomRvv2Rc$Ua9DlwS z@ueHjV!$uptlH9Sr{qpYH=sLDcCrq2=6Si=?QI@(m2fx!MDyED(==+6v{bPYvW~4YxKmWE6xAMdTYPSc{GXooMx7qiQ-2+rE7uIWG;mvq@7H5i zz?#EeTNJv-yo_4NrDJDj38p&wy33gdhW6&l>{}3MGW!C%U<(tvk4(M|RUZ_zGe?m;B zez2pW?}fa70MsMN$)aX<&JXg^F{EGzI7~nN;bhAzni+&Q$ftnVh(1RF9??%%I3o74 zC#+0=v^0^zz^&D;d!zu|kp9RSMz>trWWvMUsp`V-LPxajcLp!P!1 zjIiU?-liEI@~PPDK-_U#03MDzn91u90PiI&(Y31&xG=w2iIFU`Jv3)tr8@{|EQ7cz zw*P$3-e$vAea;AN)&nIo*4t|T(=>sTcMR#PXy_q~R`Ot_y!Yi@Uh6Gym~*e5;074K zO36VFi!qvpnNEHJ1E57`ej4Q)G$6!x$U!5vR3nir~!SK*KT4~owfjTl2qETJLdy(A1mhIWxcCX;vMWwxPLMF z0Re|r`u{-(XK%7W5~(pJ-E|V!(Rc6kmdA!e?1c$*EgkbbOdGHD8fl z_Emc7)zi^BI$U@2HI*rNLM?X)2pq+L()ui zJd7Z!wMH8qAl`4zZgpc7+hWkt?s{Y?EFTSQ=3%pB{D}vcP5CfQn{coSnqj^aJ^+hQ zPu|O}Z>wVWEaXGLd%qMv5T?$x4N~wR)G_r`YfMv3ZUjwUm)j)M_VkytaGPgd_ZA9af6(~c@iDId6&7Nis3N;np# z+g=OI-$L@_uWxzl6gw*i3H(d5Dh`sMvpknVOelJW9xsD+P^^&wEQSyD7x979|GEr$O_n&wR2v&h0vh|1E*}B0>;vuaL3` zvAKjx+$*yOGb$v1TRF=>NMQjVO&AP6W%JluKGm?$vum)4Xe%;85E%Zb=KDoLou3^r zI{cB_{`OJTAZHX9@dXOAyZdHC9>b)1nxlBhRbE4Iue~Yi{+1goJtzj0#G4%U+gn}Z z$3qkhb0{ULQY$RFYG#OtLsAgFF&il{Xsx$o;o9L?g)SG&rf5s99b<>@h)Mfe6>HFd zn-7}N?rfH3zX+#|n$w)m-O-8~MinwpV`uac>C$OHUqW_6>{7j(vU(5P<)naVLL80D z5^CCHY%i|(+lIm!Y>txF+MP6Gr3{%TQP%E+QNU8{UIfYSUvMYZD^ol)IP=$0{4s2a z;o7*hnhDGruVOnTV9891%Ngc4i1x?6aVThoyk7Wq=>XTwXialg1Lm<`Q(5kDIy|^Muk}gId9nynn)JJo~v}NoTWT!(XAui zb4I%be=9Y{l%i&K(@}ae2On_j?&&e%vbB5)&g-+AjZULM6&Ll|`Z8SM+RKHL7Rl*r zMILbM`vINzA3+=}W6j`dQ1_k^Oi71K7dARDOUIXNaU&C)!hUhCV6c_KlLI^%ZtSI6 zZU!EL$paSVb6gZUXi-ftG+UH5>Wa)Vw(WI`-whVk)oH@Qd_>Csv~13Bz){o((p_*w z%XdC@4m^mkZl&)`Sa{FIl;M z@AmJ9{u<}`u4GEg{Ilm^c9BW=vQ|}@JaCwP)>E1yz}jWonZpKS4Kf(X(xvE;g6CE{ zB?vf_mn3`f=ZoAxM8)dG0sjQrUT1kemKr{>$k>AFse2YR(A70IBW##hbAwA%{Nqyt zg3+4feCaf;MM3?QZvP&NwXL0-O9t+eStWmXLy-4wv?aFwX<|E)v>KCb(apo@C^TDa zv2Wsxxsqf4rh*&JBk@QAmvud_*ExDTSyFLK2ls_W3;y1mg&f{mwB^C69I-?%UU1)G z=N@_8M8LGZ5aQTb@=a_jui~7V+i0`fR{!4+Ks-A38{UZe>+me-69G)`95TWN9S>34XQ;p8-d~?s{8_cY zSEaiRLJOWQ`qK@kfyx@+mxXwddT)6Pybq(m@hky3wur=u% zgV#mjWN3p9=z#x^Rw14x$BgfzC3^jP@U)Cyo?pcC6PlBR`6rhZ#3`|`zKBw)YNX2tbL`?v5-^$&Bw5X{t{a8le`pwfMf5 znhk1}dU#kvE%8^sl{-E!IS8^gwUalSbRfJ)s5QC;mRNbRlSzVqUajC*B6Bw6KqS%U zL{b$0a7z!XHvh^gcG%9Mj~h)wK|e5s5==>tV7RwWiLDSGCl6|noAh8`S@vAQZ(}-- z`Qy`L=}u>SS#4b#`^@WLst5Mj)FrFWVi#Z&XDf5aO#rh8;pFx)49l4bEH^S}_uMr= zi2YDVmv#SZ(2xrbI*1?bNy$*pp+XH4+a0^)YS$g{ z6)SrF5Fh7}Sc>BXf;hHTUXMiA4hG==W1O763EJJb^18jy^_TGH$n$^nIF=(K9AXnO z4hLb45~k|DjLw`{pH&agF%IJ3doVE!;gcWzcQBy9p)X;-vJ6_E9G>qHd+G{~~zV1JS> z!c>W!DU@+)Sh_Omu-7ECJ5vH|l%vxsCu)Gq67J2oW%W{hAQI?2VO$$IdkyEw0A9l8 zL=PBDehm*q(~1(e50*(0J&q$8tF)u<0;X2e$aHJ6<(nBuARd7yV1Wdo`G;Rqo4fU2 z*pv;{ZQqHstc&%{*5*h}YArJ0{rL3wQOuY61M^?rx(@ioZEF%w-^eOxKY|yl!>%{J{m|T5D=ld( zoz8Xe3YL_2vHtMK^={^RIK8quI(NHXNHedxvoNz%W&b`L(rxI?B6q##kKo}5@xpk? zh!WVdq<8dZd8~XrP_uIXZyt+RwqgbIfP)>l_-(*1GnF`<*?SPbse&#g;_@prcv|pw(KVH6B&7BA>Y^?L;e9=Z! zUk^_NXgWjbzE_>LdSA>DFaTRtF~j9Y7SqOte(XM_WbgB@wzLT zQO9=3NmfLJZTGzQB>T$0JNo2K8q=KR*YzVswbpntogQy85#0>uU82 zi~rL6$KFMcf1gD%E+y5pHh!9I8{V>O-@LcFqb7}Wns>?IIv!jyf379T8h(eKN9FC! zoQ*l`y^EH}dH9QYfCSQ@$s)Z|#j_bju=S-iOn$%kI!ht1LO?r!MKuZMW|q@Q&4$!g zlzGNY?1iv>B6?pN{f`;K)=l&CJV)N#Od?omR+ej1>MQ`8Qc|S|PzSXB9Vc^%m-({Pw|V+=Te?>&4}Tkt&jdxPSvPRonYe4x@#Mrm zTy5uh$!<2gogq)SBV6a@;J@0tw~5IS@$2JG?-EOs$kGL0#L4b9Ih`d1Fy}MVt*-M& zlF?4~%~*N>$^T;JrEW>MunL^R@3Z1-b!Y{7F@}3%(E;4BXv266rf~27PwQXX#sSG3 z17(mrcm@@Q&Y<2f8GZ)C$}GY4v6kg~p@h}9qqGYHm+uBvx~#dIUFQZ@z2#oXawKe? zmBLI=>HtOl64sht3$6`U!zJX?j$XHM13|~P@+7wVoBR2$yB577Z=9W^gZF9OmN8q{ z3HoZ}Hh@W+l;I5a_vNkeL0up3=Hz`19APv{(%KD005rbY$$XCq3nyZ-%Y|E>1;O>u zJJI%3$Uqi3OuA4p@N_sl{4B&fpw?`}8U%Nd)E=@8Ymm(Tu10jvnCRr$mFE|ZTx~9g zRpRlT%L0XI*8GL6su;<8+&0@o)hf_Yv+D>6?J~Q$|GBT7ZByE2Q(1?_p8Zn21miFjo%RTy!xCCZ&PZW zY@zscYr*^*R5@wmN@oGjC^c@SB*V^DR@Up1dOU(tf3w$k9}Uf(N*;P7w;lVvVGkPD ztvK%PY$7A;x3!(T@${m7PTVq^o3>aQm=!&6n=UoKO>~9z5Qrd;ex3S66@Z0e?7B4k@xK5CqtXTDkXg};){22}O)9X5 zb`-5>;Sqv!ums`<$pb!;<@GFxeK&uX3-0<3P}?tp*TXPiigiI`){HS0Bzz|}jmJr3 zG}jDQ&gL+@iX>QP9*x`QoC+q`jtC#ko^#Wi5BNHZ^DDH-Q!fXs%$lF{Io0e6H3!op z_YK3Y*ySvoflL`PLWu9Vr}B$32}$YfuiBPz=T7CH6&4`3CiT_D8xONlM|{9HAazT` z!GB{@ou0C|*bW9EOR`>>Cx|%sZ~aGlR^sCDB;)E8<`Zm~gs>e&`WY=`4U&eD%j^em zWzeuDqxfAv|Hk2r*b-+9RY_82r^IxGIc?qY{pb6&4wB({xw?mtRH~hxn}zmwolvn= z!yB-I=}9fKga&u)YU$M6DTAKgie{~23?&r^MFB+(UQV_mw?e`T%#LzT(%@lf0oJO_ zD^{3Nw!~mMpd8gakJXbD72n8J9T!DgoQo%Gd!?mcGN)Gqn(8dD?40k1KqVnUKNed} zH}@aBZ60tOAijvgI5{AHDu-cc3U2Cjn(xbv?JsD}VDB8UMX<#^#>p8MC)*xIJ%i|5 zRj>F!OfG%!+!%2LgQ_hFol3)~lx5kW73FmC5!bR^JCU0}`?40;5*Ii68F$~+ z7Rn*0_O<_CV63B=N})t@>wl^UnV@r-L`UUIx2uZnT1dQT2J{$03P;!S+hLZ*Va3bY z(hrYGsu3zW2hs(jM+3Z%$vi@$&2#axYeE74r}3`S6nmH9(|OX+9B(~6>Q0832C32v z2S8dy5*J4a3;N;$BHhiAI1Z|b9K|pya~gy<@ThnpqPn!TLIv|keW_7qcPOK$=no>$ zqs|`N&^bC^`A31y1UT6Tx~o;IvvdxRo@RBFN)jK+!3`h&-E=4)k|`ayB;@zsM>}*n zi(hruUIqo;mKSMcIuM%U&ii}k!n9enZgPYWP6ff_%?SaMo;#7%d^RRASZx<4-89z>qXoO*D8HHjy{bG^|1i|2Y}IrJCQjY!zn7xwGzqf*9JK)+MESC;RnM( zHm}NR&{;h!Gp>Ry25`;uO1=@0(Z0*?M;nGA5b$Ju9puCw6A>zLoY65411#wnaEJC0 zX$dl^b_?&46-Ru(C-24PYDV1|@jp{BnV1f#AAXEURJ7B53!)Ej@;K^-;|&n%u8j3` zO663`sTDBa)YN(tV{c~)VC0?eOJXU-w|!FL0u5HN({P$;w0Zkt#FgO%?j4aau8yrj zG1Wa%*|l=n&5>s+jw%=brh#ga;(d}(YSncol(!JMt##jPj?0DiJ`WsF*>lNX25XNS z$FIVBhY_w0pxns}7?a)4`as(6tzD~Wn~@UuY%&rtSw#?(I%+$BEH2#~n0+z@ui8^Q zS1)HRWpg)#kmqd>lXEpy4;GSFySv^}b&u0|-Pz+MV%NUj^aD=y)Yj)qdx~l`4VWY9 z(~I3h)f=2jf2;mUa#{a23qGwX`bLCj9{5+cVXw~suR;BtipJ;)zT%(NcG2-$pW)C& z;~7&$?Rr)0J5)X+^S5>^q`3vLY5(OuooWvfV-OXYT9mW0Q*>a=qj{*(zO@yH=rA8* zIFRX_Ebu~REx^jN{Wx= zRu{M%48Fooh?t&+n6bD-Pq=gMF}NK#B>$+(nRg91I&Uzu!Fw@y7RS;)>F}`4-ABjy zTP{b>-igEs_NV!EnN(d%cJ#|Ftn@Ec1kOT&FNdWUH+f3(MNa4tB;Le& z^5^`li~ZCmRpWMoL-e0+rwpRf`K5N%z!aj!~*8E zDZZAJ$b`&nG3b|$rR-F3iNBV?sWo@oF4frUj>fgAD2>?+QW{n%HqF^eYT*@A809kt zcm@DukseM}pmQKn;BFv&R%Lu?;d{rIG3^A}J+!cJCw(0x)tcyaBH?7)&hAO5xt)=t zA1&lMnfhK5QPhwa-J#N*dizl8_c^$Cu7I#If^g=9QAVKCvZp0Rq#3xp>A(;y5Y%9w z#QOFm+i05+ZV#DG(tD2?=bP=>Rp#9x+bcqXIRuf?z=oxxN~jZ%1KZP61rQC1HtUL6-68<)Ls`gBs_Ocu{j>)JFE}zFN#aN{y|7|Ye8PK( zI%Nl>`RZc@qKTmHkry14{QG(mGbE0gD(-iv?6IZ3YCJ26igc0`c#F*EPSku#7%&PWTDLXscG`C^dBMGyhm_NTz!k&Q(t+~G8BeV8X zXp2W1MP9x*+P_DCKW8%;^$-4;ZCW1TLsB8|bI<*>oe+75jZgO+J1u!{(#T4dV(jz? z9KG}jAi&w)>`8LQYu%9}X9Kc(V8?0dgLqtDdJulUQSg?I36Mr{vKXR8$3zm5o0SRO z!!4aR-zi#2rdc<6s3j^pSVj222ao(xBX4{eC8gdAYNA{a0W4g837q$aMwG20kh=Ur zO5tazbs?&-aB2LqPy|z7uUr)^u3y0l*ov14de2NmF(-n;I#E=N7L9_lZY;*VIG202 zDCPi2nt1gKHS?qB1GlbC6+Eru6qogkx4E*w`;B2^_dk429JH|{pwB-l;ppxnIA+3) zm&M_7Fg$K|RO3dF#V6RL4SrFs6e0M;wk9a;dmna>VPrPumr`jmrK~-u_NX783@xo? zeNe%du@bwT`FS=1jkX>NXwLOASvp~jypLBVUN-^fzDKA<3bY^kvuJP;2yW($G z@#uu(VIL5u58N0#l$UEGs)0Wc5Sln(!m0^|5&Ar}Zt5E4V>>33*T34?iKK;X5?-hj zu?*erUd&PS2*M*yyyp$+Gfdj0Z>BoH#@uCc2PN=Wg*gsr8^T70X7N5VD@Irw+lICA z;Do}!j0MHcU%2_fdC6}X&>`RxI4eVG<2X%YV3bfT0S;jq?rbZA8bzy>HN6;HjV5=e z-CPC#CNgm^&8Ds65IOf@o&nFSI*~}5TxROw}X#i94Rf{#Lq{sOAWy1Mo-28G= z=9k=dmFsQ?t)n&XwpLNE2ay_kJ?H%)OgL}AOBG-$@(>9HV z>`4DkE8ftd$SlA5^r5ZteQ8m)Q>9OU4%FJ)HQ~yay~$?(uq-Brtyf{H+xFXNV74fy zvGYr5eu2)9kBt^D&nL&eH*qF?5n`TAi`F?l)q_bcgNJAl%jkc?d2FP&j9yX;y#JWtaRJt06(p;A{eKG91-E$I!e4!n0l!KhCZ4R+m847^b+oF*EHdWIu zY_ir)b1DwuhGEeFiyc4|k1P3c&=KAyU~SWjTK`3|Iz8mN*Sc%wBrEQ1(CZ7|_96Qd za`FSjznid!zr2S0{_|nhu+Cq2K%Qx>N4$62LM8s|H&sfYxOXQY#wjE0IzPdQHR`{DT%$;leIrYdYbd2xW6;AJjg|dmRkc#I z3UQoc>J}eE1=^7abW%5?Yi9=7&!Pt| zXgwb;fmXKUnqE2Ve>dO09H?sp@ocg=+bc?GBzz*TTTX^r*EHFTy;YGF9jV&GPDAhC z3WuYDXyu1R!_if^C z5I67NI!Z^TO5_^4)LKjFtfT?{dar$+7crJ<`nill+seh zL-7e8sve(!KYDeoQyqSnCCS_fqC-Dd)Dv2u_kQ&LdU2uUHoO z<6o%;M_f{%GE^3y84x-TG#698lzn!)F<>FSZ8=TwtlBW(=yABKD;Vf%!jsTA5lAcJ zpHV+B)C<0a)Vj?!vTT7Y@a*oB%dxlPGrB*u_osgDc13h}mo#e$LI(Z>Owoc2gRu=! zr;xJc(IAtdXh>Y}5?NuTjS+zyp#f#;d6I!!cl%lrt6PShFM&G-VT&o#Y?K5h- z;6MWjUY{Ekx9qKUIT^G07Z8DFhCyvyZF6qJv%aLjU9pC828YZ}O z9rKIzJe`aJ2F-l{jzYp2PY%lmu_jSqh|bXSeayU{?WlyGBGgC8+NuafXvr>7;K}J= zaQhVa8LO>SlX!y{79!Xy;O4XwfkWSyY=Nw1{Kul&b2wUSJt}*r@($RT(rPxjH^S%v zbU@9&5XUB~IJGH!S5A5HXgbKj&@fi6ZPet~e z_xy;vCG?hWmi8Uw2J{Z;iC)J>%1>Ea>)|?f<4DVy#}2?;9cisw-vHiTccmKGBWd;U z70%ewt26gqk%l?b-<72ZQtE_Y4#5ft=Jo5%**gDctxT`Ze*p5mirMKAPTX8e*daq{ z3ez7Pm3fR3s|e=zM6XoNBWMjDY0*CVIz9{Zor@$g3(2g2Ih_6@%+-hU?@(fPyqr|$ zT~j}-xU~^Zg&u${_PG6&m&QzKJC4|fzqP>f_||ci^2wo` z);TC0QQn%cnW6%Qs}n%%f&TcVY44=`C&yhys4gcaVPxY}Wv39%4pZ4;g51V6cDh>@ z9gh;!k*;-xH|5P_EM;vvmM@TWQlKwSK)?Ei7Hpi?^{%BxvYA?XyqXRbtYsNSp|YOx zv6t4e<0rgVzWQev>18{=NU0UK%%sitDA7ow<9n90LIU1^^@`?PE}nj=X%%iQyNBF#w_ro#EGI2TVgGIh-a+)pPsL^uym|6{ zzFqIcx~x7FF@a?E+sYF11&_`mIGA~D(~>$1%pfeH=39l$_% zTL0k_>2t1VgGuh6_&Fc}MgHc5@T6o)KS-mQ1l$u#og@X8imASeP0sN)1M4TYtNAx!mgA32O?`$a zV*MqH(TA!?3fBY=_uRnf9O6ObR#NZI_68u!EFQsNvmS&p#sXGtJf;Vi| z(!^w0PJ2|{Im#(Q2%NV%wy>5qWeo(MRyYC^S$LL%BYgGXtZ^V>$cFkEPqwF_i0xkD zGLX=>B90`4e&eYLy_;P)p4j0Mv2;>B=z%b_@_lO!eMa9{@5So*If&B1i1gbCH5UQT zq>-J%_ytcYq~3x>JevrkWRN2f1aF57z-Yz*{VkdTd^ zHIg9(D3Z<9)*>`JTtxk7yTkr#Q#-b9LIz1OI`&U;`dfF*id7zHF|lsRemqa*OS0-t z?R=E(AIy|)OY(SOHXz(GFW>;?D4*RFZd-1Q`3pnp@WGqy5 zi`aXg_E+6|I=j=vNCR~;_9dMLZ@q0OgOy-41mLDQ+o02Zx@o5x82jN)Kb#|<5q3$E6a>)`wC6)0bIOJ zm!i`p6qCh7(Is0kI%ZpI;elvEg;t_tX_d~$b`AI*9eX>s(z`Dq0R@^0EU4zUbO*cc z3aT=YGV;VJrhLk(MUKd|6|xb#>2!hOy>o+e73Vd$*5+zmU40~IcP=6~GYxUM$1MrM z`y^I;ZI%Ck#=<^`6P#M$V{rq(+t!lsc=O1qrZN=Ypno4x`!;cFVQMc*}ArnaC zK9$s4ubTAY`K{IRg^es!IKJAPjcl0X%-K!1yw8zKnsS2SAlBLiuG8dYXJu~J+OL(T zmb3MupKI~9&)U3)vbgL9^#+|MW|**e=Ga&0Su^HyZ%V9gu^m+M_%kKPRVi$<6-CG3 zSH(^~-D61zGUfD35g$YAo9g93@7&&%t%4n~!-}Zr@IAb@jn%cQ5=mv!1=r+yDu+uD zpI%|)ocKc-ux9SRsJ}gmuDJ(jCqXJ85bdMs_aCgH`m`%WK>_n%n&x%lkG_xjQ4x12v}F&*R4 z-7H5aDEc5(4wL)c$1hrC{)^u9kyv8lo&fCVupeQKZ%>SUG6$8V%&GJ0 zW{N?H)z@67vUBekgKZ^zGnS)@glxRrz6CP7pPs>Wmos7WFN=9_cEA?hL9n9kly!bR12N`Tv7B2A}HGj;INX;{$K9zSRvZ zTuiL>3#h5#6Cpks?rt8S;lmiwp1v96+*K@R60)D-G@5cRAiiIEa-k z&r7?{y%lSD`S2;Ppx@;b>l9!3d{}()hTdtaqf2&RD?wiKdfh(#1| z_0T!Ob>BcAYrrfajE?#SOB@|*Ab#D&e{%5?ivB(&+m}o=d>>|Cik-9>d=$j2@(>g- zR-wYJ(cYG9%Hq0w{)XaQgk_=-u2#&D`D*+oFTRKiWE%l^%s$(v;t3PjK)_1mTN3Uu zv*N{*ERZD$7txHRbtp?X(Gr44&e#E$+YO_Qniq0PPl#&sjAt|s7>UdgwG-jv z=J9@4X?wMpFnSe&h*$Bx3?>qKaoxE64MY* zbNkD}-dR*WAU0qpzEEJ77tRUXVMo+hQUnuPwv4m0=GU|TNML~bBE;2{APX9rAK7a7 zC&&f^zt4ViZw=f!_X&TLj=O-bU`i|5Pog326|f0fgH@}Uymg-v|D~=OiVC%6yh@QT z!@hvtK37$&u1=Tqwa&|BIg0>!14f_tB>J__c9GTbt0Uy?&kzje!ETF6GFZ4}Jm1`aAWVNze}O?O6-K|A-@HFc##%ApcH4 zd9rhy4Ay}qB{Y)IR4gb#)f8K|Y$pU@yw$a2n-FO(xu%H*D<}knYM5uznDo-^T(rn}KSU0iElT}?pZE_W(Ev_3ybRXP!8o6J+e-F$dL)%YbRI`Vs8kWjCpD|!6?>FCaZ-}{{t z*u9EIrAqYhLEV^ekaBd)Sy*;ukc3v`Fu%Zf=PsYw&26n%zjI$p!tWwmrujmta9Ne# z@50u$HfVRrHM~2O6yorQ(s+T85MS<##LeP9)o9|PCv7=aq3FpoR#q^RK-odr=$J$?12!Kd zq#V@JevJlT zqNV81rRXoE)-R>DUA>Ix!((^7k+f*Uk{0JMDT=aI-zEW>`orQ+Cua9g;-{M<0wSNg z_MbO^xF?c9pbT^~WlI<8f8T->nVozG1Y><+q1@qJ77J;ga$LN`s#b>3ba%Eb9Ni0a zq+^?5OvLV0b#Aiy<>nv4{VOkfum1Q3#O)ruTe<3Tn+1F7@o5$uB*)r#kHS zYY2$K7(jN0-kwNK(e@@e*I>yL2W@SsS#xo(UZC@&IhkfvSOFO0mbvlB(6`q27lpVPuVU z52cTxbuudFK1$3b_mgRxS-JXg>Tp%3vqfY`6Pv0;F=^PM7@x~_EGc#$um>-XD3*xx zjq50-de`9`@*q4Hl-sN>7L^RNTU$YGlPvCf}ltfnsl z%g?R{5z!#?7{liyX9^`H*kyn(HV`-)RY~Px;Kzq%}3lAhN{QD-oT*Co}h~kOC*TMF6gL>mhoY@Oqjg`aohjFy?d&Tui zMhAdV{z@ylLEy!&BY$H*CaT%r*j5u|8C{=$7vFgh55`f0exQ+H3>8th@D{sz5O;B@ zs9iRJ?+Q+5CU&iiA4yeV2gvZ(W%}GvTMy=BAnOHDL{E;qDP&(<5eKB^oSxI{ z-$Q1%fGr`RaLv>9`NJb}qktv7Nv~^D7*;@*=`hsLbm)*po8Lh}Z_y_{PD*DpGxGnG zUK^o?3>>?Sp&2MWIY#<>Ddh zne2I@ng1J%=R9f2tkX{_3*T2)|M;P@LEmgGIh-YrRywta62G5|7pq&(j z6-H=2`@V-bfbX{TZNHXcWP0yEj6ClH{qMm(NSt=9&_W00|GUuq_kWWna}_3ubd4w~ z#%XRex9n7-n&!jP4@{G(l&rZwZ8Jzhf|)$nvqqf6q2cX%S3AiDvqg$r`OC==Ng~3D z=A9aA*#7-dOGfe_QIZ@rymkkdb=GQ+9@<>BlX7R9atnB?tjP|#UbPQzAM6?hU>oQ? zn5hW4Np}xX6Nf|@o;%VcPk}ur&)OrHp6r?dkgMz3opp>ZzR1y#fGPH(WUAUqO1&M$ zO81|x46qvUZ3BPK3>*BEH2?EoT+-M|aPQrzGYvrG3P2NzKC-eI0q|-^t4GT&#eu3Q zY5DiM%RYyNXM~&3SESBeH+Kx}RJre0-V@jh5K|3&UA~iiqsxCLd(n7py;KI{s9eg( z+0=1i2D@tL5vrG%Pfm{-E~NrbM>=vdcL3Jq95a!WU=4kYVgC(T%=%s;m|ek}_FxNg zKX;rTj8HXzQS_)mk z<5~CtXClDzgV)8@Vy3*_dJeg5Mu%ML?f<2sKi|}wy}K}j5TxYRpdf8XWQ{i_7IkmN zfvWLvLpOvz^2bZfPzd)3RuD4@Z-+5Q0pC@49H_PP`zh!oIkc)0VTD2$ziC46Wo7+< zGhK&T0<)U?>SS1qOX(13)(uHo4aZ~;zFd@?U%te^mW4_|(i@2(gl;K zD(A(2!;An|!hnyys_Zu_Q$0ef>K|0D8Sv zmQlzj@4{+kS|;A;Ns2qsl5%`+|C}Luw#i)BEvQ7x5EfTq3O3AUy@TQ%VL6tyU#tDx z!&GdWoL>=HENF;i?BxuumlW(YIiV+xk3^o9?)6bbGSM%Xu|LY}EYsFgkMpD)fR&z@ zDB(7tg6;S`|9aWU2YOZk15Lx&49*5WgfZFt!;&CieXunx->JmHWHJLu{#SRx0fM+G zsw29t#P3|Dz+{#9XCLZTQQcp+%$66g=|k4gM`!M3w3X`vv$tYC!^~(8RHA>;RgQgY z7B6e$^k&KNpYx`{q~kLn({21$K`&a=9PE6acj8@8`c-vrSKfX8&jRrX90p55_Tv0k zp>+{MlVP4aFn_$`E$~@vy3YXxa|9YYZum$etADWTf@({4A`rZ_)^?8!t*Hlp##4){ zWMhmW`JdlatRca@lFl0s%670A^xq3sB;V`Buw3jRLyT>dw6NYsrR)-UP=~4N zRRs|h^Upa1rxlL3xr~lykkR=_?&z`w`Xv6C1B10H4A{4i5}yWw#j|>=Vj2s`N92*= z*61E;&Z&tm&%dijncn_c6&ufQF2tI*)&cXOf{9Mqing5##?2e&WAZ!2OdM2lV7U%; zZ>SWt>rCglpJp_?RfsmJ2S?&W&3DeI0FSlgGaUHIIjd11GH)GZ>cnwq12#ZJYvo!w zi4j<)l!m5s6!tF(Qj!QM(Ew3r6i}8%>>`R#3xb^VzV`GD9FP)4jDuO9Do6n%&$sx! z>J@0=iCWmIn?97BvS-S6syBqp$}ACtEUesCK$Y!LG1YvIW1LiI)k)w%sg@ccUbD_& zYKU3Ku_MSR0|h#MPNb*L!HN3hRAT@|Nmn-ZHLZ6E?Iq#ldQl-ga7^lBrL#YXR5=lrj7WgMRuZ8Wsqh3q`7&v%Bdy z-fS081Bjy<%(Dyb)Ra8$RDGIP?Srk=0dd*+8PJ8w!FNDA${=*Zq)sa)w3s!OSI_6k zpuPGh35E|-RKW2r`#Aj2@N#FGJ8^~?m?w}H3zoJ3mis;6=aBiq1)2NgiDwW7!$ZXb z6*@gdx9&6@R`ivH%J{f#7nps^1Urx!8Ks>r5~4_&Oy$}44B*Fnr~2?}FVmiIs57H! zGMV5b_ThQvl*MAHKAyqJ5_$`w;?sARUU})4;yk-x-{NN|{<%0r5Wm$652G`^aO7&w zPdCs3Vw43SlLXbvbSZBsZ8QS`g^Sx9e@2v*@^kLKs*tUZKHuT^FT9B%T!9DaNpM4C zp(i@c$VvN_r{Loi=&q!tTM7dF;nNKvPMlzK5TsE3biv2^=Pax?>r{O0zB(n-&(hQ- z_jN`k56GH0dBVv)*r2txbqo7qXhUBO(mAy|eH3S#j}_y3+&#zTjUv3*C1wsYk4<~G;Ry)|T2L4S$bLpis+EhF7|&#v@joWhGhJE<;J2=>JmYj*SMvG?-<#t72 zj^_r;Oe5tM{h09`M^tu+u4=p1ws{*is79gE9JSE4!l)$$+C1R2c5YGVQK_the);q( zI}t8EbgpP@XOuBNbwCe7PkjG1voX8VPn%rXxEQJ#H@Ajevz*jzF$e!hU4R(Afo4V09BxrKix@Y`Wq_Z86duCIk&5<-_IVrW*OsS|W z*8dr(GKyK755n7wr*+aEUcTusEiX;Vx!1rWVBvY(%IR3IFUyx{89AYHC!jfJ zhQ6bq2F%Wu9HLsP{5eHb4A|{Ok|p*6bpjXeSuiYEj@?Qfx_)$rN-gXk#tg4-O0`$T z)?n8PKQ@7{kREC3rQwX0#tauLg1uJo_1U35o!0Z`&;p*uRzlyLAu~R!(~8rKNtZa7 zW}!M?`y3*Pbn@sKqul^Drx*>dqKq+Zj-12uowS5!DUxZWET1O10};gUGpp>2 zgz-elQCCK^_0NsA`xabPQ<+7Uykf#Warj}wK0~-#(b8OLxR)pj)o#0B_kVhh+`%r@ z>YFpt+_-*9yw%iY3;vR1zv@mVi?1raX%_T~6E`=e1!UX6MsLhG(Mj=j;-3D>n14DA ze!FpBQxgESTp_}=IWv)8ev2?p&Mgff#~^2Uh>JSw^(nM1wR(Ls`OdDq*L=}bNndav z1N%LV!gq2w4Osr*WcoHw9R{yIf;$|Bco6q1Z4a%jLJ9K(HmuR**s`%*3K*4T|8(ON z3JL{-I8Kt{n2!P=)VM9cU7xdEp3puR(JrxwpMBGx+}L93EWC5{BR> zGeI^1M+f)zd(%+L7a4?3xyu~cGx7qcG;S2_Y*bdc%M|^)`2WRIqJsd+?>^L`lFZJg~duxQjJM&x`*wc+zTOCAorM?pNNg;#c2m&4$gfAH}pf&uO?RH`e-K(7fc6GvenqP`s|Fz}Y<}hfKE|jF%-r+k1am^^mh3od)(;=Y&o2+h0?+Wq4hF3O{gb81 z`h-1O986S3X+~Y+kRWFOY6SaMv}&8s=gQG8 z8Z!yqq-*g+i6S9wv#h$*Q(P58Kd%e0LKwVbBYOJzZq}f9UD~<(bM^hzN7O(eB+96J z@)i8MPk0jE^L7vxvjaH@;x+e@SxqbDYl1u?;HwcP$9h|QMoLBP+N-U!$$_=+JNf!B zP_a1NYLW)w`4iv+yWDU1U(DGhnq}@lx(~>me+Ee>>y1F_4*p4jT$m|Z(@w*FKcL_L zYbTMvvc6(W+$aiQt{H#D;~94BUATI4F^GZIv|24whUTW|GWi=2LE=OTQ&UoOvU3eK zZ^N7GA^l@I=f0}2u}YERRygYe4PN$?=ovvr{8%yb4hNgG^j#F0j%c>&tguN z+qn?zR?q6}`{+D0x`t!l{Y?>>>Mie9&FAaGP;6Y$zhde%C8P!dXMca7VLij7mqDi>1_ouD)_&Ze_BPX{!{t~7J(YNUy8;G93Z^So0>a7 zO(UHg;=v z{hH+a-4-_P+oHu2!vHjKm9E#K8Bd|f%YSbD>?X;De!HAQB?6$Nkry*ubq?FB1X4td zbqJ$_h|6X5!;Vn2$!k)%orT>C)HbuIJ9v9g*_I%zpH}nPN{_?-=Jz}PaRWds8D(gjrXG{b^!r`_+nN2ji=p8iz_9-)=k#w2Q zJ?4tH!w_e-y>^(vHa%M)+fD~Zy(2qScgtX_F?<|k0#5cR>lgIvg*`tolT|d3~>@u)qMW{)>c*a zJFngU67h(wb~Q!Sdg(XP<;{jMu)2x)Lq*H-g18Cwi+U$9r%!nb@Yx(rYc%*o8{W&TJ0e@ zD(Y9jmwKnV66S28D_n-yy)jwfJ2QLDcg|v#<`dDnn`_l;NoUi^5n9F2Zlt97sO*4r zx6=GniP4_%VA7iEpG6q5XnUoBT0&0ef}zDeP}N1-29)oIkkD|b{_pV3;=PZxSC(-wnA7Q zRz9y1Ry_}-I=pRv?q+0JArTP@yO^XL(xh{59NuO$7FN84Fkyo_n9`F~5akV7QAX;w z9ot594D%-Pki9ic{hpUkXA9;KUQ{JX?VJPM6s05T=`F@OrS#x)sg5s89c#MO@Z?Es zOJz&bL&48>D`h81V>av@@F>CUctVEd|G0S6`uJNVqn+Kgt?B#YDg)48c9gDdW-EOt0)nPpUJK66BlaoF$QY3-J#4bC>jxYCGq>{g8Vffm<~3Xi z_i8_t1X&=O@oe3jzZnI3o6)#jWNOXkfmnTGJ}f=r8kplttKWIAAGop3<#BsAM51IT zI^1sAKrYT+{_Quq951blU(1-mmP~EkzEu)nC?aDy?{R?JMVN6~&OItI?wyZT`1Ja% zYVyHkx9%{Z{l}XPYJdK2cU7~aJocBs5SIRA9+w}+qWw!{XI{Nq>in01sU8*`O&k2xu5c1 zgK_=LEbuiim5EdLS(+11$ukgIx zj(4OYHKx3)oY)RoW^4fUn*`dMf4%riFMohE{<0ytVrcBt%648u`EtoN0_gGIAGP1i zycLHE7IzT4-ZZ^r6+On*%am>ffh?YxQJR(JWWGW(= z&!SiN`*qjmLwb3$-XC;Ya(?{lhkG1Qa$C2(b+5L33ck6iq0)+@Dfia2e+W_2g`7tk z_JDC7_uqdZ(%i@af@&#(@n-#ZL;F(-!QPHS&haSrMc!@3V$FiT!G?BFJEIq2j10nB zLg?)gOp(Upi!i@L(X07=??X3F^16!(n19jbuWjRZY*0OO`w`fV@tS>KO8{$y_^uUm zx-YzOVow|%Cjd)_zJ?$w&T@1j>Go2bMo^#MUCRN(q4&@eSLSCr(R_9Cm-;7$%01!1 z^)l!FLfT

x7+#q55q0hSr6sT9%b$hQfViU-HC$lC{uUH$AN`93qyqsYipxnLnGD zu@~UUqNP2xebhe}zBR$TOsq~;ZA8RnwoBMey$tb}UCuNhTn|XoD)NEF(==lgp|%{I z{S^0Iq)YQVR7>r9GF}okvMI#ju64j=*brHa69?DcvcCy#{uQI{WyP{<-;?9FCVW8O zP3RBRwUa7EuQyAj7dj*r$a@mv0}VHEi!WakeT}q1XA^H-qu6gyA7%c&o`NMHox1~> z`^!$6W%rrAdhS{9q+G#oZ5bnCLO00k!9IU!j<&R|Etl33e;(k#?nqTtKal8=KELNN zdB3aeQ(K3pQ~rbP`;w<GBlHID`^WBES z4j<7U0QO)d8{>b6z#YG&HM{1YG#H~fLA+Og|5$^rOcHlJWZfH0fFthX{|@S1hh4{A zpA@7yLveaZs?a=x>20Gx$Pra2^3djmr1B(NT8Je_``Jg#`Pj;O*dxAH+B52 zH4U=S#LhWNXB>&FNj*#xZ+?=ME0cJQYt`V#pMrOk=aEc}$#q3zhHt8fbc#%_OCQLg zl;0DrfCyQka;qsKmD>c{3C~<5cYp{1?=L6_Nbvn9*+`VVG6C__y_~VrvEMaX z2IPvgTv9svKSb0Ou43W@)v=pG_&20zU?n&ylJZ|xpv&pX>nijSTb;0CdTYLi*vf~? zdOlw6p-h`J9yP?2_=%8m-_M1ChS0cS`Q)72cx8O(6oq5e)oJfEbVM};ZQaLcI~6$g zPqw;O9$?u0@+NdMu$h7x;z$TqIK`uQvHT~QKw(0y2SpOOKO!KI)BM2r{f_5pWb|2r%i3TBd5{gErI(kT5UiI&`0qFEEJJ|&nRr?OxYX%pV2Drl z%*1_P83!ZvDmX2J6=4M!pb(G5gFdZ8zEWIfFarE0{bQS9Krj|Iq#JI&97?&Al?x|w zqd#W3zj)nOET2Krc=FPHJ^Dvxhm3pYH>HnzRLORHA!d1UElmUvtBQjpvZ)kIL53Es zc_Gr_(DT&RWvBW9XF^Qq{eV;y3RQAB7cjjc}PKqX+0c4sxs$O)Xwd7=PAX;J?1Dy z5^_wN!~T;LI{UL_G(X-ez5jmRyq%}F(i(a`T=Y=#FP-BjxY26-5J!xkYFk?#Y}FT4 zL$%Kf!VVb+Kdhe~7~GwocmG!{)AKw%{OXM=znz-FJG3nSCDS<7HZK!xVp+QL1e@DmFWLUNbHw9mGxxLivhf~nB0tsdiyxqy z#qK*N4a(EYgR*n;BGmbu>>H&9g%)X3k_+(ot@kIdw5r&A-`89*4+sYyD?Ap0)_xL` zebAM2R@tPSE1b4ptE_@!{Hd`wK)&Z5esm}*21D_@PguO%T&)XR?xALDlozjO)d(%y z$ma`c%1Y<$6BA6r&t(Xc5zV8u;$H;;=qBzxFCx1xy;6W-$g+j@E5C*XEVi zDb5c{zZa$Lol1mR5)C%=o(WMY$pyR!LpEx|@Sld9Vs6boDWJ~7>CarGxEKZ_L?t$JDn!bNzK-<{yZ`I*{(YZyJMDB6B%d`LqQ8DuXsDc0CMEP6OpG+aUQdN;5++Khejv0&(C0dZA-NnY^~9SfOMLE|S_ zRi;M|+nCCh?Sb9JO~^FR(!cZ4x}+dv+Ypd-fdH2ay}38@Bcx}tKgl! zFnHYmmkiOsGI2K%2e441tS*5FE-0cxi3e~BYU(3rSHyyGtHkAzy^wSn!187nI*(mXf*UB@HNCU2Wp00J9n#)W3ljsI-O4(-m*qPb-4TbpZV8qRzm| zFd40^y`16aW@oC@IRi!Cgozqc7xDZs5NyuRp!U;LkfMY$Ks`YiVnu2#+^uSVb#3Z zR7M>|RHIrQsKS3&oS<0eOBU>Owu;ryq^G(sr)WO^a2fI=f1t7XV@z!n|?ru$H506n)LU zF`s>NT)<#Xt`wy5E>^#$jL7BT*U6CWX4$o5EJq44`%>eL)(Wyok|QIt%_{CdzZgzO zST#D>**Tifc+D=0f@+mz4!j6D%yqkmCUwBf& zCJ~2j{T!6;5EY&>WKk+AyR_>nihB%Tw)yFa^=#Ajy))^CZE;VoyjR;@lZ!ms>pjre zL}=L<8a~csMU0>d<4orm+$>n8Y+If#FXeVlWI+YqdvBwz<bN3pAD{yt?RErM}W(P!28RZT5-0MkHbWzY7P??Vd`(RLjNM?f83?*1wQ|G`0Bsjq$T|6me|6_j!X+5R$_;OlU%zS+xF2{w?m}w zu+F4UvmwIwdLaY)fE%P?Gw9$z;(4ys`2W-X86DM5`!teS86i}Etv-~tV?h!snKyNe zTUeh7L!zLNoPUM8Fv*>N8mnh?xV036Yx`^3di`ivE_ZU#NI8oy!KFQej{#rXcU8@` zX_&1;hhEN?H3mE0UJWOcW!?V?6mB&Y*stAg%{SYjyT21c?6Ne;zPPB<__Il|gb!z# zeS&qs|9wT{zVAl|ZWE7*f>y#Ag4X71;Del>;eRP3thFUsq_j5Sef`fpGr z%8>`-&$R5PV7_qQQpSDzYdRESY?a~X7t9B}9q;jYE-k8AR4o5i0nsWxYwcR!=7UCa zuMW+@<$=T;#*k$5VfXsg+15&}$Q^hD))DDu(7exp&@YIYj+-3bK1)Zp_X%YTztb(P3;yjQ}kuCCWxr=OR8v0b{x; zteYY5TxNESDK(m2_MD~pORJ1Ze2UT>e7ByxyK*PUv|B5#Y!`5iS-Qv2e{`W?8M0vQ zbTs_A{t;i*GWErF2jBa$7>u za)cZt^zZ7Jw26)Y)BQD|d86gehlQAIz^3Ze*1ocAzB(i=ro0kR5b~1(?AW@{lMKhP z1)S-4%1iSZ649iecMzeann0t}vKw$@{7-6pM&S2OI|;JvVs^$Asf1GSgEe{`b;?5C z)pcn|vHYEsmf#sdO7F}8x;>Z@q7}f2@kwb&+^7}DsHPfX97;vUGm;Y6Ir6bYAOp^! zITfZ#TSk=hi!EAuABna2vI1rN|BgAe&N99^j2hQLkap3+tw=f+Our7HW^}CR<3uaN z(RbrwyF7qb5HJrUGtK{UIulZr!#qK(E-whZl|q8AF#pob%PjnmImhwLG%L4Rz)fq6 zEYiX>u7U=F9GL6TCdUfP0i}Dnc9PzfGgYBM!G^%e1X_t2J8tkb@Fm6*rcrQ&p|-~q zljD0(agE?ng)Y8_6@S+ z;PSsW3D4D@bGhu4D1MLmU#TEfKVkNUF6Lluq(#1W%$O2(Z!{6Z$%D1xqF`c_uUJ?( zM9jeXW1(c3Xg|(Lnz?t4H?ftOV_Hr;FnSR3+4X7Hy;3?fM<@};sv$IR>~E=DToBsk zYM7=VT8S&i&QvlKnna{|^f4nmtP^+0U5xmGY=zN;27*9ooR51rRZU6`+|RX>X>S#p zc5n&GyF&sOC%SBd)2a=Kq>jr4taVeIUdX`+v@L42%#;ifz|!O!WLY8GZFG%PaaprQ z@ONib5}yYZS$8bumWPpS#3~X1*vNAW?Me`%g&w7#B)JRD1-EM_4{xkVpnCg6V1MNc znZB!A25S6-4);{&4`lO{cPEAuMx|HZzKnG~aT zPx?&Rp=11po>5GV5G3iUIGiDMq@ZEj7Fb|kK$nOkY{k5NB;TG1LyV4J_O#CLu2~0B zNqZ+iY-X;vHe0*=}Gn+dSUtE$-`jXKo!5c-Q0G!UiZau4u zk4mJZuEi2lsS~>|il(I_UNfrgFg@g9qD+`N1E`i)-o=U*u@`3Wy{PbKveW^26%8)X zP*sFk5N*4JZQE-HkXEi~vba({u>X1R`+PF(GZcx{q?9JiS#5gvjYrAqBLr6s{{uQT z{gD)6UMsBviG1=zQ6>pkJkClpWta6CNMa*QGNRMBL_XxL2^gZxX9Mkexjr@|Y?=gU z!$j0RwbYMs^hu=jSPTjWJ-S42T4bhWstaWc;n!xg8Q3%KQz>+C+^c>1N&h@|(HhQGHj8$eZneaYbKgeb%O=hlIF=I(lUy%89Y8LZ z9xmNmf$fi2q3n;@0@T5TSNCT)^&@hC^y9d&2Z07UALV_eZeBY^s%6mvL;sW|hU=#f zBw=ePj0=oad>L)L!KR1#R1Wrc-x9L=AnEo}G9Rk}MNA32LlR>4w<(*D=vnmvA66Fq z!;p<99VXm!knf)R^P|QehI7}#gY7qD(Kkg(bg)~LA;>aGkj7m4bhsI!pbBs-RT-Uh zPnM{tFt`Z8t}ki%rp{z#`-p8xMH9%hQBVgwweF)u%)1GNmtUBRUqhOg-gF`&JJ~LN zy>B*5j%Ovk)JWibwdv}03&P}obky`ky3>X`uYLnvZlPX>7u@wLw9TkdxJ<-B+}~_1 zJSiK%rLaYc0)*%JI_0heLU>E{Z^gU(ODB@BNoQp*t&G>bUoN<9cAf5uQEkN%MVJyT zmzuLd@o-o*3l)*a^9&_gu>p@YTI?S(M|6X={jr~;DAb1@RK3k+g9!nei0m|MFjE7T zfqEa61(|8bveOI0o}TLe;`HIz5!b91An;&IpvkgIpmtD3t4&Jzd($v3&M}OJZU3f> z%e*ep^Z8KJ^taGpoRvb`F;Y2O&dAWfM!hS`S$m{|EKGU&w%B5eeQ&4tF(t{thM#_X zDV=r!5IJ*Iy2355fG^VP5~oh}JlQ{!vv$&7>?X&G?-(8b_1Ap&tw2|mQY-YdcpJAv zs##DQL;XJ5dWH02th9o$Q>{mfT{2PcApr&uW86q9QONaGM=f3$iwPE%fm>nSM*J9- z#~^pTgZBVQpt5P~I&mqe)J*t{6ss%k9VEM ztYqq6V+0`KHrwBDikPdU-1HGoR@IIRgd2$Tb?0_lo?@0JsKEZ-=b2FV|JAs{7v;xo z2OPCqdkj8~^qn%A(V~y8IF7dcqmoaV;!IYUuS8}0BCNGMtcAxEM>X`5yqi7H^O<6s z2^Dt23yF|R;}i43WnwLEMIN^u5U!*#%&eeCHc;CG+!H-}#=?>nI2N~-A!eq3QkIT= z)Yfj(7UtFDhKMm^iY#&dvasMjj3Sl+^X|PG#im_yg^Frr$Kux=en4%D|DLYRJN$~d zZi-!${FOndJJBQ(`Xfy5Czj=q*uKbL8fh{ z2Foiet!YZoaGHkwH2_lmHM&@V5$O38>V7Lo%Z-Cr=+vOes8NPf5t9|%x+(VGk_*1% z9jJwtiXGfahP(hd0VGCtS;U!=Y)R|N-It5A?bzMk+4YGdaWNM$t!(^$-N&3JdB;Z! zU1ddN46)*;=SN_GmcLl0MdUB)TL^y}wcgU|UyrX)ytUQxR+3yGv1(c7 zYhPDA;;P1YkegFRi7^wGKe^s1B>wj}0g(dJc3cQ`RDxGt zgW9&usr@gqf-lKJrmrRfy6tRbKG+z5x>1L4PY#fnhik&x${Ll0*KdnpFq5xk3uazZ zgnu5HL?nj9v`5@@$yn(PN=Isb?YFUtAYochU!(5o{wC8;FU;mgs z@rQBi()HJtDNeC_J~S=Zt_uiteb}@*wQh9hOcbR5&C2E7HB99K>O#{wLWoO7DqIYM ziS5PBqt&Rkpl+N>OyIIWi)5CXkT2(ljeI+Hm|Y{Gi3QU7?wjhDKVC>XV>X{>>-19@ zaqlv8!kO7j#?7aQl9tUYO9h2p#|C65o++TXtSV1NfB9&j;&QAa2=JH#HZVn+!0J8E zdq_;o#FI@8y(6eFKU#gqsG$&qmSjU8y(4 zk6OdYV+A?*F;N=ke<2ij?f*iD3t+AzanuQ4xd*)!ww zrx+C%D9%6sZ3jiv7#DZipQY-9i?$w7^j&XgH@#hQ&9oMh1UTqkav)I&iLa83W^IV$ zXhPAIj!UIXrUK@Gi{t%mpb2$G#$;AoNZ19DB1^B0ZkQ7P3MC-k&m7E;`wKh%?M2Cu zjs7F-KMe_VJcIxu*>0!`vs?p#|f^K#Gb)>V{ z_PuyNOmeGN=O(UBe5hdjQ61#*{WG=;ezHMTMB{iN{$*?U4`|JeIBW42$Z_gBWR zMU60z_GPg+js!tzZu^>&EBJD4IOoU$J>KWE=F z5DO{SA!jQ<3HGNB(%Sfhi-jMp-1JBES!n7EO|W#y`y|QlQ}{MHZNHDOF)d5~ z6CHvLj*a4r@yUc@`o?zrIS=Cag{5qm(7MUt5>NOQf^v&LG8BpZrOP4 z)`MIUZVm=XM|aazXRoRqEL>*{d#EbyiZ+&`1HB8iREFfApG@NkMG!e}%T z7x{sada!OZu%e#Tx}fPmS(>++-T@9Ktl^#qPjXw*(u?}rF$}gcs(`lHs;cA+F0oV=Yw=N0en<6E=CATi4;E@|HJA5{ zoNKJm|Ni2rKl($C`#&0>6`A`Pm01Xc73ZnJZX;!W>HS0+PJHCYEaBdd`J!Mag@ql7 zYsQEG1;(Dp;b#jwF{z_ij{we(kSSE+t?Z0pGDPDbOybd7xOp4t`N#(eZ+a3_6d(Ss zSX5E#LufULRr)~Zq+vN1YIJ87?~Y+^A3Uci7HzRUT`q6I6KE#jn7wi`0ro_a1ePis z7q+hVRb1D{7hpmmq*1ZuLeX~yM%B!pFB`{=!Cw|vb3w!;1_P}duf>R8oO@it5|M=D zUtS^-Vy-3Q16lMG&_F|(cDnRjb8nyxPg9jFNN=h~%3RE2L-Wd@xhO(I@jQJ9+)buj zF*?$}`Vc9rH+rXRpTjV)ej>|}(#y7o$B0d2?OFGDYf4bA;fRnP;-xqbQa3louE5$% zIW*(M`(C4A9`&OYGe7)fk}{Y$3e@l%w*7wGz`vT=ctl_ZvS1E_US`6~2XVp*xfg71 z-Hux_shg1V>E2(BRSf~zN8I)DG29gUxUT19@j`EPvX4gT8FPOUKTYh5dW^fNfpG@~wn>?c>ckfF(W&UW7yOalMInL}G&T3atwi(-@+X#V%yxZ#-y`JAaZQOW}GZXpL(d|4v ze^59+ekLP9?qdUAQ(T;D&Fm-4U046HF>b@BE__c7nk#(=a#g8HgI0j+LAlEzR6hag z>i2Tz*FbRF9O4U$^&>42z56WlUL@a6qHnR)<%KhQI#N-CAr<8W1l-D3Kd<(lUamn$L%kXWsha|9VDk{fNINK=^Q;aCu#d@np^1oZIQQl2k1I3%4ee*1CH z`&gd$6VK)78;R{^r1|X2|LOy^P26~?NEB)YP(NQ^H%)ZC+9B$QpBnom|Do|#IJe-H zQR)xXo+3JZuJrLT8W_|k^^UzY7tg*F51zzSWGeJ7aJ%>acZG$KC*AxD-IL_=RLy5G}Ii6ZMKEsf} zRfgrK{FRJAIvB#7Fw$sk_@iIAU{E-S#aD-%L7nqn zzD0YIjb67LoOL(6#mLh zdHBgpe^R~Jw_B}Fi4wGchyb&M;~yjMzq24*d{I+bDi6ssZy5ePA`T{8UKO)+;^??6 zKS2F!9q(6dw_=z)5D!(7H*7ClGx*kN#chmjRp=Gwl6x!=*;68L`I z*R>wvEA$#f?ufMRSo-y&L(M3}Ht-6BCB-mYqf0+Mh7I%(#4~lCbh*p-(e%2~mfO5gGFz zRz_(ZLjv2JL^}e>F0^lP)APA+7}OCL-FXscHf8Il66IYecyc#A^L~;;m5zJ5gq{H= zjg#1V{L{J^KTacU2^9GEu7EQ$qPmjsTC@(*`w$lN42;yFt%&g_CR&RZ<(5pGYCS$b zKIj`&tEjf*3BkcU!nLLqfGy{lG@%nH_ZTHC*$6&xxnSh~B|HqX6lvnyAtFJ@>hBfM`6RRR?L_%i0)(bdbK zemsGZq&f3vhd}KdPiOT2JIf0S8B=!X#GcW?H++^0h`Dfij5|03Y)s~hL)iLZ_kFeI z+#j`;QG2Swa;6qi)ihnmNsAXop;Yq+1IhKLCZ0(X*A31`&37bwupr|3Cr>woq4(BZ ztB5AoDL{_=$czb;%H6}(vh*UZOt?Y>5C1~6TPe&|2NE`u6Y=VaV?Iht7_6!>cm*)D z7Svfsm6|o?0FxjVW?sH)B^ZtYJ?4ph$NaU7X2f+9(61YUkFFB1w3GWCDah80^Ge_e z)my?ZZSOl;!j4w&fEp>*+tI+QvBDac^|Gz;op!H5$*3n@(vGZk9`-qqJI28lPE?iX zv}mLs_8Go_ci1c>J3Wtt&;IfQo&iAC;86Z4ZHY;zGBZicj*u;tM3Rj``JP%-Nn!Z} zTn#ueLqx^<~)aI5eXTpzq3 zE2y$ja%#l{X)Nx14NfT_LW>Bl{Fhe$*0)n_HX<-u8K75TjL4?za0y z$487@?bFf`$$Gj9H*kNTU)}ZpKb*0v75J$MLS*W9&RifEKdtK?8K9$cG<~g^+0E3; zWN{&5o2r48?6l!_@`Mm4>m4B>LZfl2H@jD*9Z{i+DaqYv{%8o+1Yovc>Id-2gCY&P zEuqSLr!DWMj~P1%+sRFdtgL8KHG?Iuu&UuV)N-Oqxd6}3MaPEF-Bor~ySy%RMeqtB zM{+aRZYU$};sEa%ewx3FNg^h=y>)YUyHU1HdQJAu z$PE%6Pu@Uq)5lk;bEc3Msc|Lav}|vS z4*QjDRWC115;`8bXzy!WAKgeRFcf+}jUulcw|RA`gxtNUazJ%Rl(~^t_C2t&#<;!- z;@FiFSw%MNse&5?Bz1WY@|1ON-q%Elb64Loh3PS0DAMj?_7sBG92%wOj)&UGzp&{Z z)>^M(4QQ5LaTQU-0M`<|QF@R=V*80K`b<8Py^zG_ zB#DB6iRQAEK}lI1qpUe#45M$?e{0#-ErQDSmEA`L@c5r_vqedCMs%51ULJqWn?C4G zt8n_MEf4kOyyfgtx0RNaZDm{89tl%GDz0>2X|pqvdL(9E&MU5+V}3HeM^#WPU-iYZ z)}M;YXpQ{M3va{QuHcLC!w}tv%{guJwGiSix@{zXRWBcV4~ekiAyIi;TuiXo?p0uG z%s*bBK-2aHk)=?b4QQFG%{Hw53Hjf@(INPoT&ncK4?mT?Ri08;RcMH@i+VV=@fudr znq%2p?lT+hcXyVfAg)DJbGyFT#A;b`FFz0q@MF4qaum%}!C@WN27_U|gtHvi7^!c2J&vvMQgc;M{Z(*&Rd3LHCIBO>%>#XR$WC0$2plc@4ntGzkP=`@z{N3y zC8=elUx~0P5Ug%T9k8}a3TZ{&fu*>KWjNbt{I>)0+QJO%h7`l}`cC2m1TS|JdMr_T z*Q9+Tp0|h-tLKIMaIyNKeel71GqeqzHp94 zImIuigV`+nqi3&FopEi$=v%ozo6!$pSW29i(!{RXPs2TUy6WM?kGLE;%c7|M_cBQ3 z)s5NODHSDGo2hD448sqXTr}vwL2Z(>0f*UE;1FNgfzw8lPg zI{5Ob*|S*+KQM{*qD60rTj3gj&2WC7$L_V)duv5Be+{oF4+5e*_ozUGW0$Yz{^&Tn z=eQ&e1+#rxT0nAXUtK&x0$DmSi;D;-Em=TC?*Eqbk^k z0b^ROg@CPHq4QMbG&<*#UWnKtx4T*;2YBI2p+8Yqd&yR{;ms*!J@_hZviPItK8jx1?kPWr_wx87Rane4c`^&lhN`-Lr#Q!l3BO zPM*1lv~+Zn^67Dz^EBzxg#9`HJGpohyNMqNT4+N!ifz=`4TW3GkN%NHl%Y9%yIyXZ zfX#CgLAHr{i+WEB?r5J9CF4u(sde$P7Ue&dH`~o^<^u6D=Rgq=PP0n6fM9pjl@STG zr+XzH_VD&+BfadyHL=$EI^m7VxV6=j`A`Ar#vP%Lb-9OIM^1YFsrzkt!+ z)a#G$2IvU{$O?jWjw-_=30#5fz}KH1b>-DGMzsC!7E{R~j}Iojz|c`i!$LJH_cC#D zsZ@pXwBM_M3IHTuNlKM11JVY(M#dcbWG^cbi8*?66O?lL6LcBguMGD_x?!wh2D!5R+6f8Hbr|_6}O1 zRZT|&#VFG$m5()D1FYK*fsa}LiL@s{u&m`2z`ny9=Z4tb%%7P&iS{IXCOpN=FsKq^ zVW39wOEo#1bzjpkzWi@Gyi8c(x_0Iah0IJTp7<(r*&9U(s~4yl4R z^kLdA{9vb=L(W`e2fgOwr~b6eTthe*#0lN(5L`~As$hF2-8$h1tE~Y7hpjd@Fw}vL z1!uwXEr-=3rZs5#&2wBQW|ECCpY)wPv4dc8zquu?7*-r$o&yfcA4Y0CLFJFBY|zry!iRvJiRchA&g^C=Z7_Kq08TBei?!m)bHd%cdi043G=M#8ive z?)&i@`RWOK=vWra2I-R!%b=^)@}uqDeKX<{)F&t~(^u-P4SZ5P!ap}N*Y&4DhEY?3MLgY50N&nH801F%#O0M^Zo2bBxB>@)vV{vYOeG_mIth1XnF z{{{HG4revA9K;5%Hkj=mi((?AuOX!3g5a&;67qUZGaT%d?)Zf&niVLHQD=0046NCY zk3+A=B-kY;;@zMa_*MWeu6tr87ozi>arDoUZXNf+y0STb25jkAh~ExT-e*OlERSw! zV5RPtHmU~*m&1fu3*Z5nH=bd$?Vh#ZTrvOBDKpd)Y?kfg4gyKx1Im>leGRU!*zau( z2T9V|%Y&w<)fo9#97#eFAA(Mpt(E5PRiOgboVd6Bd(}$ej__P?!0s5mDC_SN;Fb@u z0hC62=X8iAV%A;WqVh{_i%zV_w;g7(lBcBDNQu?*SIM)CY1anEi%4n;JXlS8Qli+&-Fsf_XP}Qv;?A231&-;zn$q$uF*EQ5mok_h)VgTu6z(GmfO(RiWrhuzTA^clp)=T z@bRxy$LrH#9ja3uCJ)C#mF(}Gb>a|$%`MP_zHD+_XMRXNoL-=jf{^HKLfa0EO+XZ z7#6#oTz0uS*u|m=Obhc{2_?>eO?!yz!WxO|k94|t%-&5`&2FzU->HZ|$}Ty!r^wKtMX_X&gUiX?MhNbe?PzlV7q=Qs}g zN;YJYI>x1Fiw`_)nOa3V*f#0o^1E9X@{h-zBqngxKyhkon(To&!P)gXZBqfnWkD|XM7y-i{z#Edas8lfJ zuHmWPzq?rz0%Y;kAZkddkCA6>WcA2K|9RNfwVs>js`sQCii6D@mKXQep3AM~RHydb z4hATvB#MSsor%_NkbBrX=%V~ZheCqKn$d#*qn+DxQoAvH>Xb?;@i_ELq2stz^s$ZQ zpZZD0HX7Gr)vVY!7C&LVg2`zU5S@|duOpkMs50)U@R}(wy-j-fuTf7nGa@d}X=ZOH z@F|;7W9gPj8r-F%lg%y2v-qy4hV;Bi@ETJ9%%EnaBT+TOO2p&QF3yPGyuh<`wHXxEjy=u2EosB+S9ezQ*<_gtU%OI09g*Dc5`G2o|8W=3M$ z?x$mKv(Z>>Ny~U8ER-A#Vu3`BciE8S;&6Nw!oH!zGCYSPY8G=n3b6v$+D42Qb2}R> zyp!`ac40`B8;_;XS%shbdn2@9FEqXRl5kkrlNSe(q)(1n@JWtQNMu4TS*0dl2-gzg zW0e_BgeX)y6tO!tn!t&~G6k6O2bU=|IWi8E3t~W0e2@z`q1Ode=zP&VVR<0b(3wqC zSZOt33)(3^hz5LeYNPrCA(Jvvf?D!IvQ&Xj!Hqiyd5EOhNTeo6SU!E|Z4 z4A?al-C%Z>-(hCX2LKSl4;$z!&i0xqn8`Nw-u;A7j6uSR69AK-o?vs-xK#1fR*B%)hc^`G6{d45yG>E9{IvILQbDV>=&ex96@x-JO1P3jgD`&#y7 z1#=BJ@*8+#nY~T+W;H7PR5n*Hlvq*&d0$>7>aF<>&jmHJ1e>H_qM@R`-O5)34;E;zl9PU5{iISquQPPL%w~<6aZO+xWqgl6IC4gGCVkug|t`z?-PC-=YKqz=7v1QQ_w$OsPv!IlCGDtRBEgn@( zhhZdiijU~l=K+MeOI956W<+w$tp@UAD z@`8>_N8AULcHk*^f2h5l>i54%c>N6X;$x1uNO(SCh&e}>Ha{Ljv5-2ZiP%qOpm^Z|+lNO-GVczrc53B&Honc!gPINq+?!me%7NPWgFQu$Ekt|tlNK)T>07$`HZ%m{c zUPj9Ja)gN##4lnO684kg^`_u;BD^YM^fjsWeR-Dz3uNct1gku67_am2gm~bT>Bk^J zdM^z^m%zGJnkq6gY|6C5Z9|%$jG2k+&mb?NGZASPXdA0zQqr@7YMRMhh8jXqGZ}PK zRVwBZ*L{HfqxJ7IL`hVOj%^vTs$S5|a(_F9(RXF7<9j1XR zrgoI5q>bM!J20Hpq*WAe>*+mrrZC*vcq1oqw#1nc9GX*<46;?%q|@EPT*04VV)x=z zIxq(ECXn7wo%^DfQeft2jOwYp!oWI}H0(WLg}0@Zvf;n}v;i=9!pgVX zvDF6cs%V?z!75Gj*3?XGn>Lg#z}T{M(*g^*?nQNTz0^m=NdP(|$^iq>Q6;VFqPrGY zHNU9Z5LPZK=?i`t@4XqbQf?%aS0c#r0t9oxCGz@8ee8GQBY54(cYV{7H`gz2sh(HJ zy#Ch7O_1fNpa0;` zKhEVizSM8$%Mkx;r;5QPZ=`)eA}X21U|KGPXcwEiI8eSl`aDq0Q!RPL_uUNR)yPEs zmTO#7-PW+T@%>326b#c-F$F*Lx&}uv2|#bQi7NQZ+#!{}b@=mq#_UzQ3}$02p{!_^zq)O9~2#>MN3e7QOB0fE1VeOmXc2C z)Y<}Oe&H){^kWG>Y8ZzJb@j4`kc?U;9xrxZdyiYk!C#!hOY~C~A?cPuLk*0XyL^}} zD#ZhJuWP^H;zBCfRS4(m0zuoPo=4ERJ5E&%+Ug9J+^auocTPyf_>6fRzQ(=a#LP>ldwn}LZ$K<% z=emLF2v8(=Q5EB|H(;W_AY;p zk@RHrUoy%7eUY*AAH|#PywaHgQqOJZmcMmVY7_yu>aUT=0&l8QNN}}8*f_)H@QKg2 z*JD6PD-ET?Xy24J>ab;Dy8Z!|#vX-VUf4`cDc5l;{|6Qb?<@t4>i`^|6Xu;JuQ7d2 zEbx1IoGFc2LEhJw&-J88>`NCf@62+R!PVad7)#0@(vbZ3O6a_}yJcGX!rE|YG~erp zwvgjf^wx7iQpNw49i^5WoD{zmN1){sbM}cp4-2D~)VUd(2rtv7ot5V=DxSO-Rd)6o zysLq3A@59jc++-`s;SBQ@1iFk9x*-YkA8GtH{u^5^!rf{>DRb`%r5|VlNp`YqL(`K zT_X!>u7P9Ws<~M@8tZy$!mlf0Wmy4eU(A2Il;%aeB9cF-8giP_9EHM0MmH6F3lS1t zGYAJ;VI)pUc?L447MHh_L4|l3&LRiX+nh-zIh#*`_$SG~oC7rke(;a3TEbLnGP<$e zcDh6HLV#D%FIJeYN|^l}q5>7BVAT;s71jM!ka!{Z`l^Tq& zv6#=f^|pQ@55fxfQR3hTcN1^s+!*rgqv)CXwHb)#>d3b%uH3D{kk(EWq266Twjo9B z-{=EU(_XAh%j-^NOLVqa?s{-(e0)$`(r|06#7iN1dzZ_%>>WZJYF5*WxrIZ%v{R z*K?2QK}|~Du>v>F2f@M=M@TJLx#50;L6q6}L^){Zf*KlBSw`P%u4u24!`LY>!;GlX%kncw>rzajlacTz| zxm4j8a=dUitTqk6JqIZiZW`QpIEC`w7zc_@qXf0r@0aSS)$h4#fCx~Yy9*%;HHOzBd-@<0 z<{a9+!~CrzZAczWXMsF6*2c&M65 z1N>fGxE(c|i9cBG8`}6kzc>J{gB5kC$>tj9jiWAEYw6)YwLpyVH^{Y3?o<7#A#Iwx ze{c%PPJ5*P=AqFs(@*rJC`sX&i7O#8NvDX?bT|oCI{;2#7diF;LA`kDN1A80mhhFC zGUIqr*tn$%&xU55eULkst?==2JHbu@G-nn}f{5g|rN~9xi<7hEb+UEDbWwRZZTlxfyjL~5-&LjM=X?*@ zv*jM?V-j}VUi^+$UiORkc62q{DZ(3h@=OttqH8)3#*$*vr?|}1W-_Ld;IPO!QLi=e z%+a+qq*c2|9J0L-b)2VQ>0^VsGs{uK#zk8!cV?Z$6CuoX?Mr-3rn%%29|7v~_wv)* zG?$+|Gy39(Uq?TZeqJ*t!%sciwId>D#Zi=)TX&zjB$Pd}T~R#Pydld?`fBfb4UWD1 z`Y1mOXv>GB028~&ujER5t8&hGnMT9V>WVRaMH&%munvb2;V3o8@Tu*XajHDcGy7iQ zn(h+q7)6GDA+~)DK>NOt^PL=RNm~AWVEG}Oh$1mCgmGFoqMjq5p?DA&)YOkfMf}vn zVTxAJ(VMB9nvMm%`t91drB=9cXI<0$yzJIzADp_jp7*laL55X`;{Z#HN!G{H)ge4! zAG)$A8N}h1ctS%jJK?riPM*kom$0vKOiU-ec&U#Vn)dtaB3`4Y2F!Q7>=6BGFVWoY z?zVj)2<&ZoyvD0{odVoK;OF446gFI?ezCYZxy;Q%Qn5`Th`;j_e2*=NtVs z19`4|&z9wXl#?|pTpk~*g)wBJboOaONqH1~gw2Bs^EA!*cG59h7~WLnVePZOX~Epf zgNAo3aJwAv6;1I6#OeH-1}ifib9Uspko4+&zFrh6LQfVsih2kq0QmEoz7D@#Yrg0k zq5f3HZt$?)-!iYg-9F=jk@KNwfnN`8SREtL7`vy&!Q+sSXloD>u?%oVI!G;8I>v$p zwfF*ByhFtKaEC+$;?p&I^pcF0S;@%=u1qa&S?pa~41Rx7YUNpS=+6({w*Kpm645vd z8k`dzHW97HzOMB2^hxgZcH7L{Z!os=<=tbh2sSxhe6zde5W-(6^_OnjEeJzSFn39` zOlbhu2}ge}GdY=74XwGlK2hTJDl>9aXvoDPAUyKRS}U0uY!%G$j}Lk5oJ_e#2z~r1 z(R%-hL-$o=cM8wnzA8ad!Y;;gN@EyC$(43OxR$q|moooNFBN7K&*5MYZN~`m2%mZr zROnlawia8k#FZ9o!OZs#4Y4&+OVy@7mzde@qNz} z)a)RZRE*u6&)j{zKiim88WvjR$AX@_T0rp`!Qp)VWz{i;S&tu{}i7KzwOzl&X)!}=c-rb{MEj{Zdk#S(p;auveGj+A!OhzRR$*9VO(oN{!zM3eR#%~y2YH~NB z174zGC>B<5gunv1)9WaVZ8CIqNVyjlDCz38n8v~OR9Y*XCi27p&Jw88l)JXO0k!R)}mHj+D*xxx>>;rrKJj-mA0yGCnP`%T6ZPyY90yLOa7HrKhP zQ-^<+x3dKm2H=G8iSO1`0gQ4MuK&2I+rsrnV7KHMHwT>Datf+b+V7ZpN=aMcW{iEq zw8n5TDE)qt%!WaZsQERmJc4d|tZ$c(lPbt!pr*c=|$Kizvvl^aDMHs~bbb6m4IMl_%utrxfMe@pmz0n-7@s5P9hXjV7>( z7$~M_Ybg|WmZ|St&2`Bk28vy|1_u|GXF2HSM9r`?CuOiagBnpeT+d}f@707ES@eJoTZ%QHM27 zx3X}ru{?o$S0&P0x+%FOX=uxk)NM(+Y#7`{xP*b9W;#Dt66>@fe+7YH#vPd*!jQpW zqIg(XxJEPaGu|V=oqw4ti8&PsW8qtW|J;>f^I&eSx-Cjin=f77k7WV~c2ngl&0$RO3rSVPU6*{2Gb=O|Qu zy$up3FceuaIa7tsD|M%}gi&`iMro3j2r=9|$b)in5UMIpwX0^(Fig+_p6ku@X-;oo z$tjmXUn^P^;{F6gZ&oL^S&f{K>L_c6_;7OWWjks7slVgP-T(|(k(OQ(eFYXHIz+|#vUbBKkVK!;mMr1G` z_`*%-BXf!LIl<$1_Pu_hQOI;;xzGLPSa{;vGz)ZddB5Zq#^*~oU{-1$Zf)FB;rx4_ zEpGZ3iC_>|M7Zy!j8uNlK_mImM~3WSO(n8|_p!!q5-fkQADw-lt7e=To)?%5*Uz(Z zty|tUYSFRNLyptWArmQQUs;W`3)(nvtGE)<-m2Q&b+-5dMKu_J-a-lyDtBz2)f+_` z_h5Y()h|f&Z$>pu=p{_)lH9GnPfvc5#O{LW^L3uqpWr`H=O;3S%d=$ z5rar_as8k=QyA^2cla{|QO!I|=3D;YE(aF^cj&VZ_&JJ{jbJdQ`qTIcA5Ku8Yvcz0 zqeh|Cp8f5w6UF;K)9L!EMwKt9 z*M@hf6kYm+A+)JzXW^f_2bF9@8*D(Me9q?M*vY46p&j)9vhXtKYCjCMYHAt}w#KG4 z^@u!vu|BgTkFXUYLi0}_6pEbBA>RG3W7~g5;v_8thkIXnl}e-WzNxkM{beEgkvi(A z%m@B7m>vS{G5%C!*5mL8%N?Fr)8F!~LKcmfhSnD%)^taCD^BwMND5He|6RdCa3mE&!!M|vh7rDROqbVm&@Oqi1Z1doV z`n49zo+B6KQiU-o<#S^K?3#mak2a$3QC@Hy0Yekl&BSB_BE1RO9BD6aIg?pSTVQ9E z8stcjiFt{d)xp{)cP(h;bN846;Q1RzYB7%@tsqzo3#1Xyt+e4ThOKs2A4G1?a zB&@R)=2^FqI5sx+_c*lDnl-o5$jYxlqzV#>LXQEN;%(JwsYbxIiiQzCD#2V|kGgEP zuwq0=G(SkremOR>&g0#AA&&8eh zbJW@UFK=c4rm|eWc6xA}N_6>ar)W0Ldi~VfbvVSp&hpZRD(ug--ksQHQOlt=rf{a0*Bcqp8*&t5M05)%HbujP&+&iIqJJ%GL+?K~A-> zPjE;mos78lYrQah6{>&GYfe;jQ&*czxGXsMXt}%6+F-~^!lW?Xfr4Xeo&7OEv=_a& zodU?;liifME4ieZ`zfVCIsgk}>*R)E>2AsZ3X42TUn-=S@*9{K>wuT9Z~}o_gPW3~Uoy z70U^v!ot)XZI5z^;AJ-S-E#T1#Foz4< z$f_DMa|f<|zJ5%Z6rQ{VaRYxhZ<}^5sW~EiW?cAD!63cglyS%ljYR&eUz}SN$9WsFrOR z^A~0vb8b5v>d+Zv)bA{D*Yjja6i%Tjg!`x6Kyjj^q(VcJ&qb5;3gD3r=6X_w_omGb0+7q%z$?nUJf6g=ld1={NEb2yzp? zSa{l5^a-ylx0>uH*6$}v_d-*VQY{oH-jELxoz+_xC@R~Q@%nGTQJc+2T-T&W)amrq zXSnqp!=<}ZEucjB1FcNKRn~`2Ba#cNXtY(ZnCeI>%)e3ZGOiv z^7C066sm;xHSKxS&}-tV7`OSfRmU~HVW57^1$7fUjFWuz-T$oIQ)xfBxgQCGrDPn_ zemuh5x_ufaQdnsiW!+in!}Ay%9eIVXhLABJ(e0%6jPEEwfY~~owH4T~db6vj_h*8K z36%(=9$wNTi2yLcUF3`;~ir@a@aj02Qec*sID4khiXdd8X) zzx+y4&_DIih85({&&_gU;AmIKU(m1YTK1dB!2gwGU>(qfqyfEz^2u^-pozknrs{sh zYAj&jvLq?MNDoJmvATH_3iXgFT|mM!iES$AEOKAt3u;j2jLK_Pl32{;OJ%fva*9%;kg2Ymcq`y=EZLT))9voWl;jjkmZHf z46lUxdvx_3Intb&fGm^di&ALCvT9rTD*mQ9zA7^~Z!(rdQ>NWhFFk}$Qg>a&p(M!> znTiGFoD@ibN}2*U5C}L6@Ahu|%^k>`IDKgtjZc9S^WLr}=3@Gj;mf`1*D7Qv(xcgx zd==gH984Bb)p&PWDQy8wN(a`p*If-}aL|r=&ZL2w@^68i47&`Is)l+?J+zf$D!wQg zEj%D@s`4*@g-z|*tB_uT+d-DojE9xk3R#-EoU3}uMz9s5e&r-$dl412=idlj9L2n# zOON74> zn7YiE&EyquzR4P~hJu5u9)B@xd6G~4>=<$@zmEQ&=xz+1ER4zoT)Gjmh7<6& zVu5t)mIp}TAuf#Ojg>#7)a#6#kLy`DWg16e0h7AmQR|^+HdWDu3Y5Jel*HT;FnOks zrO^%(s0fb)0Oby64nrqFf?4oyfrtT?5OjZ01zfY&Tb58x2^Sr)a6am2nkQ+BccL)~+0dLZZlsyWyMd*us0=xs z?N|v_oVHjjLFQG24T60v-4q69&7q!Dn*1P1yh5;m#FsB`$CjW3{!dw|E(O69@j;J~ zI|NN2ASrON1qef&H;@a#h%`iSXeQgr17WKvloz_It`5I~siV-EqK$X>XxAVLcI3cz z5>hBYK7m)WCq0LTm2*8AQ_u;h$McqJcLRM1s> zifBz~Vz5xAP;5R@LiGha#Cs@zx)>r8D0k>Uaj<*M0z2F?E%i$f8GgNXF{HfIaf~Lw z;kcl6t)3c08}+yDHp0^i0vvC3t`YtM{)WY6ZUd^#qD?Z_NvmloB3i9}!IS__7KFRM zB;hYx+=60zZCC0mRA<2%-z#--2On0XD@?;sFe6otpw5Qhn!{s)NLGs`9tsNSQ#w8rJD^LJv6MhVG6LYrL}vKZbEvb7=tED-dtuK@`Mu2#aH6DqhB*gF<(!D= zSYz%8-vT`u<|c0`!P4dsxH1o&?tPO9&=k-kk7x_yzhcuLo?F*O4_6i8X}e5+Ej- zbI6E-XZYu0q^h>utmx`h7Hv7T$~@EBI#T1%Ono|X7GY{r>o%ljMNN?63KpJT0WYRl zFb8f?2%)m6&J_diJn7#!h5|x|*nSH!1)}uFB1nqAh+@qQA#G6?6#$W!%>K)N_MlCZ zp`LH45vtcWv^sr&G+TrFg_!eU^4DCn)=lxt_LoYR@5#kjZMd?2^pB1p66yq5Z|@^E=G8mceD4L!&o}~ z2sHJx4tW1g?0$mF1lfb?Hk}2v-~%YWFokD~ z=+c17uN~mJ0q&q!1*R5W>KX5`?h)f~3UBL!wv(F67J}3}^2r~KGJgW*m*XgUB7hW& zw_X1;Lsw2W^2B)^?JM}@H_uXmABIs_^Q16IsMA5ybpx+7N-A3UIvSiyzNR*S@3;1~ zkE)}_l%m(QR$}UK3W`Z;@4D(ZOr|I}Oks8_$H7ac6DunEr_bMlRaed(Hlf8Ft(&3r zh4pu%zK9NRm^()s1s|CxN%!{ZO} z?a#Vie#s^2KE3<;uhpGy{Bp-{s;}Dq&|UH5bOCsa=8nZNNJGEVaSq_aNP`j&U0>v5 zz>uK2~P9dNLOr0?29uobwcp+j072Ag@p9X*={& zz*{C+^&H&P*Nm_JImKLoESL2Z(1u`S)Z%xO_hWbxv$gI>dXA8nDaWSii-Xf5&_}Ve zVMsRgnPn0>b%OJVp+bg69gg+dE6cM~8;21rmm?kK5g+Avo4`F+DMGbQ6`dsu484BEsGs)@+P+V2e+poq z$G`vjeC4n-GE*(VH4#GqNdmmka&%Y z_juj4&omJ>J66UA7Bf9rP;~Hw?w09$)(*b{Hw>ptC7QH7$-2JGnF03x0Vt324)wKc zm&4oxSe{;Lwn4D%@$QX^5ijz$W1;;T+eI=>IW2kK~W?yjRhj)qmZ}NcTXZ zc~5ZF9gXeZqzeOOIyWpf0>&I`7WV|H!8HL8fA}6eRay zg1403er1PX_gLCntn3aeyW^F;!P0(BD(StuKD+hvV^OSNaB0Q}G&F;8;W7oU$sixZ z)nktANX%`ZCw*ZhoR3SF)jv802?RHApm$YktVe($ar5NEnUjA3G%e&(&LNu74B@Us z1mX7?IZX;k5Tt_+=ZA-S-gmMeh z>lCRa3w$x|M?y#IEDe=$e9#B&$4RuEFtH7!QkBIPG7X^=4t{(rz`(M{Z70rl z172*7nqVP*j-kwF)kX3ZqyOvZP;|T}(uLT-ZKmLY(69Jdl@BC2Z~VJ7#qz z`i)7u3@msV>6}IuaRKkM#uZF?gYwW4gHo0!dVypMnkVLzuWM7AQf&qUv|54ud+z^k zX76!snpq2824e_AUdeJUO6xwTbpF9vC&%W*MAC7w-uyZ)sd~=)Z+Ru~GTmBl9IaGz zkHU_@27f${o)9Obi$hDbMx(YL$17^>VDYk zL*=n%V7u~2=MgT^aXcAV553A0!jwn7AKZjb;+v2VD|%;!?%v68f<85w=x`o8XzB^w z7k3Pn4C2lA$U4m?+jEqy21oK=_Nd%O8`#x@w0KXvckw$*2J>77ZczkU#qT7W?nAP| zg6^O4dlYWdBit2>0`+~EbumUb;qqY1tE2^}^P%c{<6B){`FKN)@2DkldeSHb5>v+F zUX1{j8O&)yy)$9*IQQ$;25@;(ShiLQp!}#q1TJY{_~jvmwIwBTYmm5goHV(J=n?I~ zgLx4;x(nNkav zf&sJBpl@7njps?t09XN%Qr>JaU{>o^$OeqZ*^5yKM)N`q=P&HWzE{ph^LKd~ z0XT^e**AhRZk{q>10!G1`dBm?3I85T`=)7(qUT=UZ2cbZKM!?55WI@kRO7EaN;>5k z?AsK={qDJYPWPP;A{O&!q&l|?7h2KCHkM3XtGbBrp*Nd>ru2Yr#sq{fokGUB&!t%_ z_$4o^qPxrz(8nR9NKCd6^+7OJ3koo65ak)C*Uhbm8%UD{N;b&W$?*WfLl$J1)S#IS z42z0YT3pBdhQ~5Udv^5otEKzE9Z60p&zXPstxXXilaX7kBiqZ_$_}&7B!QXP7Q5gD zd6u+8|I(Ei#&Deq8k4PnK*-1_N`B z8*c6}I^;J>NBfh`CB=Qr5roE9t z*#vrtjlO=#X3F7TU(zq9Mz(Ga@3v{ipk;S7Eqm*> zd51Za1M@1fLD8pS&X|S;g>*N!?3s(Oz2+E_p=h?s|FRD_7kO8m?FQjgkF3vY|2$P=Npx>+&fn{s?x$4OfAef{U;Hj;qN_cdt@1F|#imcS$nc%ecxGy$dIHaw zzm!vmfd4qZ#aLPo)#7~KmbSrXxPgScO`QPJ%%EgsghjlQc@BSjoB2m5B4b@mrAXpO z6&Y#yA^7I~Z!bpje0g)-t$4IkEv*o1`PdeM&l(MT!3P8+Nz*GN!+JITWV+RC3x(2FElF>spe={5M z!9v-K$|ACWK52J5!|~YFIb+5ewHrHG`+lNwl^1bI!B$1D6Ho|!eeY1OiDkx%QBd2| z;xJHaJ^}4`>2^SB>3b|6H+=+XM@mQ8B5DYCilwSsP z`0Efrl&c{chs3+u&t6?O4&+F!O7R?@U%)4Rt@czpM0oFGIgtX#YqcuD9SxHNfQ^(^ z?u&oz+!&H$19N_a?SZR+d`PdKmt1hesO^79J$L`_e_P-lE3=>gC$MH8*~ehlw)LSO z{#w`uR{cigjL|a-?N}wlp7J3bv&n{gJSUqIm`3<9ev=LT=u8q=^*iy57BRT!-C&GI z+mkVohhdN)rbiDC*ediu)*+ zhX|@3L|trOzGf#OTVD7rgT+hR7=M;IiM3w`&I1!=`wCzp&-Z~Rrnyb>-=k%`bue8P zIjFq_%`-tkk&w18QV_2yfvWp1QlBjE=0wCd-%IPsS?|yXHIt-LM^f$$J}qq-$=anG zJA{jHmaw12)=ltX?hc+VhzPPy=uK$cXS=TZz8D6|GNz$2unoZ#F(!dG4{46Rxq%pc z94)Uof1np|eglfN=qUXNhL*WySIk-<_=*Ov(w=rTps+F!R{0kU64l^==BZRC{RxPE z_n<-jECdX{+D@d8AG;S#`MwLDOrE8U8No(tw`V6=t^7w}7RQS6N#+4dBi2>ciT2pC zxy;5KPf57=uYEN#PiMHS@BT6D(ql!7h_zTImOt?E1m4)}aQt3;Q9tOqi-svmixG6Z z!vscyO(Q%$A_4bIP-Y*C!Rair0lO<9M@)UHgx)|Th95T3sH z_WIzPX7n;@2uXCwOzs~|`8zzc>FHvBFa3i@E?&9GAKN8oy&*2;?0qw62IAq0PlYFW zoexGd8*UvAfg@!p;*Lyu+K|fGj0>AF*umFNxMNc#xDncapI=XeGRsr35Q600O7q*X zvg4+^^gT_83$L0Q851*Sn=)-`lEJIp z(MOlhWSlVwy`ntzD|=lrJ!&4|cA=M;q1pJPb~Jg))F@Twa|dW1^@=o7z+jd>%6uWZ z5f4#0JMI2xqstrTF9-EW5Mo>T@F0e;2^5x3JTgHaXwG;}@h*$~Pi}*ZX!EqO5+!8G z>}8o5T=DyJ2mN-%x$cW_{kj-+M@o!z_=V$CrDM5QoJ1C-hBUF2y!pp3|GLNhamRgV znO<(mh_!_tuKLJW_o&qOg1?thb4{(42OIt=QW$U@Q5Xq{!poq~9cdC=g8j-G1^EeSzc$)^NbfqgIJcQ^6ydwCtHx96fKv~eG1|DUraOn9 zEYxl)FFT$dp$Cl7EKie3?PtQ|Y|jQpLW#=YwJYIu(_d;w59pJOV~Dq5Qtdb#Om)v1 z#@Ey`*{g};l+T%DI0P|&d9BuXTU6H{TV(EiA2Imck;`)#J0&0^S)eNIaK8$>$EYOb-U!(hDZI! zNbBd7+{lOUtYS|o=bGBw)F{_#QA&w)eroS0sDF1h@7-UQMljk#7(S56PCTT*Y8eAT zJj;$c_e-Y-9&@ifErpKj5g37u?_#<|cdw}~&ZHh;o{@r@YDYQYy!Be8&eT1)PKDF| zbFcfnaJPysGE-s&BYfu@k6gA+v}kC)JmO2GHGCa4a?PySnZ`1lnHV|W@2Gk%;Oa%QCS zh4Azz#Qz#{;u@4N*O8xH0`+QBj(*k%RLiKA&&&L{XShv$BnrY+_w{+=H8^D!HD0Ul zWe2~!ZYId_29Xw@x{udGBZ*hknPf5~`&&^-a>yKRxUv4?sZ%njm}K_nE8{$jN3!HI z5{JZom{}Jy{tnyLXl%;c6B4IEtSni}aTAHuJ#q}#jh$XI@RZUE=tR!WL_X+2CX7}M zDWWHwv_w;37@~GXbkC2n8o-RBbli;{0vL!U4aAzz@KU_H_6ERZmL&&W7sj=c=H2$UP=@{3 z56vO>S^U=`xNV0QLxc79G;(SLgr^;h+=)x4;4kIfM(>RJEB&*4VC?FeKousk*L7xB z%h=vk%Hz(4j@n~Cv_A^z*b}edj&l8SYtia(#mN+lf--G>w%V}FD^c|Z#_+LB3wpKl zSdU(3;=BukCg&X4;Rt^OpD-QT#e}kNksnmT=4}M_V9A8^to?2%CE2igB@En``#`}@ z=4Px&kvA?BQTzwS?C!?NtP;QnmhZLjwopaEG>S)LtE9gt@ZrFvpw(#$Lf+*N1Das0 z%R)NGSaNZCXYkO^47d$AE_X%w=qTbFV@sWhbY2E&p#<^@G@9Mjy1xB`Y8v42w`#DI z*UT-W3`8+(dq8%eH3RvxMf$~za8%@~eE;@(0FMKlL41mQb0#wZLhkpxx@l{bj=pKN z16n*+zk`G?-FDp$^f*3sVEB-rnGy=kKo7!(kNrmy0kYQ%mOLt6a3>@({Dg%BdsX7t zFI-nRUlBRNlDs}gtVJpn0+9lBhr8^g&-0~^Q$(@5$!=LAuM>2Tt;Jt`JU!~*QC@oO zG|=!$FG1*`bPZhvz6W#!z(luO7hz&{xvakf#h5WT_~a!VV!qtcsZg)?tI=PK>)3!E zB#UEj8#8aMs0_EEmsX~PkaL``hh-94!%339sy#TQJwGjzgishk{wwj8IFe*LI*y5ZN>lXMg86T&lyRn zfiG2m#xtV53484f^RZy>{K?E!g6cX0Wuu6~IXdNHf;T5qj zJWHaxm9}HZg(!y7kV7homeWOpgRX;E5&pO7>`)Y4zW~I1ex8A;vNg9Ij?}u2M5soY z#TZs`c(JFdv%9MQyxRNQ0}9x^uOg; zTqwtgmV5Yv@{mee>7Z$`ERY3kuwMYzy_c2(5qYIx(UGFL3e~+;VE?CT{DoML_<-*9 zkzB-d$u6X(Dftsfn)nleqS8m+n)Isfd}F=zIv|v5o|+4{RX@!r@G6KQOG?%Z#Ynal zctNvYZ#mZI-~8pMUeGb*)B2G)!>^H0iyu97l@Ma^v=vx(j>~j&&@qFR!%qY?6L_4Q zY4L=uU^>w$x6=u)356XycUR9ZH8}XOa5wcSruXY@epGSl^z$t z5^JJ7V$w{AR_HhdHpm7#*+F_d=@FUE!>3P&0;N)^cwgO-`H>Wh+!hsK-O>RLqD`=3 z*T+i~^zZmd^G%A^rYXobm8B{?yUv8s3dTmqX{@ZyK8yVVat zkHu&LZp70Z+M3{ZhUd#v?zWf9n9tdTQ(;UQ+`lZY<>uPJsesohzW)0Sg1c>}p6#HR)xCdUt zxd#y0cWyFxIG6A{_kyll4duo#GH&MXWjHloY7AJ9dzg~`?rvj*KYD>K=-YEYPpAU)NP#mG^qG}F{s|xa0XpP{ zSvfA0Za+ee^!)?Uh7qxUp253UN@NYN2v#M50%IF|2@Aie;O?WY&)NEl9m3BTGxA$YN*QjSw%x*Z$N6XvI z)RE+@$eZkiF3&zxgO;zj=dRKjx$8@)k@qUHL7Lm0)>pPI!5ytY_;^CrMs&JJ} z{|x{J=d`Wzg*bo*Gw1Y@aTB7obk8yL^1c&2&y};j^1pm8O35^Nc1AMC8|i!hj#7Nt zZOt9v&3GyAj~;+>3;`P zGg<$~m?)Mz&ofGp_PI5m^OTc`$Okue%nzw`1-V9h@^#0t<;j?jl;oj*IJ1%>@n3m9 zJbAe9UKC%_3;cEMDL@trB!DyE@L-;_8&NGCx5E~$WQgspAdig6AJDCC6TGa<3$}J} zqHF8F+W=%yxYcq$2(T05CUg#77Mjo}S8*#~oJ|7btTqNcFHq^RE53Snn%qOq%pEgd zk^$5R$+4{`FQ34Mh$Mg+I3c(2&n@tAOYt`sREP1HVLLc;@~8-l(?vyKF{%KD0XIrr zamkohF%y-O3eHYtBnv@|#M7sw;o{nB8Br-L@jQbTF;Q_=MusBi!W-7ta+sCvu7cz< z%&TY_rfZ;nn{4dmAi-98D2GvB;b$rzEyQ`i>=5s>UCsG3IRxANu(*Gm&D;f>z&Irm zPFbapC*d+Jrnt_u_aoRzl5}51)INAbPOuxt#gCrG4X;$8kovVkimmM0T9Rv0F;1Y7 zL&t6Odq?#H6;Say!p4eMg6%9e+ zC84+a^>3H=^}k=PprxqTf{ef{>9A1;az=VVpSIsuiVL0BWvr&BrR6a-YY`nLj zaF0Uah?)2v`i+A&4q&97(?!W#@U_%2Bec)YTB;Z$ssdv(}; z{wy&d^1HDUb0N)WW(5YHCyO3+QKxuzfkedjB4j0?NnTRIN#t0k!MU;XR!Tyfw!da; z6H9Q2`?M8Keo9BRp z66V)Ln@*XkRp}JNlg+5<(zBH-@gKk3W~BMrXjY2RWUks>JZ4@JjG6#UWhdUJNbi4C zJ=ACJU5L%(K1xcz(4at@Zws2d>U{ zZ#17{(o(4)+GWFL?jsCvZ3*!ARZo`C!m;-ToE`UU2L_O1*tZz0Qp*l}b+Yv%7;k-k zK~+lD?CD+UfZc+pJut;M^PMnq@o#6@TKfGZKG0K1`=EF;K{0nvlmMA(taUiVs4)^a=+t$zyL&!V{n>_y)9Fv8Qqa z3yflaP{Q^g&Fi3UdL>CXspoNsxFWie&`g4La4=?bDJnunJ7IuM?hne{O7&=Sn3%AV zoIOgZuT6^`!^(4tHX{CM(q0sp2)2E%**SIh=^i*10mfV9XdaQdNY1kY1p0ob=we${-_GpzXqN-|<`6g9!K8#@Z zVtHZ$mRj$d3o7~O78SlMnsvE}O9`+==U|XVq)iHlo@p6n$wt*?qvPES$RbM`&F_{l zU5tnusMFl(ZxP%a;5InD&Gc zufNJMn#t_;nH`4gsN>h8+{Jca_OdKGDjjI1G0Vu=kR{SOOPB1uFI>XaPL-`E^%H8i zVoC3=AFH;Ap~yA@*dj)5m8X;jN7A(w6h|Bd(a4@(d_pjV#t4%ipZGiFt8tFUula4Q5<0Hf)$H?)ltgg$auKSYBIPK|bq zx4|_&HY!uV1;uf@AJ=q<)X4tVWy@7KzE84GyLRCp~VjpekbVLYfZ z+%nNx*|*;M$<2*_uhs+nRPn$~wdjw}D)`8V$eg;o5E)qYe= zfX-T&3HcU?juqMUX=q!p-?$vs-i)Tvw<8|HmeX?IQFlG44u+&ZHZ)U%E{ZjW*SJ07 zK71vj#0F7L#HbWeO0K)g99-j@ZzX|9$L4gyqt)06eD&}2W?`lVGyO{pXZh&dD={rE zZ9$%(mbLs;EMT`9{HFtH#Y7mAbgRFV_(n1Bin}Zv*%|q;W^p@>4djHxaa|PWirPHK zN@!kXf=i6k7`GPMNbtDtT^M_Ydg+`|Gf8>>dcd|2_OldwcTrr3xH2j?K+L8gwYb84 z>~R0d7b}Y=@#j^ls=?wYd_Oio!z4U$PSs@?8Ku7#&jy9oi2MwxgI%P5ar#g!r?rDj zj+JVGQ=s_fug=($RCB8+yy*BBxfPmGTR8&3>DjLqGFP;Ypkb*pM4CjoiN#Ekx&=oT zs*QYz*{*3m>H2j682csqaqTEn%rmxvMV`h4w@-UE1Q|At5>ykfMxWoN;3vOGWjaoZ zm(9F1-?kpn-BET@F+BAWNj^fx`OTW!oB`uzdY-x+l*1#Q6oPft}+w#e{56-NH4 zta>aKIysG4c;VT4?p++w=6FngJA7AjOTutAhj!j*EmiiqE9% zQ@ixHwLffrkk#q3Mq-9n(1vgg#_LpjGl7I>_tg5}-G1KnA{GKo5NP$Xc!EG7SaLz+ z!=0P9lj$KkEo8gLmQ=y$egbLY9)pV&ZRpc=P6At^>)hDoflG^)%W{B+rmV*Guo&l{Mesf{0K_!VrWvd$M_kn(Qp`(=H>?#%wbBOJ+K*4hyL&) zPjQ(PNhJ$+ciZ@h^e)WzA8BVUw<+d0aw3L_R>=c%_;!)1eH-IR(9!iL)=lyVx6|@7owT;wwN^Z`ZUB5~ zJrNRd&#X&ze87!u7L{7lCB-{w(|@ybkyKeUeC3vFMs;&de)}$PjQmp7En63>K{wSc z)ZL%{{dBNNN*vs{XK;sW@x<{%F8zQyHKklqatt;&vh%*{J_`4GxUo(6>hX?#&W2LU z2kJIL@(26KcJItEXgnSFC(Ztuj`b@mPEZ6{+}&%T-Rj}e@dsvDBKJ9saT^fnM|qHn zt3SKrkMvlO@7=ZLwq(1Y#Gs-k-CxG4hwFH-UC<|%TniOC#*+K>pp3iT4B$Nqp@o2? zQ$hrW|9_#9iU83{9{-1WO7)bBj*=-Fi<#H8#ZpKC)3fCF*-S(0Lm^F%Eh{tigux+d&E;% z*l#Pi(vR@n47Yd`Uqyey@e3R8E5Cov#~xh8M3j#S+g%X;dACENUn_fv!Oo`p4|!}3 zizI4pS@m%uddKjIN{@UgWAAVPXPDNMVhnM zAV3#bJhqOgD9`lBuP>L8r)O(mr6yditxf>&Th`PdYGB!d*1=zbsBddvr4A7KO&$DF zM%{R3bg|CWVijAM-TtS_^#<+k*5H|W+A;K1)F*+G1Ict#g- zr(?RYqo)S9d3)ImwREF6Q;r56BVlimj|l=$jiQ+0IXy+>4L>e%MtuzJ-G>r^0q|3qsj=i%8=D=lzG;{PUzjhp zrkyAJC%Ec>P%YHDx)h+);5LSG`>>&SIoh}P9Z`4G1!p?j9Xls@!E64Qmb8waPD&Cf zTECHsz*e>s&gyH0K+Uo-=5CdWtA+S)C*$cX6uRD}QXNq@Eh!f&TU(&=`bN-#QHYny zhg~l%XMp#cFrJ1Ax%5!`_N^jmwg8T`9`v?-%WeKJIU~^8$g{d8$;Pv2w~M(g!JJoT z*15IqMmGsg z5(IktoN8U!_{PMudW#cSPCsw@@;P4le+b(qhV&tF-cZnfR;gvV&hu2WHI}VBJVDrsoF2Y+lq+6 zLX;o01d|P?@?MMk}FigK56U}*>&cr9HO*H`) z90^d?t=nc3`^4L9d}zZEc0kQ;^V?S2becRVsjm=ihVB!NhYEU=-e&a8X$^-!w=yaITPEW1PY;n) z-L-m+fXuyxWqZB=G-RPw>I2R78sheBKjtO20@M|@W%6(`^vvXw_kBVBa z3lYn*k@Wgqiyb)3@)n=WMy@~FuC|Glnhpuy1yXar_rzbpGzMr>SIAegi5yppjE;u^ zQhOUHExCb{GZ-Ab2ES_zM^`JcJCU#`b-kig?GhZMT+(*=q*Z@juBt}31021r`Y>hA zM@#>!ySM+GLP4BlciFYU$)T=3GB`Ta)r%T;!kenMbbz4%{h7%^V-dzqtxtb1{s>yz z23r=fme{UL!>q@>R}C$t;2u-;!26&FF&WBmQvN+Aujsn|_W_2xnf?hK?eY(b`Mo%o zR&d3ii2mi{AC|a$EH&LrwL9XU$ZMVYU!ety-lav?rRr@RK&hkCDwML&i{c#(ri1uW z%e!T03Bxk1q;-v#;Oz3KLI~(&*0Akm8_pP8ZQrHbsOCk0pBSUUX#0acG)yC%_^_?Q zi}9lc#UvB6!IpiI#q6YQJrmD@GHVO!_QF_Wb~whOzmu;$Gcye?__bHH`WrlKb z=-i`P0|`j8z)9Imz6)}TQvCHWWkmjDmC|eisJR$OgZ6_v&cd$mK9s?90uDvR@A*d^ zd=^==Jwkl%rLBgw<`3O7#d_W03N@qK?eRer+&ut;!(f`r}^Vs;Hos>fd z!9Myrli%Z9MB~S-#N*u(b;azVrK~tDaN|6$XbHbzL*93xTnfE54z7AIwM&IA<%;f3 z%#HC-Y_o-j-1R*i#&9X>d)}MorW_#pnf|qPwqb$2nvRd;`I}qmv)h0%72m;Z3gN##HUsSypiz@M3-L?#a8RItRASg!u%d zM{AyD$W)~NX|2?UUCx0Fq|jxw9qkH|l3u6*7&7bjxx)C!G_UMD$XvmlIv`ZVj8EZ9 z-24CC&R^p!eF_{$+@k*)CHsQ(rx67c?2cNzka1N8jE*hk1mP-e!wKo}q-n+iwIiF7 z^^JsRbpor6lcZp0gCkwN4Mqf2Y1p3WDCdjS7)0<4(VzP8h9yG2acH$Hy1jC197=HO zgX?>&9yM9%fvRsdX}|`0sa7-;ZJFgd2AH-9wv8PP|ws6Kbs$3?LZ! zjhdPoYu*n#eW``q@WSWKk5thweDg`3Tkm?FZP8i{hCN0v=Or+ktR{;ZB8rNCyL4F$YW$%=4+ax}ueb6cZ z!s&6%OSc}(#c!DWOEwI7u~V=Iz5Xys@oxaIze@+pX=r?5ULp`i&^uu{m*E#}Q7H2g zTnm>BQPV+iM=x67&SeB|cx%wAXd+2gXyD>U?e#NEJcT z_=l1 z$WQG&3j8>mdkfjf&NsU7(f25iSoE!ugEyLa5FkiJ<^dmJkQfu`Zi=XL^dN%S+S9)F zB_G|VS-it7A|`jWa7_=L>^{4^%5p^V6y_C;-SHxxSIbA#+w@7j)gzny1j>A%n@9|Y zBhb1pva?JEjhFKN2bA66V4F_!M7jsieTS5_WtmCCRdnVvj4h>!Y|S=F?}Hi>t6oPr zW~fKWHsr3%Ohw90X-yDVQ=gLP;vpoU@LM&lWVFb8N2XTsk$lSHdVbnj(z>+D*sxfo zJaBWFV|88Rsi?H(k2*xnqXAjFO;XVZsGF#p!Ct2=5S?}0>XK6Oq|Q1%KMb7b=e%w` zC(meZ$4S;vCH7|gZaeIyfsD<+D%Ff`_UtIFIp*X9aElol|NF@7^R$+EG8L%LZ;F!_ zlE`p*ZJ4IoE=yuqH{gve01aE<9FN5G6V@NFvZilwItK7h zZCXBVg~Z4@d=+0XZVo=zDMa#17a`{zfv#)XSv46?gg*F`Hih!6&w(@%&p8CgzAz(6 zX$JU9jLpLFf0@PEt4`Hs;qFmsmy+Oe23ay8(BHsQZ8C+;4+<;@!nX@sm=FTS+%-bn`| zBGt1z;7()#7G`TPy90}0t&!xU@&V-PM(!(lq$ZxDSsF^C(<`dr zcKJ4-pu=MLn3e7n1h75Hnm)GW0A8@J8J~ul)J@@>Zaox$ApERrOi3$FyV{lByu+|V zc?%#ITB>h@!`UTmcCK86w;B_lHA3z0xJIJcJC#rBVv_dRE8?c?iCN|J2kRxV0!dJP z%8i$GaUR^+HmJZCr1mxym{yJw5*R2#39g};cIHEHMbO3qhl&)4^fjyu{CQi@?{tI>EShrd9_t9JnZFB8zAIf%>9}a&8-Mw_+XO_a%oME z)Npb2v(!EW+BB9Nm8Jc2qsmy1OP{o0afw^*0OSZCRG!wnDjJz;9=}*uxe>wM!b`Qi z+!}B`w09+@V*Pm^gzTAmN{`h|1h&6l;N*YqOi{4)MT zRHcBR`vTDoe8bX0jGpwb{A>NN*7;-~-M~PFik2a-@(j|5wZli6{oyb|&LiO%fk%Uc zVvEp{u?jww!Fu=Sn(QH+GFoBcFQ16Gc)`65GZZFNUbp-*N8jp*7&urn`p4&NTQ?~w zQq8ZR=#PeKQ5RQk>(=wvZ8#Ed`a|(uqZCDQY9zb7D)blEG&6fn6R*do_YOi#nnpZ; ze9P9fG0$6yvFWTEgRVl#+*#v}0uTnKHPdTWON+fygzk_CSBqx93);OHZB_Tjr3^#U zFf%!e>@|G>d3AtcZ26i9WPsCjeCWduubz|3FZu>5Q$3mS7T$On%+; z-ms$XPI(sJ@Ip@dg~ef%g3$ew!X*lE{^LAP<2X%CUs#U)-#;}nW23p9+dsE*Da_+( zA)r$8R7y{`LBt-CveIrdx~>-MPB^>BUqX>jAu(DEVi?~zMaBA z{a8Pe`SKs}y}fu$8Wy^-%4A21V!}i3&sYv+;KH3`BooUPH0mpaSGvAIK)*r;cp(6R zyS<+ilVOZB73zn8KFY-sFjy!06X zqN%PTv1r8(&GqI$UUT;!cpcH)81FQyBM(&WpCU0V?sdjgyU$3 zW=EJtreL&6SBIguYKeQ3J==}+9DW(-6Se`Jcw2-MVV&U6MY1*aqTMy>hrQ$Qj)|wi zIqsYQ<)(gYf!9z-+O-XM?2(2cYe|9Y}-=H=cV93%8*3}pseD6k2c=-FohU#5?g=cMxZ^>5y{ zvhMMmkdt`LthiM$u8xb0jw&`tBf-Mpl?^=P=w=*Ca-{;%kz?nJBkx^j#~w~h`ya%> z7q*Rk2|qeu=w(Vc+^Caae9K}a*wTN^{?AQzk7SxEDyb#&$b?ZdowVgeE77$wCPeOp zXCjC7%6Zj~D2~(-CT-@Ux0a7GfVTuMS8|Rl+UIfWT|%_y^`_{5Glk9QV-$PXOej(y zaXH2svPSBk^R|;w*r7_{uYn>_VIsJwDaxHxQH2;KQsUqyBD}h=Nz(&$t2xFVKq-G1 z=wZa^5+#Gjv6VYqJm8Q+c?OKS7)zHPszG1b}S^~@`z@NHrr5HRKwdtWBitF8H7sq^QNNM$^tF?IT zsA{jlxJ0XCKH~y$O>W$6Kh@a7u75XzGI|W(9r7*k&osrfj=9A1?f^ym^@!La@K@iu zNN}y?Y+d+VE}L|=&%L_*O4_xO|5>=gNZk9wGcsw+AS;HT*C5uhy{blfwwx^qQ^^(D z9M`e=maBUX7ZBqUrefi@YO2)Ep#eq0k7&jfmXC{$B{s%24lZ!GbDhQW#N1l>i-f2} z#)s3x5<)UAzW%Bq?KOVL&pB86C68p^2`+wd)>&i7gSURRgUbv4DQdur!G#yQOB%kO zSz;*d+J&ai2HcaE|Kt}7qLM4LcU9%hH20k|#(b}8)k_NgEoUV^g&aPb8j1ilK+3

4^R*6xwB3PD=T1K@Xs+PLqD2cWHbDCj<~IJ(B0*~^<`cq?{KG(^i6d=WRx~4a znSrXk(GoOJmZbQaG_aH!YKM$H&R*EXgjC1C7hOH--k8b55ug;KLO(9IpT1beaRO@&G`^$>-h3R#{f!f5~B{OHcVf9C!d z4Lq!^occ9oshe*%TuZ*>A|^BUoo4>Zx7y6NBvTmMV4oTY9h%2y^y)?!8--ZRidR7g zAe3RPKYU(peqVGZ=+Zp_e%aKznT{ML1Jf^bju=CKGBLU%|IsEB@_5G2JH~VEL5`gv z3CjS>@(lwbu+V}lP_SBlxCf-X8L>K2X;xUTQ#-Iqd<7MZM4F{-eY7DibF5u6lzt7`EKd=c<&ws2PR2A^uFL`>DB=G;5c>rC_m$$mg{e8~KmN+QI!QkIU1@7*U3lxh?tEPNZ%l|_d3Ol%?~^DLXj*7< zf&=e=o<*)(Ln6>E-{Pyd?3tjMBdfLNi-NLt>y(A!JFA8J)9vaRH5Xl4m%w{SCa(ngo9aX8 zM{8HMUj6rK&nSNf!ElH}b z!1;p0k3v!1y0~z!+21hOwqj_yQ@5FJMWFL$;OiM+q@l{f)`>P*HFflsH136v?sEG` zgNMneH!53bGz>(9V#nENHZVvdTxRRCD?`g25r!?)@25q^(-NJM_|?7Z)1q%dUDM6d z1SD4}zwa8Wpcjc`3}rG`UEm?*+YMTt79YBF_Prrfqgl9CQC5)a2~BXI&sgOFo|urA z%1}9pc(TBu($=-wK`Z(U@tSVYLJ^G86sI(I>97|(NYNqi41y_o=*YhV)n1<2+)$Tm|OhuFFLHAXp(7HS2=oHN1%?)OP8Gm0G! zgbOWP;{3@+jjaOA>jXYh*!Bz01f7=9kiF8FE&|kHn@$;jN1Qq-(||)HAf{4z#)-kl zlD>O(hIu#N9EA6hh)&topQ0A`0!*Y&g{=Fy?)O<7u#!Cu%NZBXfkiX*`Cga!L`mG+ z+&Z{Jw&EC*Y)AH}_;)FRY-h$84l?gCH?E2fj;&;(MlHI=WwK^XY|*9$8)RE*CNVdl z@YoU%gu<6I?#tR_0NNKuof(@OM*P?`H6K} zrr(u^W*$m!J5^ALDwgwwJgtb;%jPV7{q%j<3`~5{8{NQwk`;$_xCY>TkRS|e?4WCy z^_+old*ZINC>=02MEJM*+DUjGW*J{*6dpc-?x~=RV0r)4EaqQ{;kZa1vj43+5UpKj zdKcR1+lGqq_)`X+aLTTC*EoGbb_eDNUtw;f`y{8Em5f=!16V}`g&sf zDIKToWSbGh`?^bdy8m9x>Gwp}Tn;16NJYif1r;_!yqz*@<^$4cWS&U^glb94R3^`U zH%L}?5YhbLE^F$01(ZlPtjx?r;{h|oww$rUA+;M~KF$Xv8|i^}hq)%*eEtw<2B;`m zPY0rnmT;3Mo(^>au*tc19ei2QX0S+LBw`9y^3*#@<KwF6+nVveqJu) z^DJTzcAE3)F;CU1G>97IcwRq#0PGv=RJDJ%$Yv0GP!|AIDf2JqMsRN!b9#ekc;_>U z%lS)W%bu}|m@xfb)b#fR3J6Z>v^hL-&iu`nc7fey;7uK%RT(TSKt9FA`D+(0P=#zs zQ~EgbaE25#cpQKc%!LqVex{xw1an4EB22z=mb%y@iuq((xNWBiwk2N{7gwq?9imyJ z-huEQbEtWbap0XFpn%;2bAL!&mj(IbJWGeChb6=L$eg_U>d(IVvu`L3(Vat_?AvfN zHm5oAHcAznk78^t#pJ{y_w6*ZkF1VJrJDf5k=GZ{)hRDuTvIir&m4saHPI=T(DofK zO~|h$VE@FR1J%yX%*nWLRIREhb0qt}?u#Jz+;hJ@!qAKHNw3^<2x>X`rA<-m3)N&_ zuKC%onLskhyk$RR%}M0TnxipKT3O=j#JyFBM?^Tcm1)eYNKgqM-t`VhC)3E?#*h<- z%SItz)=udyZI_HxMdVt~TXYbN>s;T8STdOW7%ya0ljvdc*|FmVJ?ciS8lulnIRte6 zJYf^Lyp}9z7)5@>^Hju36gIPsC9-mwHYt!J5-sKdL>qf1Md=3Ste(@hbzfW#Dk@KZ zh;*3BP1`6GBgY8Fd4dC?y%28(M2{gYuLkVg^+}-w3Z-iGS1QAYF(Sde;9-Uf&I9k3 zlj4sFqi+I4KNjbD4MwJrQrHAv_aAP@2{Ud8`rqA^;@~UMoOD!&6D~f#_!7jR!yGl_ zKSsi2Qnl6RYyGIZ7r`w^h0ajr^~(&`3JtdOPjyr=sG#z;H3^S!LAsQeIXe8bnS@cq z!JWM(H#og0%`Y{pf>I#LD^!ZqCv2B6hftx>gOeEQpx#rps3DU7t50jzV~pkFeD^!` z91a^je;%>R8o}P~rD9{9GndvJj^|UQRcDE-FJ64~Sa02=#@PFQq%P>dulub=pR-AW zdd;ZqllvY?;`<^V^@|af7GPMZFoM8yA#WA-{jmFOjQ6MJrX+tf0=%)UR!mj4G&_Ry z4LBs>$K%C(l5!%sc(s~_f}swzM(TXu<%M}U8A@mQqe}_%P!i;p-G47+yEx0EYJ0O! ziy(JK?64o5carH##V~60&rK_LE-RR0)UrSwagUxvU1#8zut0r!Nsh%9n8t{?s-Mph z9Nym`;(&MIy?)e8I|}CI`7*#Yh}gNV*w`o-<<5{22VxWzdh^5R-6~#c9$T&xVhDju z^cvK20WTzB2~hu33q}BY_}(I8fw^E&(UJVx;eDp!%KWSY(pg(S zrQb4s$#}nTrozxc0&qI+ptYo~Ev17M&8pV~_{7OSH2t@=%yoaKCxbrl>M&kOiTuc` z_mklcwO2Jk?U(vf_sanEhxuQmPt^(vy@m9D?@RnB{G@Ghd65pIX$mQw7zulZqx}=Z z+9dL4WYPJtVhBkQRg(QF4st3l!7Pqv)PUUql$QRk0^@-p#c4@?!#QrvXO0@zjdlHs z^E=icI)^Ae)d}G$DjdQUwFe22`0u3!h8#V$_GMM9bCWdTY!KJVna3-be<6Wtda~7xyndeaX288aD2kwsh?GQY!cbh z7K-(@XQht5(&;o18|d%8n{ym<+&Squ))v>qe$>iOb0L`_kNryAfmjXv@ih0&uC6l8 z(Zq>n>*-!rQ}R^jzW~-?N%4Ik=Hw~R|C(9ij|*q>xR;mtv9zB77KD;n zfqjF@hXkAAlhG-r_Z6CaO73vly3^&n&OB#&h}m9wOC3kIBCgT>2GE!tV+ha1KF+aX zxz5rh$wK#QX|ytyK7x)`muTUC@7X&XBkHL{krLqntoy5_5UzERljZWupWakQX1(Mj> zC@ewO90|}$P$#Qy$efPKcaQY_xbb%sQWs>uU;5z^UnadmL0EJ6EzUcOVdq09%W07F zH#!hz_@LJ(S$I7i1+jjf33C=(Eb1kcL#o`r(^BWl?gsa@29IJVez&%%eM-2ND-~GlJ0Us-y;K$cGa7PV(+g_vcZ$62Uyd)s zt77b~TuVS~!o&l?rD3XC%%ukBPYNSFc;?2zf|5U_yw-yr2ixu9=hL*BB= zkq%yW_@VH^?rw=o5DOqF<`5RC?&I0qbq!GA?DQp09xfpo#HGu{{u&pUY!47!hFGlt zI)a90BC`03E=9zN@U((}sX>}VsUM}PYDU$@j2``H6D$mS&uN>udLet>l93Qb6ihtH z^ui)yN&M8*%|{R*x<=lJhy<2MH+?CUj-yg}_AMG$Ol%n8fidq=bzY7Bk18-gOn3c; zHGG#z)ETDrR2t#4g!<3DKMo4_XHLw24orB2%zZ3P_ti8~1ar?wc>V1#t^$f-4Exrz zE>7q-ck~hz8Vl&N^)pO;r!0EwSCWv#Vih=%RC};Z+T$X02u@|N{Sfu}hg?|qUF^i| z+A0-ra!NyG@$Q2+=M`z_ z9X2ZVV@QS8=03TpH*ml90ig>N#IZ{e2gXhRrANtcN1WIj_-i7+DFjL5yNms1)PC}AJTyUZ%qP*jkkLM&Gg-9=-vB$%84{Gr_8AHCK8KKFG3DW|odXN7Ey z8#A_#UkfnkoX3nWGG3crG)i?Pl9%_p(n|l}UA_az|)KY9B9~f=g>|o)bA%3B{1O)^^Ybb@D6P7(}Q(ni- zRE`|WJYP=x1vU*`>yI6+3TqKEqp#I|NPl zMbXsT`mlWH(Xbd1@ekjVx)Zlc_}4TxwPu;)Yy0a~se&3*F5v! z$9nQt=b(BbOG5C=Tf)7OYi-dWslu&fHK$Ku@NdI!Q>#4w{0=hsiW|Be`7c(Jusfqt z!u{RlRHVg}pxh?`P5FH(hyl8k(wJy!2mydoC zR%7^(8HIX~i1KE?--AwPEI=_1|CpKl>F3kptZFtj?`EKHH1@rMVoWWu^#buiFM8y? z2w~7X1HE|Z*I^e9HfGjnjd-EISI>m{w>Dq=~+27ZKVlSG{nn6j?S)O?_o6Lj$ z1?B#{)z-dxBoj`se;ezbLZ`KIUpY2`p#Pufz36H#JBV0I{8OR7JMDEe>00TWfF5WY zTQbNyXj|~rtf52Z-a6)XS#^5A!yL%HJ zu7qVYw_$@{vM4}iACI(6&CEqRJP>=yyOu(7*3bBopXNu3U9Spf2g}uOT6AIXrjT*5M%5d)6HsvzxfkZl;rO(mWxi*}7$2Q>S;Z zni-U%Q3278|O#I}Y9R%?}uj6smzJ z`ry&X!S#&{0hS$+(Ecb6uvUFZrc^2@!^a&BJKU4rZ-w2KGHFU@n1-&ZCW+83_G zSTB35Rx=Il&zb36MW34cT?L`$jrS9p&AcaL%Xt#Ml6Q~}k zSN|K$ox(@+!8-BPQW^#?N%;t{FiB~W8TP)~gqKaS4sw|=#%MJ2UvNrMaOmF&AK)^f z1X1usf59p#FO_dI9tFfe**#lSp##%qe9vYow~w;{D{Q&KSAXjO{~#|MH1f7Y4l zGO5q087Z>mapx0Pw;qZDGkB2@e&v%YSX}rdofg0&Kp;;bz7=o!RT?r%PYf1Jh>8~S zOWU>*jAKfRhIL8BsxK7bWHjO49ZK7G3aa45E3l{*F1A&HNa6UVHeu=ARZ7@-5Oc^( z5%BI8s#NKOCC>G0*c)fb*9La5?}0l6??#7AE->f{OA1NIiI5HbNyLmh<*agY zgsGFb?jh@oi~_?4)BR=WM3w{>|KhbcpMCGq4PwwsvVx`o>P9#dtE12ooqN>3x?#Q| z3+8>hV{eyB(fekOCGNX1?-wmAk@0&F=O*93KHXQe8!Gn3almRbxzGZiJ9A{Vh<`XG zkR^K~<&1CU&o5Ch`r!*rFz-(ya!?db9dqQdm=U?aGiN1%FKb{WQQ0j@Qza|mrb$+_ zyXlj8vMk5B&l2?;mx8v_rQYU^Y=HnHniUA2T-~6j6~-nm#Ubf9AoJXYI#*FP!#?^a zNh~s-risnSO>BWKz1k{-vTq<0>IpIh)aIwz8znLK2Q|xhO)tlnL0Kk`mp}dMJ%t+q zh7ka>*UN`K#OuqphqM#i;fJZm5G+H;Wuv7uq3JP`H9SV~i=VR#C0~PETYoOHj?EFu zO-TS0{vVWr{~IK)Pq6R(n-%i9gn+0r1ww11E2`CS!k15!Kd(1&CE(wqD^bB{N;3>|jffJG8 zqOpGskrH5c&L?nGQS^ls0@LAE5jku*zm&$_#PW6>>smg9CB%7{ZdT8h^n1{{=|V>Ue!~0@^k8q zi)s#E4xjeK8<>hU5NVF@_s}yB}-NdHlwPJXu<=>pT43 z@@Ey&+}ml&w^K`KfD)!} zvD@C3=v}4Hgei#&G%&~&Psd=#14LK;(b;tf9|i-ZASjzjD<$B9J)Kl*H1aRinA826 z>1|D&z}ZYl8E*lSg3O63S{ipT1y)UFOl`A*)g!nfg|0bNjEmvu%_g+Rv0Uu0uua|CVgWuIoI{FTh z=fa7%adkV(SY*S-%d5G?BO-}UpNunwA>0_|?CafN%>K){w8+qR zP7~fdv7<5Qa*@S*=#!TR|H{Xbk?L>3?jm}^jsv_iz+rZ>yVYJB3!II|<2PLUy$p00 zRO-DWL6MIjTAgbBF=kkY^GG}>Y}w%$l*SR48n-;jY)e(pLW+NLLNvW}hI%wnrAaHR zO2$<65LHS7+pn*Ox3~7l`>XEiX!z)BGzd`okpp(a#IdPqvxd{pPJ*Mt>_%kDTkIjX zB^6jCBR!@R;Dfiz5<-wE3qRJ9KJBwi&q895<~)ql1F}Ds7o13Y38*WX#To^-rX`Ix znSScau&`>L-}2j5m_VS|Q$Gud4OAD4ZUIp++4I{dXh$&28x*lh1;QHID>qYk@>j}u z&3Z8k-Ni&u6ysU~c;z;(Fn(v;;$>!HcX`!~Mj+Pp*{kb89e0;B{O;3>Pa7KpSXFTc zUImG$+3iU@PhU;MTXDuTeVS3o5n7s7KSaNjt?S2OMejDL5D=RFLWPh6uA+P5WViPb3It5l$+i-fY2Hb zCs0Hr+Z;(p3gayf-TCT?pCGl&v4{)HD|BokrM5=!W0HywRY*nZciH*)oOGD_KcBIh zr)$~(%#`Umz{!ltfg4sFJIbP8*3V$$_{mED^OKFR|Jhw1h-2jUPT1Tk;^?RQW)TTp zmkeq5BB{?bR2s*TbaSVS@le`?)jrw9BhSP=UlaM?+e|n2efynW%+}0Z-sI3`(Bi>; zqwb1TzVkc1_8@Ki*iVdJ&{l>$fHAC3-<^TBah+sgtXZ+UrJGv}G!N^qnx0mH9OhpX zgkRexNT4R_!JE8F({YGVSz>@F!P^zvyt?DGa5V9Nhx^VpnkH3VL!)KMsbZi2zQi$sqvReVeFdkUqG~L|ak-1pm^`vJjN&A=e z;G2Oa?7`?|hxN3yo_@Ev$T650;^&jmV*b!B#lWt|*k2o!P8rxStKYyJs>IqJARnk{ zxHeUrh@AispBmM&leKd|rm*BtIGLJ|z4I^EvRl|PThu~~zBm4)>4Cj00<$@^jDclg(H^YulVW-dCbuG|4NHqO;8ke8#x(+Iv=R87#0Vs4W$0M^yHO zr@wHDEN?yamhbzb%!+O+V1 zpt*6*{K*D((h`s{9Fm5J5SMb{dsF)I8jbetQ5!}EC5ss$T61X+E2}8;rPGiqNE0t| zgjTfFoCWX8n5ziKJOb^wOGbE|dMu?uG^|ld?z(G*++&D@Z!>yx`mAn|> z<}hSAXMB9wZX}pV6~>$i1D1U>6JMPWl*^|)fs^S7?7=y%0G(=Na)z>U@Y~))IwDk_ zVLvH?Au1|%-tEUs;p(Mpb}aw|ZvKJ$CKfNJBs8$%i?OmrX-w??HUv4yUOn@U)dsjG zB5)5yEEWBCOHv#n8z1W5q#l-hZfe<)8Ro9gE9M)I{}1^zUMj2a68;84t!ZrO2%5^g zyn_5bRp6Ons8Hv{?Zs{Y>7XslKWW*2l6I!bp08s@uqSay!ZblV+ox-sTRTjd3WQf902#5N`Pjqm6;7o@y|^i;y2UA*;93koO0@ zLbTw7$nQ8Um<-?B?)_XByXyB`imiYy>*m8Gn{L|cr`q=wkwux-N*-ay+S*PS(G383 zP2_NTLJiO7Td0TOy5mjIX3BtQKhSWB^5E?K6< z#>o83(~Zy{3Guur+zqLu!%pzMN%2gtFsSdp1Mg99m-BajYyO1F&xROJ$nv1s64H$k zMjYd?Niltr&HlX^N=i#N?X<_o!9qWBn!=#NqOw3TN|0hEaPb=OzJP~%avP`U2|4?E z@>5V$iwG=uh)~UUPajXlOC8Ie(uDVqm9IEQw2xIjxRw^w28ZKOQj|JKx1P8Jf4p|w z34xAKPHBoac|8}qKvh3oEm!djh8FU?Y<0uW%=jnR8+u;t+qQ(01czAg8{Uf;_>eu_ zfAB$kvR_4lkq0k%nxf(}xv1^8_v?Kpq1p&fAKUm2+4`P|lQB+&=`Wb=2Y9SFO%rPwD)1Kzcc-@cft`wt5~! zmTDz;9_vP>4!qh(u9`mmd2?A3bE4ULo?_#0ZC^x`yvR~~d2{69P zX}0S#r0#bH)Mvm>%jjz?P{(ytjVkFC+(l6=IKpt&8|r8wO2i@)d=Vs)L*r~ZJ}fHD zaeAF1e?e;2PY*@xXFtMPd}?m7g?yfEZ|7^o6PLM-+Qj4k9mX*q-e@S<>%A#KHQhZ| z%{fymLDz8ofpUI@RYir;y)cqZ15bO}cbSQM(MglPF~Pg6zZSKf-6;KX7k-a2iepy< z$Lp9!*$2+k)v(BNQR|<;+Km@#H?3 zAzQ@*MA=;v7TBV0OC@FqsRVzhZ{%En*!_|J{QR~M4LGRT{#q+((pt^+#Q%-UH(L_h z_u$=3P*p+D3Q}|IVLfpYO0O6dzP%mFID9$IK*sra{wVs6l1`l)(m}yprRWOCwdS`L zUA6)ktR4>jv*f+Qc2ubRK6^dWuy_-1$H30tRxMpqeV<3`+-p(w(MdONy+fsSWCGjK z_oRhp!79|kQi#-0qO>A_K4N(5tnr*;YFdw!-5LEJ6Yfvpc=~#Wc-|Llc>Q%Iw;5)} ztL>N%Qc4CEoKW!nv_7*X6$;4=aZ-9@uyTA?*iE0Q)a5t_F!@tg!r@U^YF^=pG*e(# z7~YlpL{)BMQr$g?vZ==r**)f-!X1qtR??30jZ!SIYe&@`l3(^7oSHV2r#{JDX#1n~PTn<6l!WJBbC z+tVapY9Ob{e2Re9a8`+xqWs2TT{RdlymB`mAHHYAFiydi(jT&h8IaxZsdT^oUX!a- zMAa(2%VuE6RyalBFzsP*^&rK6n{%G6OM@{~+ZP-)g9GH@lAHkbJB?Ulsjp!Z%d@q;F<)PFq7KP;qh~ zka`GFcJGAbimq!+iuonizS`Q(kF^H2|By?Nt@)OD$sJ|OJloBcI=A4`ijJ%>0(GBo zgVOy4Cl}xv+60P*GU0XaPug)a`Fo}&EJM?fbnM0}Y2?&oa)uw`;1`mG$3<7RyDO`sX2OHpg~NqqjkRWDXXx988kR zQl>a;v)PquA%O^l?l-)>5FzY~f)+PU*FcHgTd)g`ui_@ss<0U8_Cny_1cTyxCbxMh zBz`RB1Xe&cb%>|a?9H|OIc^jmWY%cef-25;6;x*^f};f9%|ug2Ehnnx>1NN{`~Z4f zEmT|7u(hM&ZE&j%+mNDSVwYD-$t#fx13Z>8a;vA=y z96PqVIb|$m%PAu{W{QKGuAZ9bt2CHlMOPB6?tQ0&aGb_4oE7&<_}LV)5-Z~ZT_r4*2>@i#~K`m5Bn#(ZBVDv_u)z^)tDbT@Fy#? zIMLr4g?Z9JOds(y)VPsiA=jpKQW7mSXV6t|#%o}+bS46p;mv^OV5;xv8+(#8 zmeY-8yO^NiWJ2)|&pf-!I5lT0{=CQm#Ioi~2^+qft&6x@?pLnUS1<>nB@)O72>$tF z^_wq_XauVHCE$ieo|;eXo|X^Gyf$qY`y&>i z^Y2M#9T>T3*6`j4~jCYu{Kb5ZBzNpv}we%!i_M_A(SK_})~Y3(-vcdyOE+VhzY z#KqbBUDG6cVx;yg0RNwGS(@cyJB_O7dPZwo>NbL5lfUQBZoBOC_j$NRRPk9XG#wTX zc8BK#15Njm(!yO+0b}*P%#tat!!+JGyskSc+_&a zjymkOy~I_D4ex39o$vpBDQdZO3u>+QynmpSXSb0!+b%}p==pZXrF4t{@K|!2-=LG^ zF$f$LvMaQ#t94yg*WxOb!P!Us3V^RHy`SJc}`K)uZNC?)A!8QF{-?c-=x@O?yb9oz4DG(C{*^QChbO`FR&>)YmTl2jxENU;GY1xjkx*BTE!8%^7AaGhA_RuCpSE2R5 zO~qUD)C6A4C%m%#+zJuK+CvaI78C1~mY$FX;VnNH!wB>D-dof7vm1+}_~bqFc>%&s zUBa~|=+d@Hw?V$|?3aD%pv#7P69 zlD?i2{e93Vk18s00oa6d#b?Qj+SkytK4n<8F5<)$s9z&|Og)Y5q!e5{9J6Q&0GQ zaeH!J;c0p~-!LRv5XFSfnL!xjJW2_JIky?m149Ml7x?Fe{JWC{ZX41z zN$Wn+z%rbqX>mH8tq3*+wSd=Xza1$Wfi)A_d}f%SQ!9{U=S~Vl?+6=;y~Zd`IL@M+>IB&>#IE z$@wvaUf$8Zl5-H2H{AZktFgE4wXI9(6%KaLC(jcec`9AhJr)5r_==fND)b6_5x^LF z=%hEJJ_m+x6pfo>B z0(Z@jIrbeid?OFdOPofK2)ie8V}i35%MPY|>UUoi`sDPMQpe0+L3E%`m!D(Id)|{*=5{%Ip1^vbaw)z>io+|(@Epo$ zqK6PN>ZrG8r$rp=tJJ4Ln8?BN*q{<@WaG^qWNL=riziOPq6>c=pay@K6?5H@?RBZz zx!+qnolYy*DGa!~`t7c2PfdoZ8KZb@Tg`0?Q!D|TFIkp}GKP(k8#W`vD?QJFoJh^Z zHL4la@;-}2$$%6KDXzjmlS&B#^Fw4uq!2v^(%ptEL0G!=@inA_(VqvP_FKX1xhYCy zG5t}@kP6uiW$2!bed>s%BH_B9=yIKJzVhwl!4@dHKbt45P#fH6)^{7`!(4V4IR^z( zHY?~HNUZDs8ALL~IL5Pm&rT&Az~mr^zULA!Z6{30jG)}XyQ&VX5;Uc0?$rRk6=c~L zYkmcU_hu;HPg*`_hvxic*}mIxln|EWd57$di9Puv7PI%RERr-(W{kII*2TSUm}Ei< z47eLIv-1UzG0%AGWmfYhCLJ|rc#s|bZF@s5?n20iRkPydzTgfX?IZ$ra<2WjBilk2B?^wQP`^z+jSbFM4N(8p(oR_r7a- zpYgJA+2If*P3O9Er_+Uur<6Cklb(7ZN^N_Yb}?D+0dLrlBGb*=ZNDsY=fW0u7(J?a z+0#6@y%3fH!i}g7P>L3luCUpbTaZrF7NgtBp#5V7q4C;>3{~yg-`Heq@*O$ z!So}Uk`5lByJASPBkSCCw`;wC_-SFQ4Y!z08O+2>fnXMn3AsOY>CV^;Mo`ExgQ+r# z%NXjY3_ilda`^>}x8og~`~<8LTa1n}2p9rdc(~RgvF!f#j2GCA&OCUX-_DP8uH7K#46`t6E!~p1EuhAp zH<2Z0I|SlqmLrz;E*3cT3N8y#CNq5;aF|Sn4wlZ1m@|x8Cg9cU zk~WLXpk*w48S8!KG7Jau!}|(re?LSbX~A*9t}mU;K4VMX8!ii+V+ocEU=+2MT!DH@ zu0qWu%LaGdk=a;nawkkJd;PnCyf{_jsC?)6g=0>d;Nxnmmqmo*thtzgIfQgO){p}k zys4FA9f%bm4?8F@br34_Y!u%q?SIt-EEZhd$7i74cBh#|tiDG{811Sks?4#eU?kC= zz@QJ*hQbFe{4>a@5vW*g6oCxdM7;tekyUGZ z02Jn@oA+ zzL$ebY=92CYp~hAjcfD9htUDaz3XNFvpT1ljUS=jC?EyR79_O%{R+`E*aPZxNwm$k z@PGk>_vSJ4(CeEfb!A+kc17xb5F#kREP+Z#S%7>2L#42Pe6ygzsJ~Ai$xbD0Zu8j) zvW%@w7+h>d=0u@6FaW{SLZ>UR_haO}$8SzNaT} z9fk;!<<5kdN{-iacLLs%dN8JRvG@q-mtQoma!`Q~Na7b(-s(sNyA&M0+P#k*V0M#z zQpK6JFiVlvUJXHs@r|zKC+WP~+%ALTz(LEq8sh9k=l>8uAd~FJc-~Z~JFw@cPhGWS zXcwFn7Xup-=9S9SUTu3P)> z5&_HyI2W?2mJw~>nt};mJM-0XEuEgvIjlZ$A3_M{hK@mt%qeyo%PieTKwEJcm$>CF8 zyk5rDE*IyI4Gwb$y|!ZF=}{l&~&#VRY@^VzP_*kg%%Py@-zmzuOsY$hg+W2s-v z)FcgU_*U&F^q1GY!(EIPI#DZpw=z_dPcC5Bw8N*%KOyd<7saOeKpiVrQ#&!{4d|)+ z0(A|ha{z#NZ*Nb2JWkLG9L#xUBz2sy2EmBqV7lJWJc{FBtE{GH?g(g=SViGFu08CA z^DXKjd|~P6lQ}^6j1IC>f9>U@M0OiuY7KypcMK+gOX~I;YZRSnC$O4T$gKzj`)Br} zagD1|QA$Z2RbCKKC!x~5%N593Mg)T}|jalA7;lh${)n{@*2w7=L}My;;@{G*hy{yiy|sb!T_L-(xGsl`hpw=_4BiAw0l>8^Q*`ez`Fgt7 zRf}g6N+}m`RDce|-`Fbqw|Fydy5&M&6`ikX%jc}iqG!Nnt5rk^Ez`|yRf+)3ry^6s z1cOJx6=b2SqUce**G^*i*d+hqM`vyQ!NO#q!)V56DCTE;xPlhEQ+b^F*WpiW0>v8lB3>P|lOYMf~3@#dE@1VM1QAqV3eNPwP+lj*R+i;F7? z!EZbdLxen2dP`|);Zf>t-1Xf*qS!TtHYZ*r|K1NB85rtz)?(p0a}jsTN?_yCpd^}l z55JE4SS3xoF&fx%uk$%9@mu4;+`+ekUPodoPynLIx0sU!DoHIBsLKFSE;%8Q4MLz$c#sb;6m3@wBFLL6vEvq)2HQ zL=}XizeQh*N}`pAy8P|i`g2;2#+HWCc}AJHEt3x(j3y1DA5%_8oYId9g2y)xeV7U# z*haa8+8yTI6w{{*Q`aqM<4?dmJtzWPuEs5Lpn&~pZb~pzD&iXqYCsi}4M?N(MK28R z?2cnx`IfE&LWqU~;4O6&fy;{=Fpklq=SrkcAN44|i(5HJ0IcO{6c;!^n}=nL}2pXIg=E!h!xt_S4i>h?}!UamRGt_{1Jpbb2&K^KI$| zF5m7}IR9AfG|;M-ag8ySC&$oI20)ctp&4>op@%w6b%KDFIc zOou2!Kh|-I_Hk~6kfmm(WaE&@pvgX{l37$FJ>j5_#SWm3kn5maO}2Nw2R~R z9siNeWf`|OscayN$=V)s+Lvmu%{gieerIdvr_bizi|;$4y$R=Y=Hl6Glb9Am!S3Bo zZyu>IEMy7_Gy?VNZW?(whvJ%l#cRcV=qCW7bmMq#u2Ss7XT?Pbeq_8fb{tDuo0S#8 zFV)iVJLNpXfv5>kAkg+Ax!nlw!N3`K%}Mj4fFTgNzB@VnR+!&|No4`HKAjkyp9Y=Y zvOohv%FozbD=zgDIWPp+E~a_RFx(sBW#Q5J(aNKJev;> z|Ds?Xi-K%xsYcYm4sDmu+bsSmW#&dKu=1ss(dTk@HP0&&zO<#WDRhSq`A3_O%TUTE z90cV++6%WWV(!%;tSEPUJ5%DVLGdhn3;5NQAngoh2mw`^I%ZUPR+L1|`w?(>6nyN0 zS5@E#(14pk?Et!?IKqkr!Nn}m=902+VlB1By%GV0{u9gbjGQpR;6=&IXgM=*=vfOx zCP^DA63KoM0IxvG#uk>uXB1;wlPLA4ckVP*90QN)Jk&#VdvDsHizc1pB!RN`-ntT$ zg~Ue!Qv1GSup#M=xXu`CNsDy=nz6;P0mqwRTsvj4Z72zS^Gb2|Tj`67r+0?;dA4d@ z=vgJuhYVqf*8I<~jwyI$we9*@;1vlKw}EeVTk@J3NhbxRmliBKRcde6@jV7#1S_4^ znqHRUfGF-T$dv{saX0PH8>F^pBxmpz{#V}Z`uXYw4BXzz<(qJ>Ucat0d5b{-c_04+ z=1VMua;%wl<~QNM^mVS0I=APdbI1t1$SKxJKl3!?h;yWcXWOjPupcsQ+sytFx>O%5 zRoL8q!ti|z_y!!gQp2!DilFKlO+ipxx-^wq8Qt4j6-e2!LxRhp6Jd7B-sG8o6_QlK&Bhv@IepQ++sdEcv98#y_v?#+S|bBL|4i+DpG~xyNQhJbO`-y z%A{R9H3UWiwV3pjj3Jj((ze%Vw@#89L{EbA3u3EzqeJy(j&FyM_(ZrZa0(}Ok*t`z zF**b}W8heB!Q9A%hlj=^+)3!DVJBOZUlg-weca{Civ{*(knC-)nh`RSY@9F@61)V( z&UV&(4ev(gV=2g`N%lChk+gN-CaIIW4!ZA4F(XS|yKtmhASWlEq|_d&OsZXXoHKO+ zf8WP9`V+lu93KixslPMpn*1i|jUlk<4wy&`et1lna~4a$OTt*!)|+b}Y+nTj%}KAk z&|9OvSGKFXmP`%6YW0PY0n4k%=HVJ|z7QISCVDnG)`R66aYl)jJhWk=O&W7u5TP$n z66#>3ACO=lcY<$9#VG}=B)&%Wc($)s;YKh_E37S0$3zt&iotc( zlWrs9(sXRWf=;xB-qB7oJkx_F+Uz*$$A~dGanN`UqzcxE{N755bfGYPu?b$S3L3sU zRaLk{qY5=CI&~xE@o@95P6N^-S|rQYr>v{3Q*198ylX`aCF9+Zojb>$BOZf+D;q@yHNFA7VI~_ItdknSL!@(V~qM!WI^zETZ(a zlN|IoLlWZ^BDn;Kq`st&5E_dnt^Ed>_$(q+|2 z+!JFt1eq$-oZ5v9oS@eW{s+oI319}otO#cVi)hs?m3EKBEt6g4fSSVKXAWIqgh!$On>coizGe_mVo%8v%vR zG=#o}syt&x3)}p5B4d|KAl;b^3+*`rVFTX0B)0Bhu_f(u+`A8xlq@O&xL}lm?Sw;a z{*lrD<8iA$n}2Ix`cHqJ-}vyVdw)r73gPiIOD^wEzBv6Do}K?l+15Y1KgRxY-1$B8 zqN`sE^3((WzMky-pON@5wp#B0`qDXGPr-2$Sr12g(PTCq6IM7>_$KIlSNSyfb9neM zkN==JW;IFDepCgnqi^juYAAeB%=*}H)Xt}-jY6ws8CvdlkB3WsL^>_Ww2Da3H7oGB zc#Z=AZFM-!`t#FFw1p>ARl-k=n&Kl3#kkXYky(NuFLNuNO2h8Nyf{43DP+WIb6k=e z@*YMMH;;JU)o-yamRn9tWnrCdJ&IjUyTQj6As>WW*QWa;gn7JzFK-J)W?jY%okkLq zd1#Q7kFXyQLY)MdAbs*11V{g^TrZ27B9<=m7ne|PR}vy#)DHF;9V&3EVZndmM?<(g zoP3AIKYyTnV3?Bs@iS;{5=?%A^?mtbl}yk_ugv(5kMWhyxWT-~1`)0X;VwsrFFc>qKg!5IE=F>&GPGbDex=L1QE$b)rmjn$W=d zeXrvz-gJ9}jLf+BG>dtkVzm5H#^-KP$Fq4;v8nby7DuZbdg&|OFzY76ACfc-3bzgK zXol_}Y6i)(78kKeaBhYk`5{_zhwnz`5c{6N?_$s$lDI(Sdh5l!hH}o?+VR9O3LEV^ zqPkt@iM@F9f442HTv^^2e7*d-YpEq~W}4yM(QflQ6xM2ygy8Y(`R{)=pWnTD41WBv zE;JPV`0nudhjjU3_s8Ln#gRYqAIHz%i2wSn`RMja{T4ik*F}3?t<+HFU+_r%2~y-T zc18BMyxNh?jvH4tdmyjl9|c`XBcMCV2TaNX2L3id!t`d6haeW7!DzGP$S`Dh7^7OoF23)e z0R-ycrSaS(gtrnQm^>CSN!eokRx=a_jJH}u+snp0tX2)D-ZY}EnzJrwR%6xUllQ}a za-$!%R!Ce&$XD~XYSSR7oQ+@@cck(yT8%4TTN#ACNhX1tUw}1fE z-{iQO0J_vIW4WKC)GJ(%tcYTSS1>BQCNpYGq_oql95X|9P0GHt zgSt)qZ3-{RmeV31Sc>gUhWGr~T_EfMGfk5Sjwdj07UH<+L|?!{q&v?X6$IP_IR-rk zT_q?GIcQ@$BeYDvCXM0{v>=i|Q1PxbPRcm7-5RxI^@*SklTY8(^*@-jyjIQ4fa7#S6;M#2mDF&`-yuiIKhYbfe57-P>@FQQ zXW{`|v5eM)U1OY5`p_t{X4hA@qopDowSp3n{?};UZ}(u>Hp|@z5(w{mG=KL>j3jYhjQ&SLsr|JKsoGvBcU0$JIC>KJAeK@&03TdDS%19Tk# zYlUAMlVCLS=E%BvNOZnb&-9Q}#WOUff(+vA8~h|PMTm2pE`U#Fe#rp~_NrzlHI6hN z!<$JCFZtYS)yW7sbSir4}woFe6$l)3Ji6=ly|i+dE>csPjck@1(o+ zL!xdrJhyS**n5U+V^u4Snju5=kCSh`k3qu_AG|r<{Kc^c771&vjf9C8{L>5SMx@RQ zp?LQU`}7OFkiSJ}Ba!cRNnpo`(2pQ;^lpbv^(!`XtJ(PxWY1-lL5U%K9~%C)^2e(?~+rBTq`^RmzRuzUm+r(Rw(kx%Wu}v6J|0SHSnJP@0^P94ZhR@qTh&o&4%z4|0on9FKy! z3tuwaoL|xMk<3Nt)=T>9<(A#sBpwpHlI>ipl!N5F*t_rBs!SOD9u+Nv*p?I1=nw(n zNRS_>F8|e3%2Z7WBG`ANRh`rRE~x2r)39snZ=E=#iMJxeyBAcc&IQ)|&WoFmj|Bo~ zzm?Aw{dPmk^)d_b!9vNCc56=mWiGfepdWE+@y2a({IPqB`R(}FY?Ul&V=Jeur@U#+mXq|Dxk z=f7kToAc6CsWwvM&gUOf{efCcYucYS3_>P?s^8 z(zCAL`9Z_o?~MuN74kemt5S*Sf*(MdwoV)rmBXZwC^~+x|nHU>jHz3kb zH2`t7a5RcN;PsDVYTLj`n+VQr6Ff#U9qB1k-Zo{p+689On%h#~?%^G1jyLv?u~&BE zfhyOX!CYvcFik8yg%ukyxHgmUIN7#Nf8mAlO=AleTCUs7qKflQ!nV+Ee!BZ49Z|A{ zJlg&sYUxB76AY=vGG4R%VU=fuHfj1~GSxngX0Sv)``6%9pt+D2^30rH+}$#U?}7L4 z!m!$~a2R(0DO5ksxm5v=_)gx-vSka-e7~YUCYXG>+(iXZTV|NaztoSJ0 zR@0#YdRf6pm{x090Y2)~-;s+|IsphFW`wdh*RWYA79{jYUKH2~BLEC4NoxsXjr|%IU&=dmaSLuvXsjcd6Gm~)e8CdZ%9gOCSDBLF)u^b%6GKY zo<{xZ_wr^R3-y@7A^g{qI0P*-QtsUQxT&x{=b+M1vxk$bp)2KWzNVyi+Ur?f0L#n{z z<#b2)p0i`7G-~|8z43 zbU=xDbzgWaSUoM4x-FJ^S}2QJ3u8l%+rGgyRJ?wYF6rc5j*@7~k&||;#bwbV#LG*) zKNl85y#FqXhkwIGeR*2aRVWE0MqUl~w zIZ!knf0We;i<+ zFU@?v6jQA#{eFyD}wch{gY!kSn2S_Q*GMXu&ETvf%MFE@AI6Eosj65 z$e(85&}VnQpu+DrMOjA;ZRbH1zhKY5XcPrLL`SsS+Xd!Ouy>;^)*MC&yTdsgycQXck$pN)b37A+LT6DkI z{d93Vb%|@}gzji)M()c1yegY{GEJW(`@HJ$zPvCH_^G`ZU<`cXCRWY6~2Vt zI%$IjKg#c!$4RH z7;;-DCM+Og`f7XBkL!osq{ms1uq*VlnMBZUgri8r4BC><&hc!7YQrbir7t+E(#sG5 z)oovdG$%sbm0qnuGX^@j$8^z9vkTY>?Bxl7y8Ksbq=Y1pOh!*mjrzRe0SJTb_uyZr z{umEjS=B#p&-9Ev>30`d98b`_#$9;5`&LE5oX5uO)f8NeN^U<@X_hPV>sY!t-TuVE z&RRv6Z4)fySS3!{WUnD2wlv997S_+7zC4b49;KGg0Re_8p?s{q5W5lU_%H2j@ndys zJ^!6c9a^s8UO2P`EK^9PC%WkX`^P-%E3a=NIZ%MIgyK#Ua=Hz1c^XGwzQ7!b3R78R zTD3D;mt;tr&KjaE0CBG<@?QF%Q>qpGfdA;Y zMBrFOah`Z4FysC0VWGw;p}b z824Rq>EqdL{AteSu_(RHg=ap57xHk=-^o?;{_NOo*oHzAWowDtM|f)Iml~EyOLQI* zKX5Lid^pvNM$qo7IE^sLE!hIu9)t0#-NX-nb7A|SzP7uL^P@pR&dz+DxU3S6RHQI- zPVBzxvW&#rn)l^(0$aovMQF1udt%E1!_?U_OfWkm+yq8ervc#2h&Ci-<{IY9vu*9q z6*VRKvu1QR>@v$WmYJz<=&mh6Fo4|o#D?iQ2`ZBrW|l_%ho-ESOq$Vb3S77wu*i|3k|C z1g_Cra)^&8pPIQ$$OHHD)&~K*_PbdC@G19fpwX5~weG=?WIRl?Y_6Boaq}SD4Bhrl z^7-w#`}B!D--F8D5fWruf<7YStR;SS@Wo0Ut(@~i1M>BMeqdKTSkGCK<^$W*n;ALaU&Uhr`HxVV|28C!YMYzvgeu+>IkjJ8Gx4?<$eQ8W+^{96q&(`OiXK`MgztuxYap~+Ib~WL z_f(}Qies=iTgTyJ{=YDarn@%$Q=GDtB;XS~-52Et1 zu8glj&x7du>|AG+zZ+3+Rxk_7h}qxZgoW5EzjTa)y^L}&4y;w;r5L8Qd$BdYIAwZc zg-*qawkX$n0!T*f4{oYWVtds4 ze055IKX+>?79{9;Fp*ahLd^1MF}z(+!Jv<~hy12^Hkjmduw2n#7BXZdrR=PRU4_il z7#<4XbDKWO2l0WCP1{fbS89fh$PoSFny4Hjva9M8zmPy?>``Hsa#z`gUK?CzVr~dW zijS%A_Nf|Hai3cWO}4hkQB^*fqi+RfSlIHjwmGZw_pXf>fQaTf<|_Cz&oey6Q8 z{Y2R^c|jgVC<^Y@u3Q_EU!Qkda`g@G!?RZ>=Hmp62hDSx;3Lhno*@1lJcA!n#rXW5 zSdNDyq4~8=gFsB3u`ZD=vFC)in&_|;gg|r?&sbJ$fNJIs@g$v6-HqU3gwJSyV!JBIfO{+0P#@q?15`!3e2WR~f2G#9$ z2V-Qbgr(CD5>8&eUZ*6~b2g%53vIO}E6e>Q-K$WF>2yP%Ub>pES##zYDnQSo-dSJ` zlNJ4+OXi53PMBoHlXMz!W959-WAA!4fk8p`fCv?#fjrQ%0#8G!wz^o5<;9bE{e>PdU}vs1wZ3=Pz2piz(`LN;!{R}`h*}W;*-CHx!sSUKa$(0 zKZd9*IF#)4?^BJ>{5^g8?`dNsP+r|To#N@)WW2?FxcxX(4MS^cew&)Q?ANlN&)Y5g z=k}W$DPd7Sk_w0kW4Y6>1u0PK`*xKR<=03C_xin3q5OqbVY78;{$h={)ei@_8 zW>l%Jq=!Xn&GfDLlW}nfLExji%U-o}`Pd^-`ZoK(bQ;oZTFL~XGlL`cY_*4lo@gi= zBbMnhZ5kHW1ZoqB)m_yb@MPKXxb|Jq<}fWBFWq4Gc_ zvS#brs|5JL@4PDIcfAhg7A_v~#g{>mRBs_I+va)ajJIrmRw)YHiAw-c|iq_d- zx_q0uxO4Hi4}NW^D&2>G9KCRBY8z%D8k&Nacs;VYfwW|}(*u8)l<6vj;SkoqjJ%^C z8ulCZ8sPT7t$2RfEk>}4G$w?l5f!FvA8-!CWsI&_MDgv7DFq{Rcge!H;dGjV`$?YZ z@qgJ%u9x|udu8t`#dTRG{x~Xt+d`{rt$mfY1`tBuw90GK#k?#C5$+8_?oeq*zZkr#xE8Po(soNC}E@^z2Z%!5_O7{GMst z!v0iS{0{W2-SMZ(0Dj8X=70%I-v@-LU83$H!&B3%wqdE{|MvWb3)lHyH+h;pRjS#b za1N0KU)@Qh;RAa;GP&0eatrB#OfqK1pI6he1p8CAQbW8=J4a5B3pS4#hOe0;aSlEE zAfs#ov2okn)P~%3w;guz`mPa@0J7OORBXuoA$aEdv%4)22x4?SMe9^M6?V;jY3z1Y zmbXCbq)XM6*iTM2wK0;2HYkzO7*AtY6J@&SChY~EpGsbFAncKQq7uxORPzNV?og!& zkT!5QD0Ezq^6(^R?z=vT4I|QnZ?*MZJ|h z3M6X}6BgN~YHH52U7K??e2vVVC&N_>p=}h_ps>`udlr42_y-X5s=!7|T9PiSFx@&z zA|5K0oODdYIU}ff>Sh15ll5l|y1QfnbHZ?X(o>~At|dm!5wooe1pdcuaznm<@s7jP z*Lboa1Iu-dKN$fxy~UyATX3OhJE@c3uQ*=7nA5>4-Li4i`_X@KihZ%pA{u&o%28*X zM`T-kWV#gjJx5M^pBVc+9!;BH8Pp{{xesQ@n?jt)oP#kPn`ER*IecC>0TzcB@{X8h zQ`^)I?fw3O&$#{gr^)zF{vnTlR_hy;R{vk=^=Cc*yuRumsVR@&{iUhC`-hKzXdqiP zyQY1&Z8m?nH}kve-~ZihUkY$>a}88((D^a&_M_!*46>$On`T*duP>Kwk%#N1M!m8{jCg*N6#9P-e2eT7_HQ$4M3-`5R-p98?D+VXEO$DC%jwux3WW0Ld)De zN|8T6a9|dRNv+HUPWf$6;BKY!JLZfVtvF@44B3zE^+g66yb3hvWc(f9>GHIa=Lk+AJVMSu)W+ViK&FCLPay!?!i8cw))? zE5!-ZZ)S2M?VSJ96($kXYw&GIbt7vL8X4m z7QX?|;u#1Dg1^X9GE-u_rWs!`=12w$1P2TcVnIH)MaF}|iOPkBjxOW=&tnIxY;A6@ z43Z570hXyayd<+FhHRUm;P97+i)7`KShBiFD;Y0@{xvP#|9RDoU2js+>Rj$K**D(~ zqc>PFLZpgto$M5|U2(s+$A2e7?q9Qp?(H>Jx^B!~-t>IZEQ7tUO?E4gk`)PL5&^|V zgjI^z?^O-fFaDAU(0TPU(EqLK93oRCjdC^>U!1ME?o++;qk#`t7&(EdRpj82RVv12 z%MJ`yjIH8o7L%}A?GrF}jzbF4vvq`P%lX-fTkrXOBK7HX^r*ejQYL@RNr1-!^IIVv z8Y#`&!tTYr`AX0?wJq-2MCu!%{m6Oe<#lF=#0^9}9^-@y`tgs|4nyWB;2C3_n@83j1G}*b%q77eU9ijeY zA3bERdq2g}qDqhwRR$ntpcD}=P>P8aC_5S_JIInFP+|Z+623@@w-W=96U0bSIgz+=(e4lW>d4J diff --git a/public/assets/js/maps.js.gz b/public/assets/js/maps.js.gz index 07aa158db989b3ac80864549f769407b25cc69ae..877150a9879928ae473d913a3909f86e82e603f7 100644 GIT binary patch literal 131616 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�ehuS4JUG}Z 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

",ok:"",cancel:""},input:"",message:"

{{message}}

",log:"
{{message}}
"},defaultDialogs:{buttons:{holder:"",ok:"",cancel:""},input:"",message:"

{{message}}

",log:"
{{message}}
"},build:function(t){var e=this.dialogs.buttons.ok,o="
"+this.dialogs.message.replace("{{message}}",t.message);return"confirm"!==t.type&&"prompt"!==t.type||(e=this.dialogs.buttons.cancel+this.dialogs.buttons.ok),"prompt"===t.type&&(o+=this.dialogs.input),o=(o+this.dialogs.buttons.holder+"
").replace("{{buttons}}",e).replace("{{ok}}",this.okLabel).replace("{{cancel}}",this.cancelLabel)},setCloseLogOnClick:function(t){this.closeLogOnClick=!!t},close:function(t,e){this.closeLogOnClick&&t.addEventListener("click",function(){o(t)}),e=e&&!isNaN(+e)?+e:this.delay,0>e?o(t):e>0&&setTimeout(function(){o(t)},e)},dialog:function(t,e,o,n){return this.setup({type:e,message:t,onOkay:o,onCancel:n})},log:function(t,e,o){var n=document.querySelectorAll(".alertify-logs > div");if(n){var i=n.length-this.maxLogItems;if(i>=0)for(var a=0,l=i+1;l>a;a++)this.close(n[a],-1)}this.notify(t,e,o)},setLogPosition:function(t){this.logContainerClass="alertify-logs "+t},setupLogContainer:function(){var t=document.querySelector(".alertify-logs"),e=this.logContainerClass;return t||(t=document.createElement("div"),t.className=e,this.parent.appendChild(t)),t.className!==e&&(t.className=e),t},notify:function(e,o,n){var i=this.setupLogContainer(),a=document.createElement("div");a.className=o||"default",t.logTemplateMethod?a.innerHTML=t.logTemplateMethod(e):a.innerHTML=e,"function"==typeof n&&a.addEventListener("click",n),i.appendChild(a),setTimeout(function(){a.className+=" show"},10),this.close(a,this.delay)},setup:function(t){function e(e){"function"!=typeof e&&(e=function(){}),i&&i.addEventListener("click",function(i){t.onOkay&&"function"==typeof t.onOkay&&(l?t.onOkay(l.value,i):t.onOkay(i)),e(l?{buttonClicked:"ok",inputValue:l.value,event:i}:{buttonClicked:"ok",event:i}),o(n)}),a&&a.addEventListener("click",function(i){t.onCancel&&"function"==typeof t.onCancel&&t.onCancel(i),e({buttonClicked:"cancel",event:i}),o(n)}),l&&l.addEventListener("keyup",function(t){13===t.which&&i.click()})}var n=document.createElement("div");n.className="alertify hide",n.innerHTML=this.build(t);var i=n.querySelector(".ok"),a=n.querySelector(".cancel"),l=n.querySelector("input"),s=n.querySelector("label");l&&("string"==typeof this.promptPlaceholder&&(s?s.textContent=this.promptPlaceholder:l.placeholder=this.promptPlaceholder),"string"==typeof this.promptValue&&(l.value=this.promptValue));var r;return"function"==typeof Promise?r=new Promise(e):e(),this.parent.appendChild(n),setTimeout(function(){n.classList.remove("hide"),l&&t.type&&"prompt"===t.type?(l.select(),l.focus()):i&&i.focus()},100),r},okBtn:function(t){return this.okLabel=t,this},setDelay:function(t){return t=t||0,this.delay=isNaN(t)?this.defaultDelay:parseInt(t,10),this},cancelBtn:function(t){return this.cancelLabel=t,this},setMaxLogItems:function(t){this.maxLogItems=parseInt(t||this.defaultMaxLogItems)},theme:function(t){switch(t.toLowerCase()){case"bootstrap":this.dialogs.buttons.ok="",this.dialogs.buttons.cancel="",this.dialogs.input="";break;case"purecss":this.dialogs.buttons.ok="",this.dialogs.buttons.cancel="";break;case"mdl":case"material-design-light":this.dialogs.buttons.ok="",this.dialogs.buttons.cancel="",this.dialogs.input="
";break;case"angular-material":this.dialogs.buttons.ok="",this.dialogs.buttons.cancel="",this.dialogs.input="
";break;case"default":default:this.dialogs.buttons.ok=this.defaultDialogs.buttons.ok,this.dialogs.buttons.cancel=this.defaultDialogs.buttons.cancel,this.dialogs.input=this.defaultDialogs.input}},reset:function(){this.parent=document.body,this.theme("default"),this.okBtn(this.defaultOkLabel),this.cancelBtn(this.defaultCancelLabel),this.setMaxLogItems(),this.promptValue="",this.promptPlaceholder="",this.delay=this.defaultDelay,this.setCloseLogOnClick(this.closeLogOnClickDefault),this.setLogPosition("bottom left"),this.logTemplateMethod=null},injectCSS:function(){if(!document.querySelector("#alertifyCSS")){var t=document.getElementsByTagName("head")[0],e=document.createElement("style");e.type="text/css",e.id="alertifyCSS",e.innerHTML=".alertify-logs>*{padding:12px 24px;color:#fff;box-shadow:0 2px 5px 0 rgba(0,0,0,.2);border-radius:1px}.alertify-logs>*,.alertify-logs>.default{background:rgba(0,0,0,.8)}.alertify-logs>.error{background:rgba(244,67,54,.8)}.alertify-logs>.success{background:rgba(76,175,80,.9)}.alertify{position:fixed;background-color:rgba(0,0,0,.3);left:0;right:0;top:0;bottom:0;width:100%;height:100%;z-index:1}.alertify.hide{opacity:0;pointer-events:none}.alertify,.alertify.show{box-sizing:border-box;transition:all .33s cubic-bezier(.25,.8,.25,1)}.alertify,.alertify *{box-sizing:border-box}.alertify .dialog{padding:12px}.alertify .alert,.alertify .dialog{width:100%;margin:0 auto;position:relative;top:50%;transform:translateY(-50%)}.alertify .alert>*,.alertify .dialog>*{width:400px;max-width:95%;margin:0 auto;text-align:center;padding:12px;background:#fff;box-shadow:0 2px 4px -1px rgba(0,0,0,.14),0 4px 5px 0 rgba(0,0,0,.098),0 1px 10px 0 rgba(0,0,0,.084)}.alertify .alert .msg,.alertify .dialog .msg{padding:12px;margin-bottom:12px;margin:0;text-align:left}.alertify .alert input:not(.form-control),.alertify .dialog input:not(.form-control){margin-bottom:15px;width:100%;font-size:100%;padding:12px}.alertify .alert input:not(.form-control):focus,.alertify .dialog input:not(.form-control):focus{outline-offset:-2px}.alertify .alert nav,.alertify .dialog nav{text-align:right}.alertify .alert nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button),.alertify .dialog nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button){background:transparent;box-sizing:border-box;color:rgba(0,0,0,.87);position:relative;outline:0;border:0;display:inline-block;-ms-flex-align:center;-ms-grid-row-align:center;align-items:center;padding:0 6px;margin:6px 8px;line-height:36px;min-height:36px;white-space:nowrap;min-width:88px;text-align:center;text-transform:uppercase;font-size:14px;text-decoration:none;cursor:pointer;border:1px solid transparent;border-radius:2px}.alertify .alert nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button):active,.alertify .alert nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button):hover,.alertify .dialog nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button):active,.alertify .dialog nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button):hover{background-color:rgba(0,0,0,.05)}.alertify .alert nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button):focus,.alertify .dialog nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button):focus{border:1px solid rgba(0,0,0,.1)}.alertify .alert nav button.btn,.alertify .dialog nav button.btn{margin:6px 4px}.alertify-logs{position:fixed;z-index:1}.alertify-logs.bottom,.alertify-logs:not(.top){bottom:16px}.alertify-logs.left,.alertify-logs:not(.right){left:16px}.alertify-logs.left>*,.alertify-logs:not(.right)>*{float:left;transform:translateZ(0);height:auto}.alertify-logs.left>.show,.alertify-logs:not(.right)>.show{left:0}.alertify-logs.left>*,.alertify-logs.left>.hide,.alertify-logs:not(.right)>*,.alertify-logs:not(.right)>.hide{left:-110%}.alertify-logs.right{right:16px}.alertify-logs.right>*{float:right;transform:translateZ(0)}.alertify-logs.right>.show{right:0;opacity:1}.alertify-logs.right>*,.alertify-logs.right>.hide{right:-110%;opacity:0}.alertify-logs.top{top:0}.alertify-logs>*{box-sizing:border-box;transition:all .4s cubic-bezier(.25,.8,.25,1);position:relative;clear:both;backface-visibility:hidden;perspective:1000;max-height:0;margin:0;padding:0;overflow:hidden;opacity:0;pointer-events:none}.alertify-logs>.show{margin-top:12px;opacity:1;max-height:1000px;padding:12px;pointer-events:auto}",t.insertBefore(e,t.firstChild)}},removeCSS:function(){var t=document.querySelector("#alertifyCSS");t&&t.parentNode&&t.parentNode.removeChild(t)}};return t.injectCSS(),{_$$alertify:t,parent:function(e){t.parent=e},reset:function(){return t.reset(),this},alert:function(e,o,n){return t.dialog(e,"alert",o,n)||this},confirm:function(e,o,n){return t.dialog(e,"confirm",o,n)||this},prompt:function(e,o,n){return t.dialog(e,"prompt",o,n)||this},log:function(e,o){return t.log(e,"default",o),this},theme:function(e){return t.theme(e),this},success:function(e,o){return t.log(e,"success",o),this},error:function(e,o){return t.log(e,"error",o),this},cancelBtn:function(e){return t.cancelBtn(e),this},okBtn:function(e){return t.okBtn(e),this},delay:function(e){return t.setDelay(e),this},placeholder:function(e){return t.promptPlaceholder=e,this},defaultValue:function(e){return t.promptValue=e,this},maxLogItems:function(e){return t.setMaxLogItems(e),this},closeLogOnClick:function(e){return t.setCloseLogOnClick(!!e),this},logPosition:function(e){return t.setLogPosition(e||""),this},setLogTemplate:function(e){return t.logTemplateMethod=e,this},clearLogs:function(){return t.setupLogContainer().innerHTML="",this},version:t.version}}var e=500,o=function(t){if(t){var o=function(){t&&t.parentNode&&t.parentNode.removeChild(t)};t.classList.remove("show"),t.classList.add("hide"),t.addEventListener("transitionend",o),setTimeout(o,e)}};if("undefined"!=typeof module&&module&&module.exports){module.exports=function(){return new t};var n=new t;for(var i in n)module.exports[i]=n[i]}else true?!(__WEBPACK_AMD_DEFINE_RESULT__ = function(){return new t}.call(exports, __webpack_require__, exports, module), - __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)):window.alertify=new t}(); -/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(21)(module))) - -/***/ }), -/* 4 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = selectPlaceInForm; -//select-place.js - -function selectPlaceInForm(uri) { - if (document.querySelector('select')) { - if (uri == 'current-location') { - document.querySelector('select [id="option-coords"]').selected = true; - } else { - document.querySelector('select [value="' + uri + '"]').selected = true; - } - } -} - -/***/ }), -/* 5 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -exports.byteLength = byteLength -exports.toByteArray = toByteArray -exports.fromByteArray = fromByteArray - -var lookup = [] -var revLookup = [] -var Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array - -var code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/' -for (var i = 0, len = code.length; i < len; ++i) { - lookup[i] = code[i] - revLookup[code.charCodeAt(i)] = i -} - -revLookup['-'.charCodeAt(0)] = 62 -revLookup['_'.charCodeAt(0)] = 63 - -function placeHoldersCount (b64) { - var len = b64.length - if (len % 4 > 0) { - throw new Error('Invalid string. Length must be a multiple of 4') - } - - // the number of equal signs (place holders) - // if there are two placeholders, than the two characters before it - // represent one byte - // if there is only one, then the three characters before it represent 2 bytes - // this is just a cheap hack to not do indexOf twice - return b64[len - 2] === '=' ? 2 : b64[len - 1] === '=' ? 1 : 0 -} - -function byteLength (b64) { - // base64 is 4/3 + up to two characters of the original data - return b64.length * 3 / 4 - placeHoldersCount(b64) -} - -function toByteArray (b64) { - var i, j, l, tmp, placeHolders, arr - var len = b64.length - placeHolders = placeHoldersCount(b64) - - arr = new Arr(len * 3 / 4 - placeHolders) - - // if there are placeholders, only get up to the last complete 4 chars - l = placeHolders > 0 ? len - 4 : len - - var L = 0 - - for (i = 0, j = 0; i < l; i += 4, j += 3) { - tmp = (revLookup[b64.charCodeAt(i)] << 18) | (revLookup[b64.charCodeAt(i + 1)] << 12) | (revLookup[b64.charCodeAt(i + 2)] << 6) | revLookup[b64.charCodeAt(i + 3)] - arr[L++] = (tmp >> 16) & 0xFF - arr[L++] = (tmp >> 8) & 0xFF - arr[L++] = tmp & 0xFF - } - - if (placeHolders === 2) { - tmp = (revLookup[b64.charCodeAt(i)] << 2) | (revLookup[b64.charCodeAt(i + 1)] >> 4) - arr[L++] = tmp & 0xFF - } else if (placeHolders === 1) { - tmp = (revLookup[b64.charCodeAt(i)] << 10) | (revLookup[b64.charCodeAt(i + 1)] << 4) | (revLookup[b64.charCodeAt(i + 2)] >> 2) - arr[L++] = (tmp >> 8) & 0xFF - arr[L++] = tmp & 0xFF - } - - return arr -} - -function tripletToBase64 (num) { - return lookup[num >> 18 & 0x3F] + lookup[num >> 12 & 0x3F] + lookup[num >> 6 & 0x3F] + lookup[num & 0x3F] -} - -function encodeChunk (uint8, start, end) { - var tmp - var output = [] - for (var i = start; i < end; i += 3) { - tmp = (uint8[i] << 16) + (uint8[i + 1] << 8) + (uint8[i + 2]) - output.push(tripletToBase64(tmp)) - } - return output.join('') -} - -function fromByteArray (uint8) { - var tmp - var len = uint8.length - var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes - var output = '' - var parts = [] - var maxChunkLength = 16383 // must be multiple of 3 - - // go through the array every three bytes, we'll deal with trailing stuff later - for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) { - parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength))) - } - - // pad the end with zeros, but make sure to not forget the extra bytes - if (extraBytes === 1) { - tmp = uint8[len - 1] - output += lookup[tmp >> 2] - output += lookup[(tmp << 4) & 0x3F] - output += '==' - } else if (extraBytes === 2) { - tmp = (uint8[len - 2] << 8) + (uint8[len - 1]) - output += lookup[tmp >> 10] - output += lookup[(tmp >> 4) & 0x3F] - output += lookup[(tmp << 2) & 0x3F] - output += '=' - } - - parts.push(output) - - return parts.join('') -} - - -/***/ }), -/* 6 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -/* WEBPACK VAR INJECTION */(function(global) {/*! - * The buffer module from node.js, for the browser. - * - * @author Feross Aboukhadijeh - * @license MIT - */ -/* eslint-disable no-proto */ - - - -var base64 = __webpack_require__(5) -var ieee754 = __webpack_require__(8) -var isArray = __webpack_require__(7) - -exports.Buffer = Buffer -exports.SlowBuffer = SlowBuffer -exports.INSPECT_MAX_BYTES = 50 - -/** - * If `Buffer.TYPED_ARRAY_SUPPORT`: - * === true Use Uint8Array implementation (fastest) - * === false Use Object implementation (most compatible, even IE6) - * - * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+, - * Opera 11.6+, iOS 4.2+. - * - * Due to various browser bugs, sometimes the Object implementation will be used even - * when the browser supports typed arrays. - * - * Note: - * - * - Firefox 4-29 lacks support for adding new properties to `Uint8Array` instances, - * See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438. - * - * - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function. - * - * - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of - * incorrect length in some situations. - - * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they - * get the Object implementation, which is slower but behaves correctly. - */ -Buffer.TYPED_ARRAY_SUPPORT = global.TYPED_ARRAY_SUPPORT !== undefined - ? global.TYPED_ARRAY_SUPPORT - : typedArraySupport() - -/* - * Export kMaxLength after typed array support is determined. - */ -exports.kMaxLength = kMaxLength() - -function typedArraySupport () { - try { - var arr = new Uint8Array(1) - arr.__proto__ = {__proto__: Uint8Array.prototype, foo: function () { return 42 }} - return arr.foo() === 42 && // typed array instances can be augmented - typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray` - arr.subarray(1, 1).byteLength === 0 // ie10 has broken `subarray` - } catch (e) { - return false - } -} - -function kMaxLength () { - return Buffer.TYPED_ARRAY_SUPPORT - ? 0x7fffffff - : 0x3fffffff -} - -function createBuffer (that, length) { - if (kMaxLength() < length) { - throw new RangeError('Invalid typed array length') - } - if (Buffer.TYPED_ARRAY_SUPPORT) { - // Return an augmented `Uint8Array` instance, for best performance - that = new Uint8Array(length) - that.__proto__ = Buffer.prototype - } else { - // Fallback: Return an object instance of the Buffer class - if (that === null) { - that = new Buffer(length) - } - that.length = length - } - - return that -} - -/** - * The Buffer constructor returns instances of `Uint8Array` that have their - * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of - * `Uint8Array`, so the returned instances will have all the node `Buffer` methods - * and the `Uint8Array` methods. Square bracket notation works as expected -- it - * returns a single octet. - * - * The `Uint8Array` prototype remains unmodified. - */ - -function Buffer (arg, encodingOrOffset, length) { - if (!Buffer.TYPED_ARRAY_SUPPORT && !(this instanceof Buffer)) { - return new Buffer(arg, encodingOrOffset, length) - } - - // Common case. - if (typeof arg === 'number') { - if (typeof encodingOrOffset === 'string') { - throw new Error( - 'If encoding is specified then the first argument must be a string' - ) - } - return allocUnsafe(this, arg) - } - return from(this, arg, encodingOrOffset, length) -} - -Buffer.poolSize = 8192 // not used by this implementation - -// TODO: Legacy, not needed anymore. Remove in next major version. -Buffer._augment = function (arr) { - arr.__proto__ = Buffer.prototype - return arr -} - -function from (that, value, encodingOrOffset, length) { - if (typeof value === 'number') { - throw new TypeError('"value" argument must not be a number') - } - - if (typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer) { - return fromArrayBuffer(that, value, encodingOrOffset, length) - } - - if (typeof value === 'string') { - return fromString(that, value, encodingOrOffset) - } - - return fromObject(that, value) -} - -/** - * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError - * if value is a number. - * Buffer.from(str[, encoding]) - * Buffer.from(array) - * Buffer.from(buffer) - * Buffer.from(arrayBuffer[, byteOffset[, length]]) - **/ -Buffer.from = function (value, encodingOrOffset, length) { - return from(null, value, encodingOrOffset, length) -} - -if (Buffer.TYPED_ARRAY_SUPPORT) { - Buffer.prototype.__proto__ = Uint8Array.prototype - Buffer.__proto__ = Uint8Array - if (typeof Symbol !== 'undefined' && Symbol.species && - Buffer[Symbol.species] === Buffer) { - // Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97 - Object.defineProperty(Buffer, Symbol.species, { - value: null, - configurable: true - }) - } -} - -function assertSize (size) { - if (typeof size !== 'number') { - throw new TypeError('"size" argument must be a number') - } else if (size < 0) { - throw new RangeError('"size" argument must not be negative') - } -} - -function alloc (that, size, fill, encoding) { - assertSize(size) - if (size <= 0) { - return createBuffer(that, size) - } - if (fill !== undefined) { - // Only pay attention to encoding if it's a string. This - // prevents accidentally sending in a number that would - // be interpretted as a start offset. - return typeof encoding === 'string' - ? createBuffer(that, size).fill(fill, encoding) - : createBuffer(that, size).fill(fill) - } - return createBuffer(that, size) -} - -/** - * Creates a new filled Buffer instance. - * alloc(size[, fill[, encoding]]) - **/ -Buffer.alloc = function (size, fill, encoding) { - return alloc(null, size, fill, encoding) -} - -function allocUnsafe (that, size) { - assertSize(size) - that = createBuffer(that, size < 0 ? 0 : checked(size) | 0) - if (!Buffer.TYPED_ARRAY_SUPPORT) { - for (var i = 0; i < size; ++i) { - that[i] = 0 - } - } - return that -} - -/** - * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance. - * */ -Buffer.allocUnsafe = function (size) { - return allocUnsafe(null, size) -} -/** - * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance. - */ -Buffer.allocUnsafeSlow = function (size) { - return allocUnsafe(null, size) -} - -function fromString (that, string, encoding) { - if (typeof encoding !== 'string' || encoding === '') { - encoding = 'utf8' - } - - if (!Buffer.isEncoding(encoding)) { - throw new TypeError('"encoding" must be a valid string encoding') - } - - var length = byteLength(string, encoding) | 0 - that = createBuffer(that, length) - - var actual = that.write(string, encoding) - - if (actual !== length) { - // Writing a hex string, for example, that contains invalid characters will - // cause everything after the first invalid character to be ignored. (e.g. - // 'abxxcd' will be treated as 'ab') - that = that.slice(0, actual) - } - - return that -} - -function fromArrayLike (that, array) { - var length = array.length < 0 ? 0 : checked(array.length) | 0 - that = createBuffer(that, length) - for (var i = 0; i < length; i += 1) { - that[i] = array[i] & 255 - } - return that -} - -function fromArrayBuffer (that, array, byteOffset, length) { - array.byteLength // this throws if `array` is not a valid ArrayBuffer - - if (byteOffset < 0 || array.byteLength < byteOffset) { - throw new RangeError('\'offset\' is out of bounds') - } - - if (array.byteLength < byteOffset + (length || 0)) { - throw new RangeError('\'length\' is out of bounds') - } - - if (byteOffset === undefined && length === undefined) { - array = new Uint8Array(array) - } else if (length === undefined) { - array = new Uint8Array(array, byteOffset) - } else { - array = new Uint8Array(array, byteOffset, length) - } - - if (Buffer.TYPED_ARRAY_SUPPORT) { - // Return an augmented `Uint8Array` instance, for best performance - that = array - that.__proto__ = Buffer.prototype - } else { - // Fallback: Return an object instance of the Buffer class - that = fromArrayLike(that, array) - } - return that -} - -function fromObject (that, obj) { - if (Buffer.isBuffer(obj)) { - var len = checked(obj.length) | 0 - that = createBuffer(that, len) - - if (that.length === 0) { - return that - } - - obj.copy(that, 0, 0, len) - return that - } - - if (obj) { - if ((typeof ArrayBuffer !== 'undefined' && - obj.buffer instanceof ArrayBuffer) || 'length' in obj) { - if (typeof obj.length !== 'number' || isnan(obj.length)) { - return createBuffer(that, 0) - } - return fromArrayLike(that, obj) - } - - if (obj.type === 'Buffer' && isArray(obj.data)) { - return fromArrayLike(that, obj.data) - } - } - - throw new TypeError('First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.') -} - -function checked (length) { - // Note: cannot use `length < kMaxLength()` here because that fails when - // length is NaN (which is otherwise coerced to zero.) - if (length >= kMaxLength()) { - throw new RangeError('Attempt to allocate Buffer larger than maximum ' + - 'size: 0x' + kMaxLength().toString(16) + ' bytes') - } - return length | 0 -} - -function SlowBuffer (length) { - if (+length != length) { // eslint-disable-line eqeqeq - length = 0 - } - return Buffer.alloc(+length) -} - -Buffer.isBuffer = function isBuffer (b) { - return !!(b != null && b._isBuffer) -} - -Buffer.compare = function compare (a, b) { - if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) { - throw new TypeError('Arguments must be Buffers') - } - - if (a === b) return 0 - - var x = a.length - var y = b.length - - for (var i = 0, len = Math.min(x, y); i < len; ++i) { - if (a[i] !== b[i]) { - x = a[i] - y = b[i] - break - } - } - - if (x < y) return -1 - if (y < x) return 1 - return 0 -} - -Buffer.isEncoding = function isEncoding (encoding) { - switch (String(encoding).toLowerCase()) { - case 'hex': - case 'utf8': - case 'utf-8': - case 'ascii': - case 'latin1': - case 'binary': - case 'base64': - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return true - default: - return false - } -} - -Buffer.concat = function concat (list, length) { - if (!isArray(list)) { - throw new TypeError('"list" argument must be an Array of Buffers') - } - - if (list.length === 0) { - return Buffer.alloc(0) - } - - var i - if (length === undefined) { - length = 0 - for (i = 0; i < list.length; ++i) { - length += list[i].length - } - } - - var buffer = Buffer.allocUnsafe(length) - var pos = 0 - for (i = 0; i < list.length; ++i) { - var buf = list[i] - if (!Buffer.isBuffer(buf)) { - throw new TypeError('"list" argument must be an Array of Buffers') - } - buf.copy(buffer, pos) - pos += buf.length - } - return buffer -} - -function byteLength (string, encoding) { - if (Buffer.isBuffer(string)) { - return string.length - } - if (typeof ArrayBuffer !== 'undefined' && typeof ArrayBuffer.isView === 'function' && - (ArrayBuffer.isView(string) || string instanceof ArrayBuffer)) { - return string.byteLength - } - if (typeof string !== 'string') { - string = '' + string - } - - var len = string.length - if (len === 0) return 0 - - // Use a for loop to avoid recursion - var loweredCase = false - for (;;) { - switch (encoding) { - case 'ascii': - case 'latin1': - case 'binary': - return len - case 'utf8': - case 'utf-8': - case undefined: - return utf8ToBytes(string).length - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return len * 2 - case 'hex': - return len >>> 1 - case 'base64': - return base64ToBytes(string).length - default: - if (loweredCase) return utf8ToBytes(string).length // assume utf8 - encoding = ('' + encoding).toLowerCase() - loweredCase = true - } - } -} -Buffer.byteLength = byteLength - -function slowToString (encoding, start, end) { - var loweredCase = false - - // No need to verify that "this.length <= MAX_UINT32" since it's a read-only - // property of a typed array. - - // This behaves neither like String nor Uint8Array in that we set start/end - // to their upper/lower bounds if the value passed is out of range. - // undefined is handled specially as per ECMA-262 6th Edition, - // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization. - if (start === undefined || start < 0) { - start = 0 - } - // Return early if start > this.length. Done here to prevent potential uint32 - // coercion fail below. - if (start > this.length) { - return '' - } - - if (end === undefined || end > this.length) { - end = this.length - } - - if (end <= 0) { - return '' - } - - // Force coersion to uint32. This will also coerce falsey/NaN values to 0. - end >>>= 0 - start >>>= 0 - - if (end <= start) { - return '' - } - - if (!encoding) encoding = 'utf8' - - while (true) { - switch (encoding) { - case 'hex': - return hexSlice(this, start, end) - - case 'utf8': - case 'utf-8': - return utf8Slice(this, start, end) - - case 'ascii': - return asciiSlice(this, start, end) - - case 'latin1': - case 'binary': - return latin1Slice(this, start, end) - - case 'base64': - return base64Slice(this, start, end) - - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return utf16leSlice(this, start, end) - - default: - if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding) - encoding = (encoding + '').toLowerCase() - loweredCase = true - } - } -} - -// The property is used by `Buffer.isBuffer` and `is-buffer` (in Safari 5-7) to detect -// Buffer instances. -Buffer.prototype._isBuffer = true - -function swap (b, n, m) { - var i = b[n] - b[n] = b[m] - b[m] = i -} - -Buffer.prototype.swap16 = function swap16 () { - var len = this.length - if (len % 2 !== 0) { - throw new RangeError('Buffer size must be a multiple of 16-bits') - } - for (var i = 0; i < len; i += 2) { - swap(this, i, i + 1) - } - return this -} - -Buffer.prototype.swap32 = function swap32 () { - var len = this.length - if (len % 4 !== 0) { - throw new RangeError('Buffer size must be a multiple of 32-bits') - } - for (var i = 0; i < len; i += 4) { - swap(this, i, i + 3) - swap(this, i + 1, i + 2) - } - return this -} - -Buffer.prototype.swap64 = function swap64 () { - var len = this.length - if (len % 8 !== 0) { - throw new RangeError('Buffer size must be a multiple of 64-bits') - } - for (var i = 0; i < len; i += 8) { - swap(this, i, i + 7) - swap(this, i + 1, i + 6) - swap(this, i + 2, i + 5) - swap(this, i + 3, i + 4) - } - return this -} - -Buffer.prototype.toString = function toString () { - var length = this.length | 0 - if (length === 0) return '' - if (arguments.length === 0) return utf8Slice(this, 0, length) - return slowToString.apply(this, arguments) -} - -Buffer.prototype.equals = function equals (b) { - if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer') - if (this === b) return true - return Buffer.compare(this, b) === 0 -} - -Buffer.prototype.inspect = function inspect () { - var str = '' - var max = exports.INSPECT_MAX_BYTES - if (this.length > 0) { - str = this.toString('hex', 0, max).match(/.{2}/g).join(' ') - if (this.length > max) str += ' ... ' - } - return '' -} - -Buffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) { - if (!Buffer.isBuffer(target)) { - throw new TypeError('Argument must be a Buffer') - } - - if (start === undefined) { - start = 0 - } - if (end === undefined) { - end = target ? target.length : 0 - } - if (thisStart === undefined) { - thisStart = 0 - } - if (thisEnd === undefined) { - thisEnd = this.length - } - - if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) { - throw new RangeError('out of range index') - } - - if (thisStart >= thisEnd && start >= end) { - return 0 - } - if (thisStart >= thisEnd) { - return -1 - } - if (start >= end) { - return 1 - } - - start >>>= 0 - end >>>= 0 - thisStart >>>= 0 - thisEnd >>>= 0 - - if (this === target) return 0 - - var x = thisEnd - thisStart - var y = end - start - var len = Math.min(x, y) - - var thisCopy = this.slice(thisStart, thisEnd) - var targetCopy = target.slice(start, end) - - for (var i = 0; i < len; ++i) { - if (thisCopy[i] !== targetCopy[i]) { - x = thisCopy[i] - y = targetCopy[i] - break - } - } - - if (x < y) return -1 - if (y < x) return 1 - return 0 -} - -// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`, -// OR the last index of `val` in `buffer` at offset <= `byteOffset`. -// -// Arguments: -// - buffer - a Buffer to search -// - val - a string, Buffer, or number -// - byteOffset - an index into `buffer`; will be clamped to an int32 -// - encoding - an optional encoding, relevant is val is a string -// - dir - true for indexOf, false for lastIndexOf -function bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) { - // Empty buffer means no match - if (buffer.length === 0) return -1 - - // Normalize byteOffset - if (typeof byteOffset === 'string') { - encoding = byteOffset - byteOffset = 0 - } else if (byteOffset > 0x7fffffff) { - byteOffset = 0x7fffffff - } else if (byteOffset < -0x80000000) { - byteOffset = -0x80000000 - } - byteOffset = +byteOffset // Coerce to Number. - if (isNaN(byteOffset)) { - // byteOffset: it it's undefined, null, NaN, "foo", etc, search whole buffer - byteOffset = dir ? 0 : (buffer.length - 1) - } - - // Normalize byteOffset: negative offsets start from the end of the buffer - if (byteOffset < 0) byteOffset = buffer.length + byteOffset - if (byteOffset >= buffer.length) { - if (dir) return -1 - else byteOffset = buffer.length - 1 - } else if (byteOffset < 0) { - if (dir) byteOffset = 0 - else return -1 - } - - // Normalize val - if (typeof val === 'string') { - val = Buffer.from(val, encoding) - } - - // Finally, search either indexOf (if dir is true) or lastIndexOf - if (Buffer.isBuffer(val)) { - // Special case: looking for empty string/buffer always fails - if (val.length === 0) { - return -1 - } - return arrayIndexOf(buffer, val, byteOffset, encoding, dir) - } else if (typeof val === 'number') { - val = val & 0xFF // Search for a byte value [0-255] - if (Buffer.TYPED_ARRAY_SUPPORT && - typeof Uint8Array.prototype.indexOf === 'function') { - if (dir) { - return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset) - } else { - return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset) - } - } - return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir) - } - - throw new TypeError('val must be string, number or Buffer') -} - -function arrayIndexOf (arr, val, byteOffset, encoding, dir) { - var indexSize = 1 - var arrLength = arr.length - var valLength = val.length - - if (encoding !== undefined) { - encoding = String(encoding).toLowerCase() - if (encoding === 'ucs2' || encoding === 'ucs-2' || - encoding === 'utf16le' || encoding === 'utf-16le') { - if (arr.length < 2 || val.length < 2) { - return -1 - } - indexSize = 2 - arrLength /= 2 - valLength /= 2 - byteOffset /= 2 - } - } - - function read (buf, i) { - if (indexSize === 1) { - return buf[i] - } else { - return buf.readUInt16BE(i * indexSize) - } - } - - var i - if (dir) { - var foundIndex = -1 - for (i = byteOffset; i < arrLength; i++) { - if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) { - if (foundIndex === -1) foundIndex = i - if (i - foundIndex + 1 === valLength) return foundIndex * indexSize - } else { - if (foundIndex !== -1) i -= i - foundIndex - foundIndex = -1 - } - } - } else { - if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength - for (i = byteOffset; i >= 0; i--) { - var found = true - for (var j = 0; j < valLength; j++) { - if (read(arr, i + j) !== read(val, j)) { - found = false - break - } - } - if (found) return i - } - } - - return -1 -} - -Buffer.prototype.includes = function includes (val, byteOffset, encoding) { - return this.indexOf(val, byteOffset, encoding) !== -1 -} - -Buffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) { - return bidirectionalIndexOf(this, val, byteOffset, encoding, true) -} - -Buffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) { - return bidirectionalIndexOf(this, val, byteOffset, encoding, false) -} - -function hexWrite (buf, string, offset, length) { - offset = Number(offset) || 0 - var remaining = buf.length - offset - if (!length) { - length = remaining - } else { - length = Number(length) - if (length > remaining) { - length = remaining - } - } - - // must be an even number of digits - var strLen = string.length - if (strLen % 2 !== 0) throw new TypeError('Invalid hex string') - - if (length > strLen / 2) { - length = strLen / 2 - } - for (var i = 0; i < length; ++i) { - var parsed = parseInt(string.substr(i * 2, 2), 16) - if (isNaN(parsed)) return i - buf[offset + i] = parsed - } - return i -} - -function utf8Write (buf, string, offset, length) { - return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length) -} - -function asciiWrite (buf, string, offset, length) { - return blitBuffer(asciiToBytes(string), buf, offset, length) -} - -function latin1Write (buf, string, offset, length) { - return asciiWrite(buf, string, offset, length) -} - -function base64Write (buf, string, offset, length) { - return blitBuffer(base64ToBytes(string), buf, offset, length) -} - -function ucs2Write (buf, string, offset, length) { - return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length) -} - -Buffer.prototype.write = function write (string, offset, length, encoding) { - // Buffer#write(string) - if (offset === undefined) { - encoding = 'utf8' - length = this.length - offset = 0 - // Buffer#write(string, encoding) - } else if (length === undefined && typeof offset === 'string') { - encoding = offset - length = this.length - offset = 0 - // Buffer#write(string, offset[, length][, encoding]) - } else if (isFinite(offset)) { - offset = offset | 0 - if (isFinite(length)) { - length = length | 0 - if (encoding === undefined) encoding = 'utf8' - } else { - encoding = length - length = undefined - } - // legacy write(string, encoding, offset, length) - remove in v0.13 - } else { - throw new Error( - 'Buffer.write(string, encoding, offset[, length]) is no longer supported' - ) - } - - var remaining = this.length - offset - if (length === undefined || length > remaining) length = remaining - - if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) { - throw new RangeError('Attempt to write outside buffer bounds') - } - - if (!encoding) encoding = 'utf8' - - var loweredCase = false - for (;;) { - switch (encoding) { - case 'hex': - return hexWrite(this, string, offset, length) - - case 'utf8': - case 'utf-8': - return utf8Write(this, string, offset, length) - - case 'ascii': - return asciiWrite(this, string, offset, length) - - case 'latin1': - case 'binary': - return latin1Write(this, string, offset, length) - - case 'base64': - // Warning: maxLength not taken into account in base64Write - return base64Write(this, string, offset, length) - - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return ucs2Write(this, string, offset, length) - - default: - if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding) - encoding = ('' + encoding).toLowerCase() - loweredCase = true - } - } -} - -Buffer.prototype.toJSON = function toJSON () { - return { - type: 'Buffer', - data: Array.prototype.slice.call(this._arr || this, 0) - } -} - -function base64Slice (buf, start, end) { - if (start === 0 && end === buf.length) { - return base64.fromByteArray(buf) - } else { - return base64.fromByteArray(buf.slice(start, end)) - } -} - -function utf8Slice (buf, start, end) { - end = Math.min(buf.length, end) - var res = [] - - var i = start - while (i < end) { - var firstByte = buf[i] - var codePoint = null - var bytesPerSequence = (firstByte > 0xEF) ? 4 - : (firstByte > 0xDF) ? 3 - : (firstByte > 0xBF) ? 2 - : 1 - - if (i + bytesPerSequence <= end) { - var secondByte, thirdByte, fourthByte, tempCodePoint - - switch (bytesPerSequence) { - case 1: - if (firstByte < 0x80) { - codePoint = firstByte - } - break - case 2: - secondByte = buf[i + 1] - if ((secondByte & 0xC0) === 0x80) { - tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F) - if (tempCodePoint > 0x7F) { - codePoint = tempCodePoint - } - } - break - case 3: - secondByte = buf[i + 1] - thirdByte = buf[i + 2] - if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) { - tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F) - if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) { - codePoint = tempCodePoint - } - } - break - case 4: - secondByte = buf[i + 1] - thirdByte = buf[i + 2] - fourthByte = buf[i + 3] - if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) { - tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F) - if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) { - codePoint = tempCodePoint - } - } - } - } - - if (codePoint === null) { - // we did not generate a valid codePoint so insert a - // replacement char (U+FFFD) and advance only 1 byte - codePoint = 0xFFFD - bytesPerSequence = 1 - } else if (codePoint > 0xFFFF) { - // encode to utf16 (surrogate pair dance) - codePoint -= 0x10000 - res.push(codePoint >>> 10 & 0x3FF | 0xD800) - codePoint = 0xDC00 | codePoint & 0x3FF - } - - res.push(codePoint) - i += bytesPerSequence - } - - return decodeCodePointsArray(res) -} - -// Based on http://stackoverflow.com/a/22747272/680742, the browser with -// the lowest limit is Chrome, with 0x10000 args. -// We go 1 magnitude less, for safety -var MAX_ARGUMENTS_LENGTH = 0x1000 - -function decodeCodePointsArray (codePoints) { - var len = codePoints.length - if (len <= MAX_ARGUMENTS_LENGTH) { - return String.fromCharCode.apply(String, codePoints) // avoid extra slice() - } - - // Decode in chunks to avoid "call stack size exceeded". - var res = '' - var i = 0 - while (i < len) { - res += String.fromCharCode.apply( - String, - codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH) - ) - } - return res -} - -function asciiSlice (buf, start, end) { - var ret = '' - end = Math.min(buf.length, end) - - for (var i = start; i < end; ++i) { - ret += String.fromCharCode(buf[i] & 0x7F) - } - return ret -} - -function latin1Slice (buf, start, end) { - var ret = '' - end = Math.min(buf.length, end) - - for (var i = start; i < end; ++i) { - ret += String.fromCharCode(buf[i]) - } - return ret -} - -function hexSlice (buf, start, end) { - var len = buf.length - - if (!start || start < 0) start = 0 - if (!end || end < 0 || end > len) end = len - - var out = '' - for (var i = start; i < end; ++i) { - out += toHex(buf[i]) - } - return out -} - -function utf16leSlice (buf, start, end) { - var bytes = buf.slice(start, end) - var res = '' - for (var i = 0; i < bytes.length; i += 2) { - res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256) - } - return res -} - -Buffer.prototype.slice = function slice (start, end) { - var len = this.length - start = ~~start - end = end === undefined ? len : ~~end - - if (start < 0) { - start += len - if (start < 0) start = 0 - } else if (start > len) { - start = len - } - - if (end < 0) { - end += len - if (end < 0) end = 0 - } else if (end > len) { - end = len - } - - if (end < start) end = start - - var newBuf - if (Buffer.TYPED_ARRAY_SUPPORT) { - newBuf = this.subarray(start, end) - newBuf.__proto__ = Buffer.prototype - } else { - var sliceLen = end - start - newBuf = new Buffer(sliceLen, undefined) - for (var i = 0; i < sliceLen; ++i) { - newBuf[i] = this[i + start] - } - } - - return newBuf -} - -/* - * Need to make sure that buffer isn't trying to write out of bounds. - */ -function checkOffset (offset, ext, length) { - if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint') - if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length') -} - -Buffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) { - offset = offset | 0 - byteLength = byteLength | 0 - if (!noAssert) checkOffset(offset, byteLength, this.length) - - var val = this[offset] - var mul = 1 - var i = 0 - while (++i < byteLength && (mul *= 0x100)) { - val += this[offset + i] * mul - } - - return val -} - -Buffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) { - offset = offset | 0 - byteLength = byteLength | 0 - if (!noAssert) { - checkOffset(offset, byteLength, this.length) - } - - var val = this[offset + --byteLength] - var mul = 1 - while (byteLength > 0 && (mul *= 0x100)) { - val += this[offset + --byteLength] * mul - } - - return val -} - -Buffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) { - if (!noAssert) checkOffset(offset, 1, this.length) - return this[offset] -} - -Buffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 2, this.length) - return this[offset] | (this[offset + 1] << 8) -} - -Buffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 2, this.length) - return (this[offset] << 8) | this[offset + 1] -} - -Buffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 4, this.length) - - return ((this[offset]) | - (this[offset + 1] << 8) | - (this[offset + 2] << 16)) + - (this[offset + 3] * 0x1000000) -} - -Buffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 4, this.length) - - return (this[offset] * 0x1000000) + - ((this[offset + 1] << 16) | - (this[offset + 2] << 8) | - this[offset + 3]) -} - -Buffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) { - offset = offset | 0 - byteLength = byteLength | 0 - if (!noAssert) checkOffset(offset, byteLength, this.length) - - var val = this[offset] - var mul = 1 - var i = 0 - while (++i < byteLength && (mul *= 0x100)) { - val += this[offset + i] * mul - } - mul *= 0x80 - - if (val >= mul) val -= Math.pow(2, 8 * byteLength) - - return val -} - -Buffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) { - offset = offset | 0 - byteLength = byteLength | 0 - if (!noAssert) checkOffset(offset, byteLength, this.length) - - var i = byteLength - var mul = 1 - var val = this[offset + --i] - while (i > 0 && (mul *= 0x100)) { - val += this[offset + --i] * mul - } - mul *= 0x80 - - if (val >= mul) val -= Math.pow(2, 8 * byteLength) - - return val -} - -Buffer.prototype.readInt8 = function readInt8 (offset, noAssert) { - if (!noAssert) checkOffset(offset, 1, this.length) - if (!(this[offset] & 0x80)) return (this[offset]) - return ((0xff - this[offset] + 1) * -1) -} - -Buffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 2, this.length) - var val = this[offset] | (this[offset + 1] << 8) - return (val & 0x8000) ? val | 0xFFFF0000 : val -} - -Buffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 2, this.length) - var val = this[offset + 1] | (this[offset] << 8) - return (val & 0x8000) ? val | 0xFFFF0000 : val -} - -Buffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 4, this.length) - - return (this[offset]) | - (this[offset + 1] << 8) | - (this[offset + 2] << 16) | - (this[offset + 3] << 24) -} - -Buffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 4, this.length) - - return (this[offset] << 24) | - (this[offset + 1] << 16) | - (this[offset + 2] << 8) | - (this[offset + 3]) -} - -Buffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 4, this.length) - return ieee754.read(this, offset, true, 23, 4) -} - -Buffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 4, this.length) - return ieee754.read(this, offset, false, 23, 4) -} - -Buffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 8, this.length) - return ieee754.read(this, offset, true, 52, 8) -} - -Buffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 8, this.length) - return ieee754.read(this, offset, false, 52, 8) -} - -function checkInt (buf, value, offset, ext, max, min) { - if (!Buffer.isBuffer(buf)) throw new TypeError('"buffer" argument must be a Buffer instance') - if (value > max || value < min) throw new RangeError('"value" argument is out of bounds') - if (offset + ext > buf.length) throw new RangeError('Index out of range') -} - -Buffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) { - value = +value - offset = offset | 0 - byteLength = byteLength | 0 - if (!noAssert) { - var maxBytes = Math.pow(2, 8 * byteLength) - 1 - checkInt(this, value, offset, byteLength, maxBytes, 0) - } - - var mul = 1 - var i = 0 - this[offset] = value & 0xFF - while (++i < byteLength && (mul *= 0x100)) { - this[offset + i] = (value / mul) & 0xFF - } - - return offset + byteLength -} - -Buffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) { - value = +value - offset = offset | 0 - byteLength = byteLength | 0 - if (!noAssert) { - var maxBytes = Math.pow(2, 8 * byteLength) - 1 - checkInt(this, value, offset, byteLength, maxBytes, 0) - } - - var i = byteLength - 1 - var mul = 1 - this[offset + i] = value & 0xFF - while (--i >= 0 && (mul *= 0x100)) { - this[offset + i] = (value / mul) & 0xFF - } - - return offset + byteLength -} - -Buffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0) - if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value) - this[offset] = (value & 0xff) - return offset + 1 -} - -function objectWriteUInt16 (buf, value, offset, littleEndian) { - if (value < 0) value = 0xffff + value + 1 - for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; ++i) { - buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>> - (littleEndian ? i : 1 - i) * 8 - } -} - -Buffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0) - if (Buffer.TYPED_ARRAY_SUPPORT) { - this[offset] = (value & 0xff) - this[offset + 1] = (value >>> 8) - } else { - objectWriteUInt16(this, value, offset, true) - } - return offset + 2 -} - -Buffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0) - if (Buffer.TYPED_ARRAY_SUPPORT) { - this[offset] = (value >>> 8) - this[offset + 1] = (value & 0xff) - } else { - objectWriteUInt16(this, value, offset, false) - } - return offset + 2 -} - -function objectWriteUInt32 (buf, value, offset, littleEndian) { - if (value < 0) value = 0xffffffff + value + 1 - for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; ++i) { - buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff - } -} - -Buffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0) - if (Buffer.TYPED_ARRAY_SUPPORT) { - this[offset + 3] = (value >>> 24) - this[offset + 2] = (value >>> 16) - this[offset + 1] = (value >>> 8) - this[offset] = (value & 0xff) - } else { - objectWriteUInt32(this, value, offset, true) - } - return offset + 4 -} - -Buffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0) - if (Buffer.TYPED_ARRAY_SUPPORT) { - this[offset] = (value >>> 24) - this[offset + 1] = (value >>> 16) - this[offset + 2] = (value >>> 8) - this[offset + 3] = (value & 0xff) - } else { - objectWriteUInt32(this, value, offset, false) - } - return offset + 4 -} - -Buffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) { - var limit = Math.pow(2, 8 * byteLength - 1) - - checkInt(this, value, offset, byteLength, limit - 1, -limit) - } - - var i = 0 - var mul = 1 - var sub = 0 - this[offset] = value & 0xFF - while (++i < byteLength && (mul *= 0x100)) { - if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) { - sub = 1 - } - this[offset + i] = ((value / mul) >> 0) - sub & 0xFF - } - - return offset + byteLength -} - -Buffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) { - var limit = Math.pow(2, 8 * byteLength - 1) - - checkInt(this, value, offset, byteLength, limit - 1, -limit) - } - - var i = byteLength - 1 - var mul = 1 - var sub = 0 - this[offset + i] = value & 0xFF - while (--i >= 0 && (mul *= 0x100)) { - if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) { - sub = 1 - } - this[offset + i] = ((value / mul) >> 0) - sub & 0xFF - } - - return offset + byteLength -} - -Buffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80) - if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value) - if (value < 0) value = 0xff + value + 1 - this[offset] = (value & 0xff) - return offset + 1 -} - -Buffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000) - if (Buffer.TYPED_ARRAY_SUPPORT) { - this[offset] = (value & 0xff) - this[offset + 1] = (value >>> 8) - } else { - objectWriteUInt16(this, value, offset, true) - } - return offset + 2 -} - -Buffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000) - if (Buffer.TYPED_ARRAY_SUPPORT) { - this[offset] = (value >>> 8) - this[offset + 1] = (value & 0xff) - } else { - objectWriteUInt16(this, value, offset, false) - } - return offset + 2 -} - -Buffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000) - if (Buffer.TYPED_ARRAY_SUPPORT) { - this[offset] = (value & 0xff) - this[offset + 1] = (value >>> 8) - this[offset + 2] = (value >>> 16) - this[offset + 3] = (value >>> 24) - } else { - objectWriteUInt32(this, value, offset, true) - } - return offset + 4 -} - -Buffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000) - if (value < 0) value = 0xffffffff + value + 1 - if (Buffer.TYPED_ARRAY_SUPPORT) { - this[offset] = (value >>> 24) - this[offset + 1] = (value >>> 16) - this[offset + 2] = (value >>> 8) - this[offset + 3] = (value & 0xff) - } else { - objectWriteUInt32(this, value, offset, false) - } - return offset + 4 -} - -function checkIEEE754 (buf, value, offset, ext, max, min) { - if (offset + ext > buf.length) throw new RangeError('Index out of range') - if (offset < 0) throw new RangeError('Index out of range') -} - -function writeFloat (buf, value, offset, littleEndian, noAssert) { - if (!noAssert) { - checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38) - } - ieee754.write(buf, value, offset, littleEndian, 23, 4) - return offset + 4 -} - -Buffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) { - return writeFloat(this, value, offset, true, noAssert) -} - -Buffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) { - return writeFloat(this, value, offset, false, noAssert) -} - -function writeDouble (buf, value, offset, littleEndian, noAssert) { - if (!noAssert) { - checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308) - } - ieee754.write(buf, value, offset, littleEndian, 52, 8) - return offset + 8 -} - -Buffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) { - return writeDouble(this, value, offset, true, noAssert) -} - -Buffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) { - return writeDouble(this, value, offset, false, noAssert) -} - -// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length) -Buffer.prototype.copy = function copy (target, targetStart, start, end) { - if (!start) start = 0 - if (!end && end !== 0) end = this.length - if (targetStart >= target.length) targetStart = target.length - if (!targetStart) targetStart = 0 - if (end > 0 && end < start) end = start - - // Copy 0 bytes; we're done - if (end === start) return 0 - if (target.length === 0 || this.length === 0) return 0 - - // Fatal error conditions - if (targetStart < 0) { - throw new RangeError('targetStart out of bounds') - } - if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds') - if (end < 0) throw new RangeError('sourceEnd out of bounds') - - // Are we oob? - if (end > this.length) end = this.length - if (target.length - targetStart < end - start) { - end = target.length - targetStart + start - } - - var len = end - start - var i - - if (this === target && start < targetStart && targetStart < end) { - // descending copy from end - for (i = len - 1; i >= 0; --i) { - target[i + targetStart] = this[i + start] - } - } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) { - // ascending copy from start - for (i = 0; i < len; ++i) { - target[i + targetStart] = this[i + start] - } - } else { - Uint8Array.prototype.set.call( - target, - this.subarray(start, start + len), - targetStart - ) - } - - return len -} - -// Usage: -// buffer.fill(number[, offset[, end]]) -// buffer.fill(buffer[, offset[, end]]) -// buffer.fill(string[, offset[, end]][, encoding]) -Buffer.prototype.fill = function fill (val, start, end, encoding) { - // Handle string cases: - if (typeof val === 'string') { - if (typeof start === 'string') { - encoding = start - start = 0 - end = this.length - } else if (typeof end === 'string') { - encoding = end - end = this.length - } - if (val.length === 1) { - var code = val.charCodeAt(0) - if (code < 256) { - val = code - } - } - if (encoding !== undefined && typeof encoding !== 'string') { - throw new TypeError('encoding must be a string') - } - if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) { - throw new TypeError('Unknown encoding: ' + encoding) - } - } else if (typeof val === 'number') { - val = val & 255 - } - - // Invalid ranges are not set to a default, so can range check early. - if (start < 0 || this.length < start || this.length < end) { - throw new RangeError('Out of range index') - } - - if (end <= start) { - return this - } - - start = start >>> 0 - end = end === undefined ? this.length : end >>> 0 - - if (!val) val = 0 - - var i - if (typeof val === 'number') { - for (i = start; i < end; ++i) { - this[i] = val - } - } else { - var bytes = Buffer.isBuffer(val) - ? val - : utf8ToBytes(new Buffer(val, encoding).toString()) - var len = bytes.length - for (i = 0; i < end - start; ++i) { - this[i + start] = bytes[i % len] - } - } - - return this -} - -// HELPER FUNCTIONS -// ================ - -var INVALID_BASE64_RE = /[^+\/0-9A-Za-z-_]/g - -function base64clean (str) { - // Node strips out invalid characters like \n and \t from the string, base64-js does not - str = stringtrim(str).replace(INVALID_BASE64_RE, '') - // Node converts strings with length < 2 to '' - if (str.length < 2) return '' - // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not - while (str.length % 4 !== 0) { - str = str + '=' - } - return str -} - -function stringtrim (str) { - if (str.trim) return str.trim() - return str.replace(/^\s+|\s+$/g, '') -} - -function toHex (n) { - if (n < 16) return '0' + n.toString(16) - return n.toString(16) -} - -function utf8ToBytes (string, units) { - units = units || Infinity - var codePoint - var length = string.length - var leadSurrogate = null - var bytes = [] - - for (var i = 0; i < length; ++i) { - codePoint = string.charCodeAt(i) - - // is surrogate component - if (codePoint > 0xD7FF && codePoint < 0xE000) { - // last char was a lead - if (!leadSurrogate) { - // no lead yet - if (codePoint > 0xDBFF) { - // unexpected trail - if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) - continue - } else if (i + 1 === length) { - // unpaired lead - if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) - continue - } - - // valid lead - leadSurrogate = codePoint - - continue - } - - // 2 leads in a row - if (codePoint < 0xDC00) { - if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) - leadSurrogate = codePoint - continue - } - - // valid surrogate pair - codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000 - } else if (leadSurrogate) { - // valid bmp char, but last char was a lead - if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) - } - - leadSurrogate = null - - // encode utf8 - if (codePoint < 0x80) { - if ((units -= 1) < 0) break - bytes.push(codePoint) - } else if (codePoint < 0x800) { - if ((units -= 2) < 0) break - bytes.push( - codePoint >> 0x6 | 0xC0, - codePoint & 0x3F | 0x80 - ) - } else if (codePoint < 0x10000) { - if ((units -= 3) < 0) break - bytes.push( - codePoint >> 0xC | 0xE0, - codePoint >> 0x6 & 0x3F | 0x80, - codePoint & 0x3F | 0x80 - ) - } else if (codePoint < 0x110000) { - if ((units -= 4) < 0) break - bytes.push( - codePoint >> 0x12 | 0xF0, - codePoint >> 0xC & 0x3F | 0x80, - codePoint >> 0x6 & 0x3F | 0x80, - codePoint & 0x3F | 0x80 - ) - } else { - throw new Error('Invalid code point') - } - } - - return bytes -} - -function asciiToBytes (str) { - var byteArray = [] - for (var i = 0; i < str.length; ++i) { - // Node's code seems to be doing this and not & 0x7F.. - byteArray.push(str.charCodeAt(i) & 0xFF) - } - return byteArray -} - -function utf16leToBytes (str, units) { - var c, hi, lo - var byteArray = [] - for (var i = 0; i < str.length; ++i) { - if ((units -= 2) < 0) break - - c = str.charCodeAt(i) - hi = c >> 8 - lo = c % 256 - byteArray.push(lo) - byteArray.push(hi) - } - - return byteArray -} - -function base64ToBytes (str) { - return base64.toByteArray(base64clean(str)) -} - -function blitBuffer (src, dst, offset, length) { - for (var i = 0; i < length; ++i) { - if ((i + offset >= dst.length) || (i >= src.length)) break - dst[i + offset] = src[i] - } - return i -} - -function isnan (val) { - return val !== val // eslint-disable-line no-self-compare -} - -/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(0))) - -/***/ }), -/* 7 */ -/***/ (function(module, exports) { - -var toString = {}.toString; - -module.exports = Array.isArray || function (arr) { - return toString.call(arr) == '[object Array]'; -}; - - -/***/ }), -/* 8 */ -/***/ (function(module, exports) { - -exports.read = function (buffer, offset, isLE, mLen, nBytes) { - var e, m - var eLen = nBytes * 8 - mLen - 1 - var eMax = (1 << eLen) - 1 - var eBias = eMax >> 1 - var nBits = -7 - var i = isLE ? (nBytes - 1) : 0 - var d = isLE ? -1 : 1 - var s = buffer[offset + i] - - i += d - - e = s & ((1 << (-nBits)) - 1) - s >>= (-nBits) - nBits += eLen - for (; nBits > 0; e = e * 256 + buffer[offset + i], i += d, nBits -= 8) {} - - m = e & ((1 << (-nBits)) - 1) - e >>= (-nBits) - nBits += mLen - for (; nBits > 0; m = m * 256 + buffer[offset + i], i += d, nBits -= 8) {} - - if (e === 0) { - e = 1 - eBias - } else if (e === eMax) { - return m ? NaN : ((s ? -1 : 1) * Infinity) - } else { - m = m + Math.pow(2, mLen) - e = e - eBias - } - return (s ? -1 : 1) * m * Math.pow(2, e - mLen) -} - -exports.write = function (buffer, value, offset, isLE, mLen, nBytes) { - var e, m, c - var eLen = nBytes * 8 - mLen - 1 - var eMax = (1 << eLen) - 1 - var eBias = eMax >> 1 - var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0) - var i = isLE ? 0 : (nBytes - 1) - var d = isLE ? 1 : -1 - var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0 - - value = Math.abs(value) - - if (isNaN(value) || value === Infinity) { - m = isNaN(value) ? 1 : 0 - e = eMax - } else { - e = Math.floor(Math.log(value) / Math.LN2) - if (value * (c = Math.pow(2, -e)) < 1) { - e-- - c *= 2 - } - if (e + eBias >= 1) { - value += rt / c - } else { - value += rt * Math.pow(2, 1 - eBias) - } - if (value * c >= 2) { - e++ - c /= 2 - } - - if (e + eBias >= eMax) { - m = 0 - e = eMax - } else if (e + eBias >= 1) { - m = (value * c - 1) * Math.pow(2, mLen) - e = e + eBias - } else { - m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen) - e = 0 - } - } - - for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {} - - e = (e << mLen) | m - eLen += mLen - for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {} - - buffer[offset + i - d] |= s * 128 -} - - -/***/ }), -/* 9 */ -/***/ (function(module, exports, __webpack_require__) { - -/* WEBPACK VAR INJECTION */(function(global, Buffer) {var require;var require;(function(f){if(true){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.mapboxgl = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return require(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o0){for(var o=0,a=0,u=0;uh.maxh||t>h.maxw||i<=h.maxh&&t<=h.maxw&&(r=h.maxw*h.maxh-t*i,rn.free)){if(i===n.h)return this.allocShelf(f,t,i,s);i>n.h||ic)&&(p=2*Math.max(t,c)),(uu)&&(l=2*Math.max(i,u)),this.resize(p,l),this.packOne(t,i,s)}return null},t.prototype.allocFreebin=function(t,e,i,s){var h=this.freebins.splice(t,1)[0];return h.id=s,h.w=e,h.h=i,h.refcount=0,this.bins[s]=h,this.ref(h),h},t.prototype.allocShelf=function(t,e,i,s){var h=this.shelves[t],n=h.alloc(e,i,s);return this.bins[s]=n,this.ref(n),n},t.prototype.getBin=function(t){return this.bins[t]},t.prototype.ref=function(t){if(1===++t.refcount){var e=t.h;this.stats[e]=(0|this.stats[e])+1}return t.refcount},t.prototype.unref=function(t){return 0===t.refcount?0:(0===--t.refcount&&(this.stats[t.h]--,delete this.bins[t.id],this.freebins.push(t)),t.refcount)},t.prototype.clear=function(){this.shelves=[],this.freebins=[],this.stats={},this.bins={},this.maxId=0},t.prototype.resize=function(t,e){this.w=t,this.h=e;for(var i=0;ithis.free||e>this.h)return null;var h=this.x;return this.x+=t,this.free-=t,new i(s,h,this.y,t,e,t,this.h)},e.prototype.resize=function(t){return this.free+=t-this.w,this.w=t,!0},t}); -},{}],3:[function(require,module,exports){ -function UnitBezier(t,i,e,r){this.cx=3*t,this.bx=3*(e-t)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*i,this.by=3*(r-i)-this.cy,this.ay=1-this.cy-this.by,this.p1x=t,this.p1y=r,this.p2x=e,this.p2y=r}module.exports=UnitBezier,UnitBezier.prototype.sampleCurveX=function(t){return((this.ax*t+this.bx)*t+this.cx)*t},UnitBezier.prototype.sampleCurveY=function(t){return((this.ay*t+this.by)*t+this.cy)*t},UnitBezier.prototype.sampleCurveDerivativeX=function(t){return(3*this.ax*t+2*this.bx)*t+this.cx},UnitBezier.prototype.solveCurveX=function(t,i){"undefined"==typeof i&&(i=1e-6);var e,r,s,h,n;for(s=t,n=0;n<8;n++){if(h=this.sampleCurveX(s)-t,Math.abs(h)r)return r;for(;eh?e=s:r=s,s=.5*(r-e)+e}return s},UnitBezier.prototype.solve=function(t,i){return this.sampleCurveY(this.solveCurveX(t,i))}; -},{}],4:[function(require,module,exports){ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t(e.WhooTS=e.WhooTS||{})}(this,function(e){function t(e,t,r,n,i,s){s=s||{};var f=e+"?"+["bbox="+o(r,n,i),"format="+(s.format||"image/png"),"service="+(s.service||"WMS"),"version="+(s.version||"1.1.1"),"request="+(s.request||"GetMap"),"srs="+(s.srs||"EPSG:3857"),"width="+(s.width||256),"height="+(s.height||256),"layers="+t].join("&");return f}function o(e,t,o){t=Math.pow(2,o)-t-1;var n=r(256*e,256*t,o),i=r(256*(e+1),256*(t+1),o);return n[0]+","+n[1]+","+i[0]+","+i[1]}function r(e,t,o){var r=2*Math.PI*6378137/256/Math.pow(2,o),n=e*r-2*Math.PI*6378137/2,i=t*r-2*Math.PI*6378137/2;return[n,i]}e.getURL=t,e.getTileBBox=o,e.getMercCoords=r,Object.defineProperty(e,"__esModule",{value:!0})}); -},{}],5:[function(require,module,exports){ -"use strict";function earcut(e,n,r){r=r||2;var t=n&&n.length,i=t?n[0]*r:e.length,x=linkedList(e,0,i,r,!0),a=[];if(!x)return a;var o,l,u,s,v,f,y;if(t&&(x=eliminateHoles(e,n,x,r)),e.length>80*r){o=u=e[0],l=s=e[1];for(var d=r;du&&(u=v),f>s&&(s=f);y=Math.max(u-o,s-l)}return earcutLinked(x,a,r,o,l,y),a}function linkedList(e,n,r,t,i){var x,a;if(i===signedArea(e,n,r,t)>0)for(x=n;x=n;x-=t)a=insertNode(x,e[x],e[x+1],a);return a&&equals(a,a.next)&&(removeNode(a),a=a.next),a}function filterPoints(e,n){if(!e)return e;n||(n=e);var r,t=e;do if(r=!1,t.steiner||!equals(t,t.next)&&0!==area(t.prev,t,t.next))t=t.next;else{if(removeNode(t),t=n=t.prev,t===t.next)return null;r=!0}while(r||t!==n);return n}function earcutLinked(e,n,r,t,i,x,a){if(e){!a&&x&&indexCurve(e,t,i,x);for(var o,l,u=e;e.prev!==e.next;)if(o=e.prev,l=e.next,x?isEarHashed(e,t,i,x):isEar(e))n.push(o.i/r),n.push(e.i/r),n.push(l.i/r),removeNode(e),e=l.next,u=l.next;else if(e=l,e===u){a?1===a?(e=cureLocalIntersections(e,n,r),earcutLinked(e,n,r,t,i,x,2)):2===a&&splitEarcut(e,n,r,t,i,x):earcutLinked(filterPoints(e),n,r,t,i,x,1);break}}}function isEar(e){var n=e.prev,r=e,t=e.next;if(area(n,r,t)>=0)return!1;for(var i=e.next.next;i!==e.prev;){if(pointInTriangle(n.x,n.y,r.x,r.y,t.x,t.y,i.x,i.y)&&area(i.prev,i,i.next)>=0)return!1;i=i.next}return!0}function isEarHashed(e,n,r,t){var i=e.prev,x=e,a=e.next;if(area(i,x,a)>=0)return!1;for(var o=i.xx.x?i.x>a.x?i.x:a.x:x.x>a.x?x.x:a.x,s=i.y>x.y?i.y>a.y?i.y:a.y:x.y>a.y?x.y:a.y,v=zOrder(o,l,n,r,t),f=zOrder(u,s,n,r,t),y=e.nextZ;y&&y.z<=f;){if(y!==e.prev&&y!==e.next&&pointInTriangle(i.x,i.y,x.x,x.y,a.x,a.y,y.x,y.y)&&area(y.prev,y,y.next)>=0)return!1;y=y.nextZ}for(y=e.prevZ;y&&y.z>=v;){if(y!==e.prev&&y!==e.next&&pointInTriangle(i.x,i.y,x.x,x.y,a.x,a.y,y.x,y.y)&&area(y.prev,y,y.next)>=0)return!1;y=y.prevZ}return!0}function cureLocalIntersections(e,n,r){var t=e;do{var i=t.prev,x=t.next.next;!equals(i,x)&&intersects(i,t,t.next,x)&&locallyInside(i,x)&&locallyInside(x,i)&&(n.push(i.i/r),n.push(t.i/r),n.push(x.i/r),removeNode(t),removeNode(t.next),t=e=x),t=t.next}while(t!==e);return t}function splitEarcut(e,n,r,t,i,x){var a=e;do{for(var o=a.next.next;o!==a.prev;){if(a.i!==o.i&&isValidDiagonal(a,o)){var l=splitPolygon(a,o);return a=filterPoints(a,a.next),l=filterPoints(l,l.next),earcutLinked(a,n,r,t,i,x),void earcutLinked(l,n,r,t,i,x)}o=o.next}a=a.next}while(a!==e)}function eliminateHoles(e,n,r,t){var i,x,a,o,l,u=[];for(i=0,x=n.length;i=t.next.y){var o=t.x+(x-t.y)*(t.next.x-t.x)/(t.next.y-t.y);if(o<=i&&o>a){if(a=o,o===i){if(x===t.y)return t;if(x===t.next.y)return t.next}r=t.x=t.x&&t.x>=s&&pointInTriangle(xr.x)&&locallyInside(t,e)&&(r=t,f=l)),t=t.next;return r}function indexCurve(e,n,r,t){var i=e;do null===i.z&&(i.z=zOrder(i.x,i.y,n,r,t)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next;while(i!==e);i.prevZ.nextZ=null,i.prevZ=null,sortLinked(i)}function sortLinked(e){var n,r,t,i,x,a,o,l,u=1;do{for(r=e,e=null,x=null,a=0;r;){for(a++,t=r,o=0,n=0;n0||l>0&&t;)0===o?(i=t,t=t.nextZ,l--):0!==l&&t?r.z<=t.z?(i=r,r=r.nextZ,o--):(i=t,t=t.nextZ,l--):(i=r,r=r.nextZ,o--),x?x.nextZ=i:e=i,i.prevZ=x,x=i;r=t}x.nextZ=null,u*=2}while(a>1);return e}function zOrder(e,n,r,t,i){return e=32767*(e-r)/i,n=32767*(n-t)/i,e=16711935&(e|e<<8),e=252645135&(e|e<<4),e=858993459&(e|e<<2),e=1431655765&(e|e<<1),n=16711935&(n|n<<8),n=252645135&(n|n<<4),n=858993459&(n|n<<2),n=1431655765&(n|n<<1),e|n<<1}function getLeftmost(e){var n=e,r=e;do n.x=0&&(e-a)*(t-o)-(r-a)*(n-o)>=0&&(r-a)*(x-o)-(i-a)*(t-o)>=0}function isValidDiagonal(e,n){return e.next.i!==n.i&&e.prev.i!==n.i&&!intersectsPolygon(e,n)&&locallyInside(e,n)&&locallyInside(n,e)&&middleInside(e,n)}function area(e,n,r){return(n.y-e.y)*(r.x-n.x)-(n.x-e.x)*(r.y-n.y)}function equals(e,n){return e.x===n.x&&e.y===n.y}function intersects(e,n,r,t){return!!(equals(e,n)&&equals(r,t)||equals(e,t)&&equals(r,n))||area(e,n,r)>0!=area(e,n,t)>0&&area(r,t,e)>0!=area(r,t,n)>0}function intersectsPolygon(e,n){var r=e;do{if(r.i!==e.i&&r.next.i!==e.i&&r.i!==n.i&&r.next.i!==n.i&&intersects(r,r.next,e,n))return!0;r=r.next}while(r!==e);return!1}function locallyInside(e,n){return area(e.prev,e,e.next)<0?area(e,n,e.next)>=0&&area(e,e.prev,n)>=0:area(e,n,e.prev)<0||area(e,e.next,n)<0}function middleInside(e,n){var r=e,t=!1,i=(e.x+n.x)/2,x=(e.y+n.y)/2;do r.y>x!=r.next.y>x&&i<(r.next.x-r.x)*(x-r.y)/(r.next.y-r.y)+r.x&&(t=!t),r=r.next;while(r!==e);return t}function splitPolygon(e,n){var r=new Node(e.i,e.x,e.y),t=new Node(n.i,n.x,n.y),i=e.next,x=n.prev;return e.next=n,n.prev=e,r.next=i,i.prev=r,t.next=r,r.prev=t,x.next=t,t.prev=x,t}function insertNode(e,n,r,t){var i=new Node(e,n,r);return t?(i.next=t.next,i.prev=t,t.next.prev=i,t.next=i):(i.prev=i,i.next=i),i}function removeNode(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function Node(e,n,r){this.i=e,this.x=n,this.y=r,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function signedArea(e,n,r,t){for(var i=0,x=n,a=r-t;x0&&(t+=e[i-1].length,r.holes.push(t))}return r}; -},{}],6:[function(require,module,exports){ -function geometry(r){if("Polygon"===r.type)return polygonArea(r.coordinates);if("MultiPolygon"===r.type){for(var e=0,n=0;n0){e+=Math.abs(ringArea(r[0]));for(var n=1;n2){for(var n,t,o=0;o=0}var geojsonArea=require("geojson-area");module.exports=rewind; -},{"geojson-area":6}],8:[function(require,module,exports){ -"use strict";function clip(e,r,t,n,u,i,l,s){if(t/=r,n/=r,l>=t&&s<=n)return e;if(l>n||s=t&&c<=n)h.push(o);else if(!(a>n||c=r&&s<=t&&u.push(l)}return u}function clipGeometry(e,r,t,n,u,i){for(var l=[],s=0;st?(d.push(u(h,f,r),u(h,f,t)),i||(d=newSlice(l,d,v,m,w))):o>=r&&d.push(u(h,f,r)):c>t?ot&&(d.push(u(h,f,t)),i||(d=newSlice(l,d,v,m,w))));h=g[S-1],c=h[n],c>=r&&c<=t&&d.push(h),a=d[d.length-1],i&&a&&(d[0][0]!==a[0]||d[0][1]!==a[1])&&d.push(d[0]),newSlice(l,d,v,m,w)}return l}function newSlice(e,r,t,n,u){return r.length&&(r.area=t,r.dist=n,void 0!==u&&(r.outer=u),e.push(r)),[]}module.exports=clip;var createFeature=require("./feature"); -},{"./feature":10}],9:[function(require,module,exports){ -"use strict";function convert(e,t){var r=[];if("FeatureCollection"===e.type)for(var o=0;o1?1:o,[r,o,0]}function calcSize(e){for(var t,r,o=0,a=0,i=0;i1)return!1;var r=n.geometry[0].length;if(5!==r)return!1;for(var s=0;s1&&console.time("creation"),m=this.tiles[d]=createTile(e,p,i,o,f,t===a.maxZoom),this.tileCoords.push({z:t,x:i,y:o}),u)){u>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",t,i,o,m.numFeatures,m.numPoints,m.numSimplified),console.timeEnd("creation"));var h="z"+t;this.stats[h]=(this.stats[h]||0)+1,this.total++}if(m.source=e,n){if(t===a.maxZoom||t===n)continue;var x=1<1&&console.time("clipping");var g,v,M,T,b,y,S=.5*a.buffer/a.extent,Z=.5-S,q=.5+S,w=1+S;g=v=M=T=null,b=clip(e,p,i-S,i+q,0,intersectX,m.min[0],m.max[0]),y=clip(e,p,i+Z,i+w,0,intersectX,m.min[0],m.max[0]),b&&(g=clip(b,p,o-S,o+q,1,intersectY,m.min[1],m.max[1]),v=clip(b,p,o+Z,o+w,1,intersectY,m.min[1],m.max[1])),y&&(M=clip(y,p,o-S,o+q,1,intersectY,m.min[1],m.max[1]),T=clip(y,p,o+Z,o+w,1,intersectY,m.min[1],m.max[1])),u>1&&console.timeEnd("clipping"),e.length&&(l.push(g||[],t+1,2*i,2*o),l.push(v||[],t+1,2*i,2*o+1),l.push(M||[],t+1,2*i+1,2*o),l.push(T||[],t+1,2*i+1,2*o+1))}else n&&(c=t)}return c},GeoJSONVT.prototype.getTile=function(e,t,i){var o=this.options,n=o.extent,r=o.debug,s=1<1&&console.log("drilling down to z%d-%d-%d",e,t,i);for(var a,u=e,c=t,p=i;!a&&u>0;)u--,c=Math.floor(c/2),p=Math.floor(p/2),a=this.tiles[toID(u,c,p)];if(!a||!a.source)return null;if(r>1&&console.log("found parent tile z%d-%d-%d",u,c,p),isClippedSquare(a,n,o.buffer))return transform.tile(a,n);r>1&&console.time("drilling down");var d=this.splitTile(a.source,u,c,p,e,t,i);if(r>1&&console.timeEnd("drilling down"),null!==d){var m=1<p&&(s=e,p=r);p>o?(t[s][2]=p,g.push(u),g.push(s),u=s):(n=g.pop(),u=g.pop())}}function getSqSegDist(t,i,e){var p=i[0],r=i[1],s=e[0],o=e[1],f=t[0],u=t[1],n=s-p,g=o-r;if(0!==n||0!==g){var l=((f-p)*n+(u-r)*g)/(n*n+g*g);l>1?(p=s,r=o):l>0&&(p+=n*l,r+=g*l)}return n=f-p,g=u-r,n*n+g*g}module.exports=simplify; -},{}],13:[function(require,module,exports){ -"use strict";function createTile(e,n,r,i,t,u){for(var a={features:[],numPoints:0,numSimplified:0,numFeatures:0,source:null,x:r,y:i,z2:n,transformed:!1,min:[2,1],max:[-1,0]},m=0;ma.max[0]&&(a.max[0]=l[0]),l[1]>a.max[1]&&(a.max[1]=l[1])}return a}function addFeature(e,n,r,i){var t,u,a,m,s=n.geometry,l=n.type,o=[],f=r*r;if(1===l)for(t=0;tf)&&(d.push(m),e.numSimplified++),e.numPoints++;3===l&&rewind(d,a.outer),o.push(d)}else e.numPoints+=a.length;if(o.length){var g={geometry:o,type:l,tags:n.tags||null};null!==n.id&&(g.id=n.id),e.features.push(g)}}function rewind(e,n){var r=signedArea(e);r<0===n&&e.reverse()}function signedArea(e){for(var n,r,i=0,t=0,u=e.length,a=u-1;t=a[u+0]&&s>=a[u+1]?(n[f]=!0,h.push(l[f])):n[f]=!1}}},GridIndex.prototype._forEachCell=function(t,r,e,s,i,h,n){for(var o=this._convertToCellCoord(t),l=this._convertToCellCoord(r),a=this._convertToCellCoord(e),d=this._convertToCellCoord(s),f=o;f<=a;f++)for(var u=l;u<=d;u++){var y=this.d*u+f;if(i.call(this,t,r,e,s,y,h,n))return}},GridIndex.prototype._convertToCellCoord=function(t){return Math.max(0,Math.min(this.d-1,Math.floor(t*this.scale)+this.padding))},GridIndex.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var t=this.cells,r=NUM_PARAMS+this.cells.length+1+1,e=0,s=0;s>1,i=-7,N=t?h-1:0,n=t?-1:1,s=a[o+N];for(N+=n,M=s&(1<<-i)-1,s>>=-i,i+=w;i>0;M=256*M+a[o+N],N+=n,i-=8);for(p=M&(1<<-i)-1,M>>=-i,i+=r;i>0;p=256*p+a[o+N],N+=n,i-=8);if(0===M)M=1-e;else{if(M===f)return p?NaN:(s?-1:1)*(1/0);p+=Math.pow(2,r),M-=e}return(s?-1:1)*p*Math.pow(2,M-r)},exports.write=function(a,o,t,r,h,M){var p,w,f,e=8*M-h-1,i=(1<>1,n=23===h?Math.pow(2,-24)-Math.pow(2,-77):0,s=r?0:M-1,u=r?1:-1,l=o<0||0===o&&1/o<0?1:0;for(o=Math.abs(o),isNaN(o)||o===1/0?(w=isNaN(o)?1:0,p=i):(p=Math.floor(Math.log(o)/Math.LN2),o*(f=Math.pow(2,-p))<1&&(p--,f*=2),o+=p+N>=1?n/f:n*Math.pow(2,1-N),o*f>=2&&(p++,f/=2),p+N>=i?(w=0,p=i):p+N>=1?(w=(o*f-1)*Math.pow(2,h),p+=N):(w=o*Math.pow(2,N-1)*Math.pow(2,h),p=0));h>=8;a[t+s]=255&w,s+=u,w/=256,h-=8);for(p=p<0;a[t+s]=255&p,s+=u,p/=256,e-=8);a[t+s-u]|=128*l}; -},{}],18:[function(require,module,exports){ -"use strict";function kdbush(t,i,e,s,n){return new KDBush(t,i,e,s,n)}function KDBush(t,i,e,s,n){i=i||defaultGetX,e=e||defaultGetY,n=n||Array,this.nodeSize=s||64,this.points=t,this.ids=new n(t.length),this.coords=new n(2*t.length);for(var r=0;r=s&&a<=h&&t>=u&&t<=e&&f.push(p[i]);else{var c=Math.floor((g+v)/2);a=r[2*c],t=r[2*c+1],a>=s&&a<=h&&t>=u&&t<=e&&f.push(p[c]);var d=(l+1)%2;(0===l?s<=a:u<=t)&&(n.push(g),n.push(c-1),n.push(d)),(0===l?h>=a:e>=t)&&(n.push(c+1),n.push(v),n.push(d))}}return f}module.exports=range; -},{}],20:[function(require,module,exports){ -"use strict";function sortKD(t,a,o,s,r,e){if(!(r-s<=o)){var f=Math.floor((s+r)/2);select(t,a,f,s,r,e%2),sortKD(t,a,o,s,f-1,e+1),sortKD(t,a,o,f+1,r,e+1)}}function select(t,a,o,s,r,e){for(;r>s;){if(r-s>600){var f=r-s+1,p=o-s+1,w=Math.log(f),m=.5*Math.exp(2*w/3),n=.5*Math.sqrt(w*m*(f-m)/f)*(p-f/2<0?-1:1),c=Math.max(s,Math.floor(o-p*m/f+n)),h=Math.min(r,Math.floor(o+(f-p)*m/f+n));select(t,a,o,c,h,e)}var i=a[2*o+e],l=s,M=r;for(swapItem(t,a,s,o),a[2*r+e]>i&&swapItem(t,a,s,r);li;)M--}a[2*s+e]===i?swapItem(t,a,s,M):(M++,swapItem(t,a,M,r)),M<=o&&(s=M+1),o<=M&&(r=M-1)}}function swapItem(t,a,o,s){swap(t,o,s),swap(a,2*o,2*s),swap(a,2*o+1,2*s+1)}function swap(t,a,o){var s=t[a];t[a]=t[o],t[o]=s}module.exports=sortKD; -},{}],21:[function(require,module,exports){ -"use strict";function within(s,p,r,t,u,h){for(var i=[0,s.length-1,0],o=[],n=u*u;i.length;){var e=i.pop(),a=i.pop(),f=i.pop();if(a-f<=h)for(var v=f;v<=a;v++)sqDist(p[2*v],p[2*v+1],r,t)<=n&&o.push(s[v]);else{var l=Math.floor((f+a)/2),c=p[2*l],q=p[2*l+1];sqDist(c,q,r,t)<=n&&o.push(s[l]);var D=(e+1)%2;(0===e?r-u<=c:t-u<=q)&&(i.push(f),i.push(l-1),i.push(D)),(0===e?r+u>=c:t+u>=q)&&(i.push(l+1),i.push(a),i.push(D))}}return o}function sqDist(s,p,r,t){var u=s-r,h=p-t;return u*u+h*h}module.exports=within; -},{}],22:[function(require,module,exports){ -"use strict";function isSupported(e){return!!(isBrowser()&&isArraySupported()&&isFunctionSupported()&&isObjectSupported()&&isJSONSupported()&&isWorkerSupported()&&isUint8ClampedArraySupported()&&isWebGLSupportedCached(e&&e.failIfMajorPerformanceCaveat))}function isBrowser(){return"undefined"!=typeof window&&"undefined"!=typeof document}function isArraySupported(){return Array.prototype&&Array.prototype.every&&Array.prototype.filter&&Array.prototype.forEach&&Array.prototype.indexOf&&Array.prototype.lastIndexOf&&Array.prototype.map&&Array.prototype.some&&Array.prototype.reduce&&Array.prototype.reduceRight&&Array.isArray}function isFunctionSupported(){return Function.prototype&&Function.prototype.bind}function isObjectSupported(){return Object.keys&&Object.create&&Object.getPrototypeOf&&Object.getOwnPropertyNames&&Object.isSealed&&Object.isFrozen&&Object.isExtensible&&Object.getOwnPropertyDescriptor&&Object.defineProperty&&Object.defineProperties&&Object.seal&&Object.freeze&&Object.preventExtensions}function isJSONSupported(){return"JSON"in window&&"parse"in JSON&&"stringify"in JSON}function isWorkerSupported(){return"Worker"in window}function isUint8ClampedArraySupported(){return"Uint8ClampedArray"in window}function isWebGLSupportedCached(e){return void 0===isWebGLSupportedCache[e]&&(isWebGLSupportedCache[e]=isWebGLSupported(e)),isWebGLSupportedCache[e]}function isWebGLSupported(e){var t=document.createElement("canvas"),r=Object.create(isSupported.webGLContextAttributes);return r.failIfMajorPerformanceCaveat=e,t.probablySupportsContext?t.probablySupportsContext("webgl",r)||t.probablySupportsContext("experimental-webgl",r):t.supportsContext?t.supportsContext("webgl",r)||t.supportsContext("experimental-webgl",r):t.getContext("webgl",r)||t.getContext("experimental-webgl",r)}"undefined"!=typeof module&&module.exports?module.exports=isSupported:window&&(window.mapboxgl=window.mapboxgl||{},window.mapboxgl.supported=isSupported);var isWebGLSupportedCache={};isSupported.webGLContextAttributes={antialias:!1,alpha:!0,stencil:!0,depth:!0}; -},{}],23:[function(require,module,exports){ -(function (process){ -function normalizeArray(r,t){for(var e=0,n=r.length-1;n>=0;n--){var s=r[n];"."===s?r.splice(n,1):".."===s?(r.splice(n,1),e++):e&&(r.splice(n,1),e--)}if(t)for(;e--;e)r.unshift("..");return r}function filter(r,t){if(r.filter)return r.filter(t);for(var e=[],n=0;n=-1&&!t;e--){var n=e>=0?arguments[e]:process.cwd();if("string"!=typeof n)throw new TypeError("Arguments to path.resolve must be strings");n&&(r=n+"/"+r,t="/"===n.charAt(0))}return r=normalizeArray(filter(r.split("/"),function(r){return!!r}),!t).join("/"),(t?"/":"")+r||"."},exports.normalize=function(r){var t=exports.isAbsolute(r),e="/"===substr(r,-1);return r=normalizeArray(filter(r.split("/"),function(r){return!!r}),!t).join("/"),r||t||(r="."),r&&e&&(r+="/"),(t?"/":"")+r},exports.isAbsolute=function(r){return"/"===r.charAt(0)},exports.join=function(){var r=Array.prototype.slice.call(arguments,0);return exports.normalize(filter(r,function(r,t){if("string"!=typeof r)throw new TypeError("Arguments to path.join must be strings");return r}).join("/"))},exports.relative=function(r,t){function e(r){for(var t=0;t=0&&""===r[e];e--);return t>e?[]:r.slice(t,e-t+1)}r=exports.resolve(r).substr(1),t=exports.resolve(t).substr(1);for(var n=e(r.split("/")),s=e(t.split("/")),i=Math.min(n.length,s.length),o=i,u=0;u55295&&e<57344){if(!r){e>56319||o+1===n?i.push(239,191,189):r=e;continue}if(e<56320){i.push(239,191,189),r=e;continue}e=r-55296<<10|e-56320|65536,r=null}else r&&(i.push(239,191,189),r=null);e<128?i.push(e):e<2048?i.push(e>>6|192,63&e|128):e<65536?i.push(e>>12|224,e>>6&63|128,63&e|128):i.push(e>>18|240,e>>12&63|128,e>>6&63|128,63&e|128)}return i}module.exports=Buffer;var ieee754=require("ieee754"),BufferMethods,lastStr,lastStrEncoded;BufferMethods={readUInt32LE:function(t){return(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},writeUInt32LE:function(t,e){this[e]=t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24},readInt32LE:function(t){return(this[t]|this[t+1]<<8|this[t+2]<<16)+(this[t+3]<<24)},readFloatLE:function(t){return ieee754.read(this,t,!0,23,4)},readDoubleLE:function(t){return ieee754.read(this,t,!0,52,8)},writeFloatLE:function(t,e){return ieee754.write(this,t,e,!0,23,4)},writeDoubleLE:function(t,e){return ieee754.write(this,t,e,!0,52,8)},toString:function(t,e,r){var n="",i="";e=e||0,r=Math.min(this.length,r||this.length);for(var o=e;o=1;){if(i.pos>=e)throw new Error("Given varint doesn't fit into 10 bytes");var r=255&t;i.buf[i.pos++]=r|(t>=128?128:0),t/=128}}function reallocForRawMessage(t,i,e){var r=i<=16383?1:i<=2097151?2:i<=268435455?3:Math.ceil(Math.log(i)/(7*Math.LN2));e.realloc(r);for(var s=e.pos-1;s>=t;s--)e.buf[s+r]=e.buf[s]}function writePackedVarint(t,i){for(var e=0;e>3,n=this.pos;t(s,i,this),this.pos===n&&this.skip(r)}return i},readMessage:function(t,i){return this.readFields(t,i,this.readVarint()+this.pos)},readFixed32:function(){var t=this.buf.readUInt32LE(this.pos);return this.pos+=4,t},readSFixed32:function(){var t=this.buf.readInt32LE(this.pos);return this.pos+=4,t},readFixed64:function(){var t=this.buf.readUInt32LE(this.pos)+this.buf.readUInt32LE(this.pos+4)*SHIFT_LEFT_32;return this.pos+=8,t},readSFixed64:function(){var t=this.buf.readUInt32LE(this.pos)+this.buf.readInt32LE(this.pos+4)*SHIFT_LEFT_32;return this.pos+=8,t},readFloat:function(){var t=this.buf.readFloatLE(this.pos);return this.pos+=4,t},readDouble:function(){var t=this.buf.readDoubleLE(this.pos);return this.pos+=8,t},readVarint:function(){var t,i,e=this.buf;return i=e[this.pos++],t=127&i,i<128?t:(i=e[this.pos++],t|=(127&i)<<7,i<128?t:(i=e[this.pos++],t|=(127&i)<<14,i<128?t:(i=e[this.pos++],t|=(127&i)<<21,i<128?t:readVarintRemainder(t,this))))},readVarint64:function(){var t=this.pos,i=this.readVarint();if(i127;);else if(i===Pbf.Bytes)this.pos=this.readVarint()+this.pos;else if(i===Pbf.Fixed32)this.pos+=4;else{if(i!==Pbf.Fixed64)throw new Error("Unimplemented type: "+i);this.pos+=8}},writeTag:function(t,i){this.writeVarint(t<<3|i)},realloc:function(t){for(var i=this.length||16;i268435455?void writeBigVarint(t,this):(this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),void(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);var i=Buffer.byteLength(t);this.writeVarint(i),this.realloc(i),this.buf.write(t,this.pos),this.pos+=i},writeFloat:function(t){this.realloc(4),this.buf.writeFloatLE(t,this.pos),this.pos+=4},writeDouble:function(t){this.realloc(8),this.buf.writeDoubleLE(t,this.pos),this.pos+=8},writeBytes:function(t){var i=t.length;this.writeVarint(i),this.realloc(i);for(var e=0;e=128&&reallocForRawMessage(e,r,this),this.pos=e-1,this.writeVarint(r),this.pos+=r},writeMessage:function(t,i,e){this.writeTag(t,Pbf.Bytes),this.writeRawMessage(i,e)},writePackedVarint:function(t,i){this.writeMessage(t,writePackedVarint,i)},writePackedSVarint:function(t,i){this.writeMessage(t,writePackedSVarint,i)},writePackedBoolean:function(t,i){this.writeMessage(t,writePackedBoolean,i)},writePackedFloat:function(t,i){this.writeMessage(t,writePackedFloat,i)},writePackedDouble:function(t,i){this.writeMessage(t,writePackedDouble,i)},writePackedFixed32:function(t,i){this.writeMessage(t,writePackedFixed32,i)},writePackedSFixed32:function(t,i){this.writeMessage(t,writePackedSFixed32,i)},writePackedFixed64:function(t,i){this.writeMessage(t,writePackedFixed64,i)},writePackedSFixed64:function(t,i){this.writeMessage(t,writePackedSFixed64,i)},writeBytesField:function(t,i){this.writeTag(t,Pbf.Bytes),this.writeBytes(i)},writeFixed32Field:function(t,i){this.writeTag(t,Pbf.Fixed32),this.writeFixed32(i)},writeSFixed32Field:function(t,i){this.writeTag(t,Pbf.Fixed32),this.writeSFixed32(i)},writeFixed64Field:function(t,i){this.writeTag(t,Pbf.Fixed64),this.writeFixed64(i)},writeSFixed64Field:function(t,i){this.writeTag(t,Pbf.Fixed64),this.writeSFixed64(i)},writeVarintField:function(t,i){this.writeTag(t,Pbf.Varint),this.writeVarint(i)},writeSVarintField:function(t,i){this.writeTag(t,Pbf.Varint),this.writeSVarint(i)},writeStringField:function(t,i){this.writeTag(t,Pbf.Bytes),this.writeString(i)},writeFloatField:function(t,i){this.writeTag(t,Pbf.Fixed32),this.writeFloat(i)},writeDoubleField:function(t,i){this.writeTag(t,Pbf.Fixed64),this.writeDouble(i)},writeBooleanField:function(t,i){this.writeVarintField(t,Boolean(i))}}; -}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) - -},{"./buffer":24}],26:[function(require,module,exports){ -"use strict";function Point(t,n){this.x=t,this.y=n}module.exports=Point,Point.prototype={clone:function(){return new Point(this.x,this.y)},add:function(t){return this.clone()._add(t)},sub:function(t){return this.clone()._sub(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)},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 n=t.x-this.x,i=t.y-this.y;return n*n+i*i},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,n){return Math.atan2(this.x*n-this.y*t,this.x*t+this.y*n)},_matMult:function(t){var n=t[0]*this.x+t[1]*this.y,i=t[2]*this.x+t[3]*this.y;return this.x=n,this.y=i,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},_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 n=Math.cos(t),i=Math.sin(t),s=n*this.x-i*this.y,r=i*this.x+n*this.y;return this.x=s,this.y=r,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},Point.convert=function(t){return t instanceof Point?t:Array.isArray(t)?new Point(t[0],t[1]):t}; -},{}],27:[function(require,module,exports){ -function defaultSetTimout(){throw new Error("setTimeout has not been defined")}function defaultClearTimeout(){throw new Error("clearTimeout has not been defined")}function runTimeout(e){if(cachedSetTimeout===setTimeout)return setTimeout(e,0);if((cachedSetTimeout===defaultSetTimout||!cachedSetTimeout)&&setTimeout)return cachedSetTimeout=setTimeout,setTimeout(e,0);try{return cachedSetTimeout(e,0)}catch(t){try{return cachedSetTimeout.call(null,e,0)}catch(t){return cachedSetTimeout.call(this,e,0)}}}function runClearTimeout(e){if(cachedClearTimeout===clearTimeout)return clearTimeout(e);if((cachedClearTimeout===defaultClearTimeout||!cachedClearTimeout)&&clearTimeout)return cachedClearTimeout=clearTimeout,clearTimeout(e);try{return cachedClearTimeout(e)}catch(t){try{return cachedClearTimeout.call(null,e)}catch(t){return cachedClearTimeout.call(this,e)}}}function cleanUpNextTick(){draining&¤tQueue&&(draining=!1,currentQueue.length?queue=currentQueue.concat(queue):queueIndex=-1,queue.length&&drainQueue())}function drainQueue(){if(!draining){var e=runTimeout(cleanUpNextTick);draining=!0;for(var t=queue.length;t;){for(currentQueue=queue,queue=[];++queueIndex1)for(var u=1;ur;){if(o-r>600){var f=o-r+1,e=t-r+1,l=Math.log(f),s=.5*Math.exp(2*l/3),i=.5*Math.sqrt(l*s*(f-s)/f)*(e-f/2<0?-1:1),n=Math.max(r,Math.floor(t-e*s/f+i)),h=Math.min(o,Math.floor(t+(f-e)*s/f+i));partialSort(a,t,n,h,p)}var u=a[t],M=r,w=o;for(swap(a,r,t),p(a[o],u)>0&&swap(a,r,o);M0;)w--}0===p(a[r],u)?swap(a,r,w):(w++,swap(a,w,o)),w<=t&&(r=w+1),t<=w&&(o=w-1)}}function swap(a,t,r){var o=a[t];a[t]=a[r],a[r]=o}function defaultCompare(a,t){return at?1:0}module.exports=partialSort; -},{}],29:[function(require,module,exports){ -"use strict";function supercluster(t){return new SuperCluster(t)}function SuperCluster(t){this.options=extend(Object.create(this.options),t),this.trees=new Array(this.options.maxZoom+1)}function createCluster(t,e,o,n){return{x:t,y:e,zoom:1/0,id:n,numPoints:o}}function createPointCluster(t,e){var o=t.geometry.coordinates;return createCluster(lngX(o[0]),latY(o[1]),1,e)}function getClusterJSON(t){return{type:"Feature",properties:getClusterProperties(t),geometry:{type:"Point",coordinates:[xLng(t.x),yLat(t.y)]}}}function getClusterProperties(t){var e=t.numPoints,o=e>=1e4?Math.round(e/1e3)+"k":e>=1e3?Math.round(e/100)/10+"k":e;return{cluster:!0,point_count:e,point_count_abbreviated:o}}function lngX(t){return t/360+.5}function latY(t){var e=Math.sin(t*Math.PI/180),o=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return o<0?0:o>1?1:o}function xLng(t){return 360*(t-.5)}function yLat(t){var e=(180-360*t)*Math.PI/180;return 360*Math.atan(Math.exp(e))/Math.PI-90}function extend(t,e){for(var o in e)t[o]=e[o];return t}function getX(t){return t.x}function getY(t){return t.y}var kdbush=require("kdbush");module.exports=supercluster,SuperCluster.prototype={options:{minZoom:0,maxZoom:16,radius:40,extent:512,nodeSize:64,log:!1},load:function(t){var e=this.options.log;e&&console.time("total time");var o="prepare "+t.length+" points";e&&console.time(o),this.points=t;var n=t.map(createPointCluster);e&&console.timeEnd(o);for(var r=this.options.maxZoom;r>=this.options.minZoom;r--){var i=+Date.now();this.trees[r+1]=kdbush(n,getX,getY,this.options.nodeSize,Float32Array),n=this._cluster(n,r),e&&console.log("z%d: %d clusters in %dms",r,n.length,+Date.now()-i)}return this.trees[this.options.minZoom]=kdbush(n,getX,getY,this.options.nodeSize,Float32Array),e&&console.timeEnd("total time"),this},getClusters:function(t,e){for(var o=this.trees[this._limitZoom(e)],n=o.range(lngX(t[0]),latY(t[3]),lngX(t[2]),latY(t[1])),r=[],i=0;i=0;a--)this._down(a)}function defaultCompare(t,i){return ti?1:0}function swap(t,i,a){var n=t[i];t[i]=t[a],t[a]=n}module.exports=TinyQueue,TinyQueue.prototype={push:function(t){this.data.push(t),this.length++,this._up(this.length-1)},pop:function(){var t=this.data[0];return this.data[0]=this.data[this.length-1],this.length--,this.data.pop(),this._down(0),t},peek:function(){return this.data[0]},_up:function(t){for(var i=this.data,a=this.compare;t>0;){var n=Math.floor((t-1)/2);if(!(a(i[t],i[n])<0))break;swap(i,n,t),t=n}},_down:function(t){for(var i=this.data,a=this.compare,n=this.length;;){var e=2*t+1,h=e+1,s=t;if(e=3&&(t.depth=arguments[2]),arguments.length>=4&&(t.colors=arguments[3]),isBoolean(r)?t.showHidden=r:r&&exports._extend(t,r),isUndefined(t.showHidden)&&(t.showHidden=!1),isUndefined(t.depth)&&(t.depth=2),isUndefined(t.colors)&&(t.colors=!1),isUndefined(t.customInspect)&&(t.customInspect=!0),t.colors&&(t.stylize=stylizeWithColor),formatValue(t,e,t.depth)}function stylizeWithColor(e,r){var t=inspect.styles[r];return t?"["+inspect.colors[t][0]+"m"+e+"["+inspect.colors[t][1]+"m":e}function stylizeNoColor(e,r){return e}function arrayToHash(e){var r={};return e.forEach(function(e,t){r[e]=!0}),r}function formatValue(e,r,t){if(e.customInspect&&r&&isFunction(r.inspect)&&r.inspect!==exports.inspect&&(!r.constructor||r.constructor.prototype!==r)){var n=r.inspect(t,e);return isString(n)||(n=formatValue(e,n,t)),n}var i=formatPrimitive(e,r);if(i)return i;var o=Object.keys(r),s=arrayToHash(o);if(e.showHidden&&(o=Object.getOwnPropertyNames(r)),isError(r)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return formatError(r);if(0===o.length){if(isFunction(r)){var u=r.name?": "+r.name:"";return e.stylize("[Function"+u+"]","special")}if(isRegExp(r))return e.stylize(RegExp.prototype.toString.call(r),"regexp");if(isDate(r))return e.stylize(Date.prototype.toString.call(r),"date");if(isError(r))return formatError(r)}var c="",a=!1,l=["{","}"];if(isArray(r)&&(a=!0,l=["[","]"]),isFunction(r)){var p=r.name?": "+r.name:"";c=" [Function"+p+"]"}if(isRegExp(r)&&(c=" "+RegExp.prototype.toString.call(r)),isDate(r)&&(c=" "+Date.prototype.toUTCString.call(r)),isError(r)&&(c=" "+formatError(r)),0===o.length&&(!a||0==r.length))return l[0]+c+l[1];if(t<0)return isRegExp(r)?e.stylize(RegExp.prototype.toString.call(r),"regexp"):e.stylize("[Object]","special");e.seen.push(r);var f;return f=a?formatArray(e,r,t,s,o):o.map(function(n){return formatProperty(e,r,t,s,n,a)}),e.seen.pop(),reduceToSingleString(f,c,l)}function formatPrimitive(e,r){if(isUndefined(r))return e.stylize("undefined","undefined");if(isString(r)){var t="'"+JSON.stringify(r).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(t,"string")}return isNumber(r)?e.stylize(""+r,"number"):isBoolean(r)?e.stylize(""+r,"boolean"):isNull(r)?e.stylize("null","null"):void 0}function formatError(e){return"["+Error.prototype.toString.call(e)+"]"}function formatArray(e,r,t,n,i){for(var o=[],s=0,u=r.length;s-1&&(u=o?u.split("\n").map(function(e){return" "+e}).join("\n").substr(2):"\n"+u.split("\n").map(function(e){return" "+e}).join("\n"))):u=e.stylize("[Circular]","special")),isUndefined(s)){if(o&&i.match(/^\d+$/))return u;s=JSON.stringify(""+i),s.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(s=s.substr(1,s.length-2),s=e.stylize(s,"name")):(s=s.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),s=e.stylize(s,"string"))}return s+": "+u}function reduceToSingleString(e,r,t){var n=0,i=e.reduce(function(e,r){return n++,r.indexOf("\n")>=0&&n++,e+r.replace(/\u001b\[\d\d?m/g,"").length+1},0);return i>60?t[0]+(""===r?"":r+"\n ")+" "+e.join(",\n ")+" "+t[1]:t[0]+r+" "+e.join(", ")+" "+t[1]}function isArray(e){return Array.isArray(e)}function isBoolean(e){return"boolean"==typeof e}function isNull(e){return null===e}function isNullOrUndefined(e){return null==e}function isNumber(e){return"number"==typeof e}function isString(e){return"string"==typeof e}function isSymbol(e){return"symbol"==typeof e}function isUndefined(e){return void 0===e}function isRegExp(e){return isObject(e)&&"[object RegExp]"===objectToString(e)}function isObject(e){return"object"==typeof e&&null!==e}function isDate(e){return isObject(e)&&"[object Date]"===objectToString(e)}function isError(e){return isObject(e)&&("[object Error]"===objectToString(e)||e instanceof Error)}function isFunction(e){return"function"==typeof e}function isPrimitive(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||"undefined"==typeof e}function objectToString(e){return Object.prototype.toString.call(e)}function pad(e){return e<10?"0"+e.toString(10):e.toString(10)}function timestamp(){var e=new Date,r=[pad(e.getHours()),pad(e.getMinutes()),pad(e.getSeconds())].join(":");return[e.getDate(),months[e.getMonth()],r].join(" ")}function hasOwnProperty(e,r){return Object.prototype.hasOwnProperty.call(e,r)}var formatRegExp=/%[sdj%]/g;exports.format=function(e){if(!isString(e)){for(var r=[],t=0;t=i)return e;switch(e){case"%s":return String(n[t++]);case"%d":return Number(n[t++]);case"%j":try{return JSON.stringify(n[t++])}catch(e){return"[Circular]"}default:return e}}),s=n[t];t>3}if(a--,1===i||2===i)o+=e.readSVarint(),n+=e.readSVarint(),1===i&&(t&&s.push(t),t=[]),t.push(new Point(o,n));else{if(7!==i)throw new Error("unknown command "+i);t&&t.push(t[0].clone())}}return t&&s.push(t),s},VectorTileFeature.prototype.bbox=function(){var e=this._pbf;e.pos=this._geometry;for(var t=e.readVarint()+e.pos,r=1,i=0,a=0,o=0,n=1/0,s=-(1/0),p=1/0,h=-(1/0);e.pos>3}if(i--,1===r||2===r)a+=e.readSVarint(),o+=e.readSVarint(),as&&(s=a),oh&&(h=o);else if(7!==r)throw new Error("unknown command "+r)}return[n,p,s,h]},VectorTileFeature.prototype.toGeoJSON=function(e,t,r){function i(e){for(var t=0;t>3;t=1===a?e.readString():2===a?e.readFloat():3===a?e.readDouble():4===a?e.readVarint64():5===a?e.readVarint():6===a?e.readSVarint():7===a?e.readBoolean():null}return t}var VectorTileFeature=require("./vectortilefeature.js");module.exports=VectorTileLayer,VectorTileLayer.prototype.feature=function(e){if(e<0||e>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[e];var t=this._pbf.readVarint()+this._pbf.pos;return new VectorTileFeature(this._pbf,t,this.extent,this._keys,this._values)}; -},{"./vectortilefeature.js":36}],38:[function(require,module,exports){ -function fromVectorTileJs(e){var r=[];for(var o in e.layers)r.push(prepareLayer(e.layers[o]));var t=new Pbf;return vtpb.tile.write({layers:r},t),t.finish()}function fromGeojsonVt(e){var r={};for(var o in e)r[o]=new GeoJSONWrapper(e[o].features),r[o].name=o;return fromVectorTileJs({layers:r})}function prepareLayer(e){for(var r={name:e.name||"",version:e.version||1,extent:e.extent||4096,keys:[],values:[],features:[]},o={},t={},n=0;n>31}function encodeGeometry(e){for(var r=[],o=0,t=0,n=e.length,a=0;aArrayGroup.MAX_VERTEX_ARRAY_LENGTH)&&(e=new Segment(this.layoutVertexArray.length,this.elementArray.length),this.segments.push(e)),e},ArrayGroup.prototype.prepareSegment2=function(r){var e=this.segments2[this.segments2.length-1];return(!e||e.vertexLength+r>ArrayGroup.MAX_VERTEX_ARRAY_LENGTH)&&(e=new Segment(this.layoutVertexArray.length,this.elementArray2.length),this.segments2.push(e)),e},ArrayGroup.prototype.populatePaintArrays=function(r){var e=this;for(var t in e.layerData){var a=e.layerData[t];0!==a.paintVertexArray.bytesPerElement&&a.programConfiguration.populatePaintArray(a.layer,a.paintVertexArray,a.paintPropertyStatistics,e.layoutVertexArray.length,e.globalProperties,r)}},ArrayGroup.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},ArrayGroup.prototype.serialize=function(r){return{layoutVertexArray:this.layoutVertexArray.serialize(r),elementArray:this.elementArray&&this.elementArray.serialize(r),elementArray2:this.elementArray2&&this.elementArray2.serialize(r),paintVertexArrays:serializePaintVertexArrays(this.layerData,r),segments:this.segments,segments2:this.segments2}},ArrayGroup.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,module.exports=ArrayGroup; -},{"./program_configuration":58}],45:[function(require,module,exports){ -"use strict";var ArrayGroup=require("./array_group"),BufferGroup=require("./buffer_group"),util=require("../util/util"),Bucket=function(r,t){this.zoom=r.zoom,this.overscaling=r.overscaling,this.layers=r.layers,this.index=r.index,r.arrays?this.buffers=new BufferGroup(t,r.layers,r.zoom,r.arrays):this.arrays=new ArrayGroup(t,r.layers,r.zoom)};Bucket.prototype.populate=function(r,t){for(var e=this,i=0,a=r;i=EXTENT||o<0||o>=EXTENT)){var n=r.prepareSegment(4),u=n.vertexLength;addCircleVertex(r.layoutVertexArray,y,o,-1,-1),addCircleVertex(r.layoutVertexArray,y,o,1,-1),addCircleVertex(r.layoutVertexArray,y,o,1,1),addCircleVertex(r.layoutVertexArray,y,o,-1,1),r.elementArray.emplaceBack(u,u+1,u+2),r.elementArray.emplaceBack(u,u+3,u+2),n.vertexLength+=4,n.primitiveLength+=2}}r.populatePaintArrays(e.properties)},r}(Bucket);CircleBucket.programInterface=circleInterface,module.exports=CircleBucket; -},{"../bucket":45,"../element_array_type":53,"../extent":54,"../load_geometry":56,"../vertex_array_type":60}],47:[function(require,module,exports){ -"use strict";var Bucket=require("../bucket"),createVertexArrayType=require("../vertex_array_type"),createElementArrayType=require("../element_array_type"),loadGeometry=require("../load_geometry"),earcut=require("earcut"),classifyRings=require("../../util/classify_rings"),EARCUT_MAX_RINGS=500,fillInterface={layoutVertexArrayType:createVertexArrayType([{name:"a_pos",components:2,type:"Int16"}]),elementArrayType:createElementArrayType(3),elementArrayType2:createElementArrayType(2),paintAttributes:[{property:"fill-color",type:"Uint8"},{property:"fill-outline-color",type:"Uint8"},{property:"fill-opacity",type:"Uint8",multiplier:255}]},FillBucket=function(e){function r(r){e.call(this,r,fillInterface)}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.addFeature=function(e){for(var r=this.arrays,t=0,a=classifyRings(loadGeometry(e),EARCUT_MAX_RINGS);tEXTENT)||e.y===r.y&&(e.y<0||e.y>EXTENT)}var Bucket=require("../bucket"),createVertexArrayType=require("../vertex_array_type"),createElementArrayType=require("../element_array_type"),loadGeometry=require("../load_geometry"),EXTENT=require("../extent"),earcut=require("earcut"),classifyRings=require("../../util/classify_rings"),EARCUT_MAX_RINGS=500,fillExtrusionInterface={layoutVertexArrayType:createVertexArrayType([{name:"a_pos",components:2,type:"Int16"},{name:"a_normal",components:3,type:"Int16"},{name:"a_edgedistance",components:1,type:"Int16"}]),elementArrayType:createElementArrayType(3),paintAttributes:[{property:"fill-extrusion-base",type:"Uint16"},{property:"fill-extrusion-height",type:"Uint16"},{property:"fill-extrusion-color",type:"Uint8"}]},FACTOR=Math.pow(2,13),FillExtrusionBucket=function(e){function r(r){e.call(this,r,fillExtrusionInterface)}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.addFeature=function(e){for(var r=this.arrays,t=0,a=classifyRings(loadGeometry(e),EARCUT_MAX_RINGS);t=1){var A=d[h-1];if(!isBoundaryEdge(g,A)){var _=g.sub(A)._perp()._unit();addVertex(r.layoutVertexArray,g.x,g.y,_.x,_.y,0,0,m),addVertex(r.layoutVertexArray,g.x,g.y,_.x,_.y,0,1,m),m+=A.dist(g),addVertex(r.layoutVertexArray,A.x,A.y,_.x,_.y,0,0,m),addVertex(r.layoutVertexArray,A.x,A.y,_.x,_.y,0,1,m);var v=p.vertexLength;r.elementArray.emplaceBack(v,v+1,v+2),r.elementArray.emplaceBack(v+1,v+2,v+3),p.vertexLength+=4,p.primitiveLength+=2}}u.push(g.x),u.push(g.y)}}}for(var E=earcut(u,c),T=0;T>6)}var Bucket=require("../bucket"),createVertexArrayType=require("../vertex_array_type"),createElementArrayType=require("../element_array_type"),loadGeometry=require("../load_geometry"),EXTENT=require("../extent"),VectorTileFeature=require("vector-tile").VectorTileFeature,EXTRUDE_SCALE=63,COS_HALF_SHARP_CORNER=Math.cos(37.5*(Math.PI/180)),SHARP_CORNER_OFFSET=15,LINE_DISTANCE_BUFFER_BITS=15,LINE_DISTANCE_SCALE=.5,MAX_LINE_DISTANCE=Math.pow(2,LINE_DISTANCE_BUFFER_BITS-1)/LINE_DISTANCE_SCALE,lineInterface={layoutVertexArrayType:createVertexArrayType([{name:"a_pos",components:2,type:"Int16"},{name:"a_data",components:4,type:"Uint8"}]),paintAttributes:[{property:"line-color",type:"Uint8"},{property:"line-blur",multiplier:10,type:"Uint8"},{property:"line-opacity",multiplier:10,type:"Uint8"},{property:"line-gap-width",multiplier:10,type:"Uint8",name:"a_gapwidth"},{property:"line-offset",multiplier:1,type:"Int8"}],elementArrayType:createElementArrayType()},LineBucket=function(e){function t(t){e.call(this,t,lineInterface)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.addFeature=function(e){for(var t=this,r=this.layers[0].layout,i=r["line-join"],a=r["line-cap"],n=r["line-miter-limit"],d=r["line-round-limit"],s=0,u=loadGeometry(e,LINE_DISTANCE_BUFFER_BITS);s=2&&e[l-1].equals(e[l-2]);)l--;if(!(l<(u?3:2))){"bevel"===r&&(a=1.05);var o=SHARP_CORNER_OFFSET*(EXTENT/(512*this.overscaling)),p=e[0],c=this.arrays,_=c.prepareSegment(10*l);this.distance=0;var y,h,m,E,x,C,v,A=i,f=u?"butt":i,L=!0;this.e1=this.e2=this.e3=-1,u&&(y=e[l-2],x=p.sub(y)._unit()._perp());for(var V=0;V0){var b=y.dist(h);if(b>2*o){var R=y.sub(y.sub(h)._mult(o/b)._round());d.distance+=R.dist(h),d.addCurrentVertex(R,d.distance,E.mult(1),0,0,!1,_),h=R}}var g=h&&m,F=g?r:m?A:f;if(g&&"round"===F&&(Ia&&(F="bevel"),"bevel"===F&&(I>2&&(F="flipbevel"),I100)S=x.clone().mult(-1);else{var B=E.x*x.y-E.y*x.x>0?-1:1,k=I*E.add(x).mag()/E.sub(x).mag();S._perp()._mult(k*B)}d.addCurrentVertex(y,d.distance,S,0,0,!1,_),d.addCurrentVertex(y,d.distance,S.mult(-1),0,0,!1,_)}else if("bevel"===F||"fakeround"===F){var D=E.x*x.y-E.y*x.x>0,P=-Math.sqrt(I*I-1);if(D?(v=0,C=P):(C=0,v=P),L||d.addCurrentVertex(y,d.distance,E,C,v,!1,_),"fakeround"===F){for(var U=Math.floor(8*(.5-(T-.5))),q=void 0,M=0;M=0;O--)q=E.mult((O+1)/(U+1))._add(x)._unit(),d.addPieSliceVertex(y,d.distance,q,D,_)}m&&d.addCurrentVertex(y,d.distance,x,-C,-v,!1,_)}else"butt"===F?(L||d.addCurrentVertex(y,d.distance,E,0,0,!1,_),m&&d.addCurrentVertex(y,d.distance,x,0,0,!1,_)):"square"===F?(L||(d.addCurrentVertex(y,d.distance,E,1,1,!1,_),d.e1=d.e2=-1),m&&d.addCurrentVertex(y,d.distance,x,-1,-1,!1,_)):"round"===F&&(L||(d.addCurrentVertex(y,d.distance,E,0,0,!1,_),d.addCurrentVertex(y,d.distance,E,1,1,!0,_),d.e1=d.e2=-1),m&&(d.addCurrentVertex(y,d.distance,x,-1,-1,!0,_),d.addCurrentVertex(y,d.distance,x,0,0,!1,_)));if(N&&V2*o){var H=y.add(m.sub(y)._mult(o/X)._round());d.distance+=H.dist(y),d.addCurrentVertex(H,d.distance,x.mult(1),0,0,!1,_),y=H}}L=!1}c.populatePaintArrays(s)}},t.prototype.addCurrentVertex=function(e,t,r,i,a,n,d){var s,u=n?1:0,l=this.arrays,o=l.layoutVertexArray,p=l.elementArray;s=r.clone(),i&&s._sub(r.perp()._mult(i)),addLineVertex(o,e,s,u,0,i,t),this.e3=d.vertexLength++,this.e1>=0&&this.e2>=0&&(p.emplaceBack(this.e1,this.e2,this.e3),d.primitiveLength++),this.e1=this.e2,this.e2=this.e3,s=r.mult(-1),a&&s._sub(r.perp()._mult(a)),addLineVertex(o,e,s,u,1,-a,t),this.e3=d.vertexLength++,this.e1>=0&&this.e2>=0&&(p.emplaceBack(this.e1,this.e2,this.e3),d.primitiveLength++),this.e1=this.e2,this.e2=this.e3,t>MAX_LINE_DISTANCE/2&&(this.distance=0,this.addCurrentVertex(e,this.distance,r,i,a,n,d))},t.prototype.addPieSliceVertex=function(e,t,r,i,a){var n=i?1:0;r=r.mult(i?-1:1);var d=this.arrays,s=d.layoutVertexArray,u=d.elementArray;addLineVertex(s,e,r,0,n,0,t),this.e3=a.vertexLength++,this.e1>=0&&this.e2>=0&&(u.emplaceBack(this.e1,this.e2,this.e3),a.primitiveLength++),i?this.e2=this.e3:this.e1=this.e3},t}(Bucket);LineBucket.programInterface=lineInterface,module.exports=LineBucket; -},{"../bucket":45,"../element_array_type":53,"../extent":54,"../load_geometry":56,"../vertex_array_type":60,"vector-tile":34}],50:[function(require,module,exports){ -"use strict";function addVertex(e,t,o,r,a,i,n,l,s,c,y){e.emplaceBack(t,o,Math.round(64*r),Math.round(64*a),i/4,n/4,10*(c||0),y,10*(l||0),10*Math.min(s||25,25))}function addCollisionBoxVertex(e,t,o,r,a){return e.emplaceBack(t.x,t.y,Math.round(o.x),Math.round(o.y),10*r,10*a)}var Point=require("point-geometry"),ArrayGroup=require("../array_group"),BufferGroup=require("../buffer_group"),createVertexArrayType=require("../vertex_array_type"),createElementArrayType=require("../element_array_type"),EXTENT=require("../extent"),Anchor=require("../../symbol/anchor"),getAnchors=require("../../symbol/get_anchors"),resolveTokens=require("../../util/token"),Quads=require("../../symbol/quads"),Shaping=require("../../symbol/shaping"),resolveText=require("../../symbol/resolve_text"),mergeLines=require("../../symbol/mergelines"),clipLine=require("../../symbol/clip_line"),util=require("../../util/util"),scriptDetection=require("../../util/script_detection"),loadGeometry=require("../load_geometry"),CollisionFeature=require("../../symbol/collision_feature"),findPoleOfInaccessibility=require("../../util/find_pole_of_inaccessibility"),classifyRings=require("../../util/classify_rings"),VectorTileFeature=require("vector-tile").VectorTileFeature,rtlTextPlugin=require("../../source/rtl_text_plugin"),shapeText=Shaping.shapeText,shapeIcon=Shaping.shapeIcon,WritingMode=Shaping.WritingMode,getGlyphQuads=Quads.getGlyphQuads,getIconQuads=Quads.getIconQuads,elementArrayType=createElementArrayType(),layoutVertexArrayType=createVertexArrayType([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_texture_pos",components:2,type:"Uint16"},{name:"a_data",components:4,type:"Uint8"}]),symbolInterfaces={glyph:{layoutVertexArrayType:layoutVertexArrayType,elementArrayType:elementArrayType,paintAttributes:[{name:"a_fill_color",property:"text-color",type:"Uint8"},{name:"a_halo_color",property:"text-halo-color",type:"Uint8"},{name:"a_halo_width",property:"text-halo-width",type:"Uint16",multiplier:10},{name:"a_halo_blur",property:"text-halo-blur",type:"Uint16",multiplier:10},{name:"a_opacity",property:"text-opacity",type:"Uint8",multiplier:255}]},icon:{layoutVertexArrayType:layoutVertexArrayType,elementArrayType:elementArrayType,paintAttributes:[{name:"a_fill_color",property:"icon-color",type:"Uint8"},{name:"a_halo_color",property:"icon-halo-color",type:"Uint8"},{name:"a_halo_width",property:"icon-halo-width",type:"Uint16",multiplier:10},{name:"a_halo_blur",property:"icon-halo-blur",type:"Uint16",multiplier:10},{name:"a_opacity",property:"icon-opacity",type:"Uint8",multiplier:255}]},collisionBox:{layoutVertexArrayType:createVertexArrayType([{name:"a_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"},{name:"a_data",components:2,type:"Uint8"}]),elementArrayType:createElementArrayType(2)}},SymbolBucket=function(e){var t=this;if(this.collisionBoxArray=e.collisionBoxArray,this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.index=e.index,this.sdfIcons=e.sdfIcons,this.iconsNeedLinear=e.iconsNeedLinear,this.adjustedTextSize=e.adjustedTextSize,this.adjustedIconSize=e.adjustedIconSize,this.fontstack=e.fontstack,e.arrays){this.buffers={};for(var o in e.arrays)e.arrays[o]&&(t.buffers[o]=new BufferGroup(symbolInterfaces[o],e.layers,e.zoom,e.arrays[o]))}};SymbolBucket.prototype.populate=function(e,t){var o=this,r=this.layers[0],a=r.layout,i=a["text-font"],n=a["icon-image"],l=i&&(!r.isLayoutValueFeatureConstant("text-field")||a["text-field"]),s=n;if(this.features=[],l||s){for(var c=t.iconDependencies,y=t.glyphDependencies,p=y[i]=y[i]||{},x=0;xEXTENT||i.y<0||i.y>EXTENT);if(!x||n){var l=n||f;r.addSymbolInstance(i,a,t,o,r.layers[0],l,r.collisionBoxArray,e.index,e.sourceLayerIndex,r.index,s,h,m,y,u,g,{zoom:r.zoom},e.properties)}};if("line"===b)for(var S=0,T=clipLine(e.geometry,0,0,EXTENT,EXTENT);S=0;i--)if(o.dist(a[i])7*Math.PI/4)continue}else if(r&&a&&d<=3*Math.PI/4||d>5*Math.PI/4)continue}else if(r&&a&&(d<=Math.PI/2||d>3*Math.PI/2))continue;var m=u.tl,g=u.tr,f=u.bl,b=u.br,v=u.tex,I=u.anchorPoint,S=Math.max(y+Math.log(u.minScale)/Math.LN2,p),T=Math.min(y+Math.log(u.maxScale)/Math.LN2,25);if(!(T<=S)){S===p&&(S=0);var M=Math.round(u.glyphAngle/(2*Math.PI)*256),B=e.prepareSegment(4),A=B.vertexLength;addVertex(c,I.x,I.y,m.x,m.y,v.x,v.y,S,T,p,M),addVertex(c,I.x,I.y,g.x,g.y,v.x+v.w,v.y,S,T,p,M),addVertex(c,I.x,I.y,f.x,f.y,v.x,v.y+v.h,S,T,p,M),addVertex(c,I.x,I.y,b.x,b.y,v.x+v.w,v.y+v.h,S,T,p,M),s.emplaceBack(A,A+1,A+2),s.emplaceBack(A+1,A+2,A+3),B.vertexLength+=4,B.primitiveLength+=2}}e.populatePaintArrays(n)},SymbolBucket.prototype.addToDebugBuffers=function(e){for(var t=this,o=this.arrays.collisionBox,r=o.layoutVertexArray,a=o.elementArray,i=-e.angle,n=e.yStretch,l=0,s=t.symbolInstances;lSymbolBucket.MAX_INSTANCES&&util.warnOnce("Too many symbols being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),z>SymbolBucket.MAX_INSTANCES&&util.warnOnce("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907");var _=(o[WritingMode.vertical]?WritingMode.vertical:0)|(o[WritingMode.horizontal]?WritingMode.horizontal:0);this.symbolInstances.push({textBoxStartIndex:M,textBoxEndIndex:B,iconBoxStartIndex:A,iconBoxEndIndex:z,glyphQuads:I,iconQuads:v,anchor:e,featureIndex:l,featureProperties:g,writingModes:_})},SymbolBucket.programInterfaces=symbolInterfaces,SymbolBucket.MAX_INSTANCES=65535,module.exports=SymbolBucket; -},{"../../source/rtl_text_plugin":90,"../../symbol/anchor":157,"../../symbol/clip_line":159,"../../symbol/collision_feature":161,"../../symbol/get_anchors":163,"../../symbol/mergelines":166,"../../symbol/quads":167,"../../symbol/resolve_text":168,"../../symbol/shaping":169,"../../util/classify_rings":195,"../../util/find_pole_of_inaccessibility":201,"../../util/script_detection":209,"../../util/token":211,"../../util/util":212,"../array_group":44,"../buffer_group":52,"../element_array_type":53,"../extent":54,"../load_geometry":56,"../vertex_array_type":60,"point-geometry":26,"vector-tile":34}],51:[function(require,module,exports){ -"use strict";var AttributeType={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT"},Buffer=function(e,t,r){this.arrayBuffer=e.arrayBuffer,this.length=e.length,this.attributes=t.members,this.itemSize=t.bytesPerElement,this.type=r,this.arrayType=t};Buffer.fromStructArray=function(e,t){return new Buffer(e.serialize(),e.constructor.serialize(),t)},Buffer.prototype.bind=function(e){var t=e[this.type];this.buffer?e.bindBuffer(t,this.buffer):(this.gl=e,this.buffer=e.createBuffer(),e.bindBuffer(t,this.buffer),e.bufferData(t,this.arrayBuffer,e.STATIC_DRAW),this.arrayBuffer=null)},Buffer.prototype.setVertexAttribPointers=function(e,t,r){for(var f=this,i=0;i0?t+2*e:e}function translate(e,t,r,i,a){if(!t[0]&&!t[1])return e;t=Point.convert(t),"viewport"===r&&t._rotate(-i);for(var n=[],s=0;sr.max||d.yr.max)&&util.warnOnce("Geometry exceeds allowed extent, reduce your vector tile buffer size")}return u}; -},{"../util/util":212,"./extent":54}],57:[function(require,module,exports){ -"use strict";var createStructArrayType=require("../util/struct_array"),PosArray=createStructArrayType({members:[{name:"a_pos",type:"Int16",components:2}]});module.exports=PosArray; -},{"../util/struct_array":210}],58:[function(require,module,exports){ -"use strict";function getPaintAttributeValue(t,r,e,i){if(!t.zoomStops)return r.getPaintValue(t.property,e,i);var a=t.zoomStops.map(function(a){return r.getPaintValue(t.property,util.extend({},e,{zoom:a}),i)});return 1===a.length?a[0]:a}function normalizePaintAttribute(t,r){var e=t.name;e||(e=t.property.replace(r.type+"-","").replace(/-/g,"_"));var i="color"===r._paintSpecifications[t.property].type;return util.extend({name:"a_"+e,components:i?4:1,multiplier:i?255:1,dimensions:i?4:1},t)}var createVertexArrayType=require("./vertex_array_type"),util=require("../util/util"),ProgramConfiguration=function(){this.attributes=[],this.uniforms=[],this.interpolationUniforms=[],this.pragmas={vertex:{},fragment:{}},this.cacheKey=""};ProgramConfiguration.createDynamic=function(t,r,e){for(var i=new ProgramConfiguration,a=0,n=t;a90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};LngLat.prototype.wrap=function(){return new LngLat(wrap(this.lng,-180,180),this.lat)},LngLat.prototype.toArray=function(){return[this.lng,this.lat]},LngLat.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},LngLat.convert=function(t){if(t instanceof LngLat)return t;if(t&&t.hasOwnProperty("lng")&&t.hasOwnProperty("lat"))return new LngLat(t.lng,t.lat);if(Array.isArray(t)&&2===t.length)return new LngLat(t[0],t[1]);throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, or an array of [, ]")},module.exports=LngLat; -},{"../util/util":212}],63:[function(require,module,exports){ -"use strict";var LngLat=require("./lng_lat"),LngLatBounds=function(t,n){t&&(n?this.setSouthWest(t).setNorthEast(n):4===t.length?this.setSouthWest([t[0],t[1]]).setNorthEast([t[2],t[3]]):this.setSouthWest(t[0]).setNorthEast(t[1]))};LngLatBounds.prototype.setNorthEast=function(t){return this._ne=LngLat.convert(t),this},LngLatBounds.prototype.setSouthWest=function(t){return this._sw=LngLat.convert(t),this},LngLatBounds.prototype.extend=function(t){var n,e,s=this._sw,o=this._ne;if(t instanceof LngLat)n=t,e=t;else{if(!(t instanceof LngLatBounds))return Array.isArray(t)?t.every(Array.isArray)?this.extend(LngLatBounds.convert(t)):this.extend(LngLat.convert(t)):this;if(n=t._sw,e=t._ne,!n||!e)return this}return s||o?(s.lng=Math.min(n.lng,s.lng),s.lat=Math.min(n.lat,s.lat),o.lng=Math.max(e.lng,o.lng),o.lat=Math.max(e.lat,o.lat)):(this._sw=new LngLat(n.lng,n.lat),this._ne=new LngLat(e.lng,e.lat)),this},LngLatBounds.prototype.getCenter=function(){return new LngLat((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},LngLatBounds.prototype.getSouthWest=function(){return this._sw},LngLatBounds.prototype.getNorthEast=function(){return this._ne},LngLatBounds.prototype.getNorthWest=function(){return new LngLat(this.getWest(),this.getNorth())},LngLatBounds.prototype.getSouthEast=function(){return new LngLat(this.getEast(),this.getSouth())},LngLatBounds.prototype.getWest=function(){return this._sw.lng},LngLatBounds.prototype.getSouth=function(){return this._sw.lat},LngLatBounds.prototype.getEast=function(){return this._ne.lng},LngLatBounds.prototype.getNorth=function(){return this._ne.lat},LngLatBounds.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},LngLatBounds.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},LngLatBounds.convert=function(t){return!t||t instanceof LngLatBounds?t:new LngLatBounds(t)},module.exports=LngLatBounds; -},{"./lng_lat":62}],64:[function(require,module,exports){ -"use strict";var LngLat=require("./lng_lat"),Point=require("point-geometry"),Coordinate=require("./coordinate"),util=require("../util/util"),interp=require("../util/interpolate"),TileCoord=require("../source/tile_coord"),EXTENT=require("../data/extent"),glmatrix=require("@mapbox/gl-matrix"),vec4=glmatrix.vec4,mat4=glmatrix.mat4,mat2=glmatrix.mat2,Transform=function(t,i,o){this.tileSize=512,this._renderWorldCopies=void 0===o||o,this._minZoom=t||0,this._maxZoom=i||22,this.latRange=[-85.05113,85.05113],this.width=0,this.height=0,this._center=new LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0},prototypeAccessors={minZoom:{},maxZoom:{},worldSize:{},centerPoint:{},size:{},bearing:{},pitch:{},fov:{},zoom:{},center:{},unmodified:{},x:{},y:{},point:{}};prototypeAccessors.minZoom.get=function(){return this._minZoom},prototypeAccessors.minZoom.set=function(t){this._minZoom!==t&&(this._minZoom=t,this.zoom=Math.max(this.zoom,t))},prototypeAccessors.maxZoom.get=function(){return this._maxZoom},prototypeAccessors.maxZoom.set=function(t){this._maxZoom!==t&&(this._maxZoom=t,this.zoom=Math.min(this.zoom,t))},prototypeAccessors.worldSize.get=function(){return this.tileSize*this.scale},prototypeAccessors.centerPoint.get=function(){return this.size._div(2)},prototypeAccessors.size.get=function(){return new Point(this.width,this.height)},prototypeAccessors.bearing.get=function(){return-this.angle/Math.PI*180},prototypeAccessors.bearing.set=function(t){var i=-util.wrap(t,-180,180)*Math.PI/180;this.angle!==i&&(this._unmodified=!1,this.angle=i,this._calcMatrices(),this.rotationMatrix=mat2.create(),mat2.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},prototypeAccessors.pitch.get=function(){return this._pitch/Math.PI*180},prototypeAccessors.pitch.set=function(t){var i=util.clamp(t,0,60)/180*Math.PI;this._pitch!==i&&(this._unmodified=!1,this._pitch=i,this._calcMatrices())},prototypeAccessors.fov.get=function(){return this._fov/Math.PI*180},prototypeAccessors.fov.set=function(t){t=Math.max(.01,Math.min(60,t)),this._fov!==t&&(this._unmodified=!1,this._fov=t/180*Math.PI,this._calcMatrices())},prototypeAccessors.zoom.get=function(){return this._zoom},prototypeAccessors.zoom.set=function(t){var i=Math.min(Math.max(t,this.minZoom),this.maxZoom);this._zoom!==i&&(this._unmodified=!1,this._zoom=i,this.scale=this.zoomScale(i),this.tileZoom=Math.floor(i),this.zoomFraction=i-this.tileZoom,this._constrain(),this._calcMatrices())},prototypeAccessors.center.get=function(){return this._center},prototypeAccessors.center.set=function(t){t.lat===this._center.lat&&t.lng===this._center.lng||(this._unmodified=!1,this._center=t,this._constrain(),this._calcMatrices())},Transform.prototype.coveringZoomLevel=function(t){return(t.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/t.tileSize))},Transform.prototype.coveringTiles=function(t){var i=this.coveringZoomLevel(t),o=i;if(it.maxzoom&&(i=t.maxzoom);var e=this.pointCoordinate(this.centerPoint,i),r=new Point(e.column-.5,e.row-.5),n=[this.pointCoordinate(new Point(0,0),i),this.pointCoordinate(new Point(this.width,0),i),this.pointCoordinate(new Point(this.width,this.height),i),this.pointCoordinate(new Point(0,this.height),i)];return TileCoord.cover(i,n,t.reparseOverscaled?o:i,this._renderWorldCopies).sort(function(t,i){return r.dist(t)-r.dist(i)})},Transform.prototype.resize=function(t,i){this.width=t,this.height=i,this.pixelsToGLUnits=[2/t,-2/i],this._constrain(),this._calcMatrices()},prototypeAccessors.unmodified.get=function(){return this._unmodified},Transform.prototype.zoomScale=function(t){return Math.pow(2,t)},Transform.prototype.scaleZoom=function(t){return Math.log(t)/Math.LN2},Transform.prototype.project=function(t){return new Point(this.lngX(t.lng),this.latY(t.lat))},Transform.prototype.unproject=function(t){return new LngLat(this.xLng(t.x),this.yLat(t.y))},prototypeAccessors.x.get=function(){return this.lngX(this.center.lng)},prototypeAccessors.y.get=function(){return this.latY(this.center.lat)},prototypeAccessors.point.get=function(){return new Point(this.x,this.y)},Transform.prototype.lngX=function(t){return(180+t)*this.worldSize/360},Transform.prototype.latY=function(t){var i=180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360));return(180-i)*this.worldSize/360},Transform.prototype.xLng=function(t){return 360*t/this.worldSize-180},Transform.prototype.yLat=function(t){var i=180-360*t/this.worldSize;return 360/Math.PI*Math.atan(Math.exp(i*Math.PI/180))-90},Transform.prototype.setLocationAtPoint=function(t,i){var o=this.pointCoordinate(i)._sub(this.pointCoordinate(this.centerPoint));this.center=this.coordinateLocation(this.locationCoordinate(t)._sub(o))},Transform.prototype.locationPoint=function(t){return this.coordinatePoint(this.locationCoordinate(t))},Transform.prototype.pointLocation=function(t){return this.coordinateLocation(this.pointCoordinate(t))},Transform.prototype.locationCoordinate=function(t){return new Coordinate(this.lngX(t.lng)/this.tileSize,this.latY(t.lat)/this.tileSize,this.zoom).zoomTo(this.tileZoom)},Transform.prototype.coordinateLocation=function(t){var i=t.zoomTo(this.zoom);return new LngLat(this.xLng(i.column*this.tileSize),this.yLat(i.row*this.tileSize))},Transform.prototype.pointCoordinate=function(t,i){void 0===i&&(i=this.tileZoom);var o=0,e=[t.x,t.y,0,1],r=[t.x,t.y,1,1];vec4.transformMat4(e,e,this.pixelMatrixInverse),vec4.transformMat4(r,r,this.pixelMatrixInverse);var n=e[3],s=r[3],a=e[0]/n,h=r[0]/s,c=e[1]/n,m=r[1]/s,p=e[2]/n,l=r[2]/s,u=p===l?0:(o-p)/(l-p);return new Coordinate(interp(a,h,u)/this.tileSize,interp(c,m,u)/this.tileSize,this.zoom)._zoomTo(i)},Transform.prototype.coordinatePoint=function(t){var i=t.zoomTo(this.zoom),o=[i.column*this.tileSize,i.row*this.tileSize,0,1];return vec4.transformMat4(o,o,this.pixelMatrix),new Point(o[0]/o[3],o[1]/o[3])},Transform.prototype.calculatePosMatrix=function(t,i){var o=t.toCoordinate(i),e=this.worldSize/this.zoomScale(o.zoom),r=mat4.identity(new Float64Array(16));return mat4.translate(r,r,[o.column*e,o.row*e,0]),mat4.scale(r,r,[e/EXTENT,e/EXTENT,1]),mat4.multiply(r,this.projMatrix,r),new Float32Array(r)},Transform.prototype._constrain=function(){if(this.center&&this.width&&this.height&&!this._constraining){this._constraining=!0;var t,i,o,e,r,n,s,a,h=this.size,c=this._unmodified;this.latRange&&(t=this.latY(this.latRange[1]),i=this.latY(this.latRange[0]),r=i-ti&&(a=i-l)}if(this.lngRange){var u=this.x,f=h.x/2;u-fe&&(s=e-f)}void 0===s&&void 0===a||(this.center=this.unproject(new Point(void 0!==s?s:this.x,void 0!==a?a:this.y))),this._unmodified=c,this._constraining=!1}},Transform.prototype._calcMatrices=function(){if(this.height){this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height;var t=this._fov/2,i=Math.PI/2+this._pitch,o=Math.sin(t)*this.cameraToCenterDistance/Math.sin(Math.PI-i-t),e=Math.cos(Math.PI/2-this._pitch)*o+this.cameraToCenterDistance,r=1.01*e,n=new Float64Array(16);mat4.perspective(n,this._fov,this.width/this.height,1,r),mat4.scale(n,n,[1,-1,1]),mat4.translate(n,n,[0,0,-this.cameraToCenterDistance]),mat4.rotateX(n,n,this._pitch),mat4.rotateZ(n,n,this.angle),mat4.translate(n,n,[-this.x,-this.y,0]);var s=this.worldSize/(2*Math.PI*6378137*Math.abs(Math.cos(this.center.lat*(Math.PI/180))));if(mat4.scale(n,n,[1,1,s,1]),this.projMatrix=n,n=mat4.create(),mat4.scale(n,n,[this.width/2,-this.height/2,1]),mat4.translate(n,n,[1,-1,0]),this.pixelMatrix=mat4.multiply(new Float64Array(16),n,this.projMatrix),n=mat4.invert(new Float64Array(16),this.pixelMatrix),!n)throw new Error("failed to invert matrix");this.pixelMatrixInverse=n}},Object.defineProperties(Transform.prototype,prototypeAccessors),module.exports=Transform; -},{"../data/extent":54,"../source/tile_coord":94,"../util/interpolate":204,"../util/util":212,"./coordinate":61,"./lng_lat":62,"@mapbox/gl-matrix":1,"point-geometry":26}],65:[function(require,module,exports){ -"use strict";var browser=require("./util/browser"),mapboxgl=module.exports={};mapboxgl.version=require("../package.json").version,mapboxgl.workerCount=Math.max(Math.floor(browser.hardwareConcurrency/2),1),mapboxgl.Map=require("./ui/map"),mapboxgl.NavigationControl=require("./ui/control/navigation_control"),mapboxgl.GeolocateControl=require("./ui/control/geolocate_control"),mapboxgl.AttributionControl=require("./ui/control/attribution_control"),mapboxgl.ScaleControl=require("./ui/control/scale_control"),mapboxgl.FullscreenControl=require("./ui/control/fullscreen_control"),mapboxgl.Popup=require("./ui/popup"),mapboxgl.Marker=require("./ui/marker"),mapboxgl.Style=require("./style/style"),mapboxgl.LngLat=require("./geo/lng_lat"),mapboxgl.LngLatBounds=require("./geo/lng_lat_bounds"),mapboxgl.Point=require("point-geometry"),mapboxgl.Evented=require("./util/evented"),mapboxgl.supported=require("./util/browser").supported;var config=require("./util/config");mapboxgl.config=config;var rtlTextPlugin=require("./source/rtl_text_plugin");mapboxgl.setRTLTextPlugin=rtlTextPlugin.setRTLTextPlugin,Object.defineProperty(mapboxgl,"accessToken",{get:function(){return config.ACCESS_TOKEN},set:function(o){config.ACCESS_TOKEN=o}}); -},{"../package.json":43,"./geo/lng_lat":62,"./geo/lng_lat_bounds":63,"./source/rtl_text_plugin":90,"./style/style":146,"./ui/control/attribution_control":173,"./ui/control/fullscreen_control":174,"./ui/control/geolocate_control":175,"./ui/control/navigation_control":177,"./ui/control/scale_control":178,"./ui/map":187,"./ui/marker":188,"./ui/popup":189,"./util/browser":192,"./util/config":196,"./util/evented":200,"point-geometry":26}],66:[function(require,module,exports){ -"use strict";function drawBackground(r,t,e){var a=r.gl,i=r.transform,n=i.tileSize,o=e.paint["background-color"],l=e.paint["background-pattern"],u=e.paint["background-opacity"],f=!l&&1===o[3]&&1===u;if(r.isOpaquePass===f){a.disable(a.STENCIL_TEST),r.setDepthSublayer(0);var s;l?(s=r.useProgram("fillPattern",r.basicFillProgramConfiguration),pattern.prepare(l,r,s),r.tileExtentPatternVAO.bind(a,s,r.tileExtentBuffer)):(s=r.useProgram("fill",r.basicFillProgramConfiguration),a.uniform4fv(s.u_color,o),r.tileExtentVAO.bind(a,s,r.tileExtentBuffer)),a.uniform1f(s.u_opacity,u);for(var c=i.coveringTiles({tileSize:n}),g=0,p=c;g":[24,[4,18,20,9,4,0]],"?":[18,[3,16,3,17,4,19,5,20,7,21,11,21,13,20,14,19,15,17,15,15,14,13,13,12,9,10,9,7,-1,-1,9,2,8,1,9,0,10,1,9,2]],"@":[27,[18,13,17,15,15,16,12,16,10,15,9,14,8,11,8,8,9,6,11,5,14,5,16,6,17,8,-1,-1,12,16,10,14,9,11,9,8,10,6,11,5,-1,-1,18,16,17,8,17,6,19,5,21,5,23,7,24,10,24,12,23,15,22,17,20,19,18,20,15,21,12,21,9,20,7,19,5,17,4,15,3,12,3,9,4,6,5,4,7,2,9,1,12,0,15,0,18,1,20,2,21,3,-1,-1,19,16,18,8,18,6,19,5]],A:[18,[9,21,1,0,-1,-1,9,21,17,0,-1,-1,4,7,14,7]],B:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,15,17,13,16,12,13,11,-1,-1,4,11,13,11,16,10,17,9,18,7,18,4,17,2,16,1,13,0,4,0]],C:[21,[18,16,17,18,15,20,13,21,9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5]],D:[21,[4,21,4,0,-1,-1,4,21,11,21,14,20,16,18,17,16,18,13,18,8,17,5,16,3,14,1,11,0,4,0]],E:[19,[4,21,4,0,-1,-1,4,21,17,21,-1,-1,4,11,12,11,-1,-1,4,0,17,0]],F:[18,[4,21,4,0,-1,-1,4,21,17,21,-1,-1,4,11,12,11]],G:[21,[18,16,17,18,15,20,13,21,9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,18,8,-1,-1,13,8,18,8]],H:[22,[4,21,4,0,-1,-1,18,21,18,0,-1,-1,4,11,18,11]],I:[8,[4,21,4,0]],J:[16,[12,21,12,5,11,2,10,1,8,0,6,0,4,1,3,2,2,5,2,7]],K:[21,[4,21,4,0,-1,-1,18,21,4,7,-1,-1,9,12,18,0]],L:[17,[4,21,4,0,-1,-1,4,0,16,0]],M:[24,[4,21,4,0,-1,-1,4,21,12,0,-1,-1,20,21,12,0,-1,-1,20,21,20,0]],N:[22,[4,21,4,0,-1,-1,4,21,18,0,-1,-1,18,21,18,0]],O:[22,[9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,19,8,19,13,18,16,17,18,15,20,13,21,9,21]],P:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,14,17,12,16,11,13,10,4,10]],Q:[22,[9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,19,8,19,13,18,16,17,18,15,20,13,21,9,21,-1,-1,12,4,18,-2]],R:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,15,17,13,16,12,13,11,4,11,-1,-1,11,11,18,0]],S:[20,[17,18,15,20,12,21,8,21,5,20,3,18,3,16,4,14,5,13,7,12,13,10,15,9,16,8,17,6,17,3,15,1,12,0,8,0,5,1,3,3]],T:[16,[8,21,8,0,-1,-1,1,21,15,21]],U:[22,[4,21,4,6,5,3,7,1,10,0,12,0,15,1,17,3,18,6,18,21]],V:[18,[1,21,9,0,-1,-1,17,21,9,0]],W:[24,[2,21,7,0,-1,-1,12,21,7,0,-1,-1,12,21,17,0,-1,-1,22,21,17,0]],X:[20,[3,21,17,0,-1,-1,17,21,3,0]],Y:[18,[1,21,9,11,9,0,-1,-1,17,21,9,11]],Z:[20,[17,21,3,0,-1,-1,3,21,17,21,-1,-1,3,0,17,0]],"[":[14,[4,25,4,-7,-1,-1,5,25,5,-7,-1,-1,4,25,11,25,-1,-1,4,-7,11,-7]],"\\":[14,[0,21,14,-3]],"]":[14,[9,25,9,-7,-1,-1,10,25,10,-7,-1,-1,3,25,10,25,-1,-1,3,-7,10,-7]],"^":[16,[6,15,8,18,10,15,-1,-1,3,12,8,17,13,12,-1,-1,8,17,8,0]],_:[16,[0,-2,16,-2]],"`":[10,[6,21,5,20,4,18,4,16,5,15,6,16,5,17]],a:[19,[15,14,15,0,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],b:[19,[4,21,4,0,-1,-1,4,11,6,13,8,14,11,14,13,13,15,11,16,8,16,6,15,3,13,1,11,0,8,0,6,1,4,3]],c:[18,[15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],d:[19,[15,21,15,0,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],e:[18,[3,8,15,8,15,10,14,12,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],f:[12,[10,21,8,21,6,20,5,17,5,0,-1,-1,2,14,9,14]],g:[19,[15,14,15,-2,14,-5,13,-6,11,-7,8,-7,6,-6,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],h:[19,[4,21,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0]],i:[8,[3,21,4,20,5,21,4,22,3,21,-1,-1,4,14,4,0]],j:[10,[5,21,6,20,7,21,6,22,5,21,-1,-1,6,14,6,-3,5,-6,3,-7,1,-7]],k:[17,[4,21,4,0,-1,-1,14,14,4,4,-1,-1,8,8,15,0]],l:[8,[4,21,4,0]],m:[30,[4,14,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0,-1,-1,15,10,18,13,20,14,23,14,25,13,26,10,26,0]],n:[19,[4,14,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0]],o:[19,[8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3,16,6,16,8,15,11,13,13,11,14,8,14]],p:[19,[4,14,4,-7,-1,-1,4,11,6,13,8,14,11,14,13,13,15,11,16,8,16,6,15,3,13,1,11,0,8,0,6,1,4,3]],q:[19,[15,14,15,-7,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],r:[13,[4,14,4,0,-1,-1,4,8,5,11,7,13,9,14,12,14]],s:[17,[14,11,13,13,10,14,7,14,4,13,3,11,4,9,6,8,11,7,13,6,14,4,14,3,13,1,10,0,7,0,4,1,3,3]],t:[12,[5,21,5,4,6,1,8,0,10,0,-1,-1,2,14,9,14]],u:[19,[4,14,4,4,5,1,7,0,10,0,12,1,15,4,-1,-1,15,14,15,0]],v:[16,[2,14,8,0,-1,-1,14,14,8,0]],w:[22,[3,14,7,0,-1,-1,11,14,7,0,-1,-1,11,14,15,0,-1,-1,19,14,15,0]],x:[17,[3,14,14,0,-1,-1,14,14,3,0]],y:[16,[2,14,8,0,-1,-1,14,14,8,0,6,-4,4,-6,2,-7,1,-7]],z:[17,[14,14,3,0,-1,-1,3,14,14,14,-1,-1,3,0,14,0]],"{":[14,[9,25,7,24,6,23,5,21,5,19,6,17,7,16,8,14,8,12,6,10,-1,-1,7,24,6,22,6,20,7,18,8,17,9,15,9,13,8,11,4,9,8,7,9,5,9,3,8,1,7,0,6,-2,6,-4,7,-6,-1,-1,6,8,8,6,8,4,7,2,6,1,5,-1,5,-3,6,-5,7,-6,9,-7]],"|":[8,[4,25,4,-7]],"}":[14,[5,25,7,24,8,23,9,21,9,19,8,17,7,16,6,14,6,12,8,10,-1,-1,7,24,8,22,8,20,7,18,6,17,5,15,5,13,6,11,10,9,6,7,5,5,5,3,6,1,7,0,8,-2,8,-4,7,-6,-1,-1,8,8,6,6,6,4,7,2,8,1,9,-1,9,-3,8,-5,7,-6,5,-7]],"~":[24,[3,6,3,8,4,11,6,12,8,12,10,11,14,8,16,7,18,7,20,8,21,10,-1,-1,3,8,4,10,6,11,8,11,10,10,14,7,16,6,18,6,20,7,21,10,21,12]]}; -},{"../data/buffer":51,"../data/extent":54,"../data/pos_array":57,"../util/browser":192,"./vertex_array_object":80,"@mapbox/gl-matrix":1}],70:[function(require,module,exports){ -"use strict";function drawFill(t,e,r,i){var a=t.gl;a.enable(a.STENCIL_TEST);var l=!r.paint["fill-pattern"]&&r.isPaintValueFeatureConstant("fill-color")&&r.isPaintValueFeatureConstant("fill-opacity")&&1===r.paint["fill-color"][3]&&1===r.paint["fill-opacity"];t.isOpaquePass===l&&(t.setDepthSublayer(1),drawFillTiles(t,e,r,i,drawFillTile)),!t.isOpaquePass&&r.paint["fill-antialias"]&&(t.lineWidth(2),t.depthMask(!1),t.setDepthSublayer(r.getPaintProperty("fill-outline-color")?2:0),drawFillTiles(t,e,r,i,drawStrokeTile))}function drawFillTiles(t,e,r,i,a){for(var l=!0,n=0,o=i;n0?1/(1-r):1+r}function saturationFactor(r){return r>0?1-1/(1.001-r):-r}function getFadeValues(r,t,e,a){var i=e.paint["raster-fade-duration"];if(r.sourceCache&&i>0){var o=Date.now(),n=(o-r.timeAdded)/i,u=t?(o-t.timeAdded)/i:-1,s=r.sourceCache.getSource(),c=a.coveringZoomLevel({tileSize:s.tileSize,roundZoom:s.roundZoom}),f=!t||Math.abs(t.coord.z-c)>Math.abs(r.coord.z-c),d=f&&r.refreshedUponExpiration?1:util.clamp(f?n:1-u,0,1);return r.refreshedUponExpiration&&n>=1&&(r.refreshedUponExpiration=!1),t?{opacity:1,mix:1-d}:{opacity:d,mix:0}}return{opacity:1,mix:0}}var util=require("../util/util");module.exports=drawRaster; -},{"../util/util":212}],74:[function(require,module,exports){ -"use strict";function drawSymbols(e,t,a,i){if(!e.isOpaquePass){var o=!(a.layout["text-allow-overlap"]||a.layout["icon-allow-overlap"]||a.layout["text-ignore-placement"]||a.layout["icon-ignore-placement"]),r=e.gl;o?r.disable(r.STENCIL_TEST):r.enable(r.STENCIL_TEST),e.setDepthSublayer(0),e.depthMask(!1),drawLayerSymbols(e,t,a,i,!1,a.paint["icon-translate"],a.paint["icon-translate-anchor"],a.layout["icon-rotation-alignment"],a.layout["icon-rotation-alignment"],a.layout["icon-size"]),drawLayerSymbols(e,t,a,i,!0,a.paint["text-translate"],a.paint["text-translate-anchor"],a.layout["text-rotation-alignment"],a.layout["text-pitch-alignment"],a.layout["text-size"]),t.map.showCollisionBoxes&&drawCollisionDebug(e,t,a,i)}}function drawLayerSymbols(e,t,a,i,o,r,n,l,s,u){if(o||!e.style.sprite||e.style.sprite.loaded()){var f=e.gl,m="map"===l,p="map"===s,c=p;c?f.enable(f.DEPTH_TEST):f.disable(f.DEPTH_TEST);for(var d,_,h=0,g=i;hthis.previousZoom;a--)r.changeTimes[a]=e,r.changeOpacities[a]=r.opacities[a];for(a=0;a<256;a++){var s=e-r.changeTimes[a],o=255*(i?s/i:1);a<=t?r.opacities[a]=r.changeOpacities[a]+o:r.opacities[a]=r.changeOpacities[a]-o}this.changed=!0,this.previousZoom=t},FrameHistory.prototype.bind=function(e){this.texture?(e.bindTexture(e.TEXTURE_2D,this.texture),this.changed&&(e.texSubImage2D(e.TEXTURE_2D,0,0,0,256,1,e.ALPHA,e.UNSIGNED_BYTE,this.array),this.changed=!1)):(this.texture=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.texture),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.NEAREST),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.NEAREST),e.texImage2D(e.TEXTURE_2D,0,e.ALPHA,256,1,0,e.ALPHA,e.UNSIGNED_BYTE,this.array))},module.exports=FrameHistory; -},{}],76:[function(require,module,exports){ -"use strict";var util=require("../util/util"),LineAtlas=function(t,i){this.width=t,this.height=i,this.nextRow=0,this.bytes=4,this.data=new Uint8Array(this.width*this.height*this.bytes),this.positions={}};LineAtlas.prototype.setSprite=function(t){this.sprite=t},LineAtlas.prototype.getDash=function(t,i){var e=t.join(",")+i;return this.positions[e]||(this.positions[e]=this.addDash(t,i)),this.positions[e]},LineAtlas.prototype.addDash=function(t,i){var e=this,h=i?7:0,s=2*h+1,a=128;if(this.nextRow+s>this.height)return util.warnOnce("LineAtlas out of space"),null;for(var r=0,n=0;n0?r.pop():null},Painter.prototype.getViewportTexture=function(e,r){var t=this.reusableTextures.viewport;if(t)return t.width===e&&t.height===r?t:(this.gl.deleteTexture(t),void(this.reusableTextures.viewport=null))},Painter.prototype.lineWidth=function(e){this.gl.lineWidth(util.clamp(e,this.lineWidthRange[0],this.lineWidthRange[1]))},Painter.prototype.showOverdrawInspector=function(e){if(e||this._showOverdrawInspector){this._showOverdrawInspector=e;var r=this.gl;if(e){r.blendFunc(r.CONSTANT_COLOR,r.ONE);var t=8,i=1/t;r.blendColor(i,i,i,0),r.clearColor(0,0,0,1),r.clear(r.COLOR_BUFFER_BIT)}else r.blendFunc(r.ONE,r.ONE_MINUS_SRC_ALPHA)}},Painter.prototype.createProgram=function(e,r){var t=this.gl,i=t.createProgram(),a=shaders[e],s="#define MAPBOX_GL_JS\n#define DEVICE_PIXEL_RATIO "+browser.devicePixelRatio.toFixed(1)+"\n";this._showOverdrawInspector&&(s+="#define OVERDRAW_INSPECTOR;\n");var o=r.applyPragmas(s+shaders.prelude.fragmentSource+a.fragmentSource,"fragment"),n=r.applyPragmas(s+shaders.prelude.vertexSource+a.vertexSource,"vertex"),l=t.createShader(t.FRAGMENT_SHADER);t.shaderSource(l,o),t.compileShader(l),t.attachShader(i,l);var h=t.createShader(t.VERTEX_SHADER);t.shaderSource(h,n),t.compileShader(h),t.attachShader(i,h),t.linkProgram(i);for(var u=t.getProgramParameter(i,t.ACTIVE_ATTRIBUTES),c={program:i,numAttributes:u},p=0;p>16,n>>16),o.uniform2f(i.u_pixel_coord_lower,65535&u,65535&n)}; -},{"../source/pixels_to_tile_units":87}],79:[function(require,module,exports){ -"use strict";var path=require("path");module.exports={prelude:{fragmentSource:"#ifdef GL_ES\nprecision mediump float;\n#else\n\n#if !defined(lowp)\n#define lowp\n#endif\n\n#if !defined(mediump)\n#define mediump\n#endif\n\n#if !defined(highp)\n#define highp\n#endif\n\n#endif\n",vertexSource:"#ifdef GL_ES\nprecision highp float;\n#else\n\n#if !defined(lowp)\n#define lowp\n#endif\n\n#if !defined(mediump)\n#define mediump\n#endif\n\n#if !defined(highp)\n#define highp\n#endif\n\n#endif\n\nfloat evaluate_zoom_function_1(const vec4 values, const float t) {\n if (t < 1.0) {\n return mix(values[0], values[1], t);\n } else if (t < 2.0) {\n return mix(values[1], values[2], t - 1.0);\n } else {\n return mix(values[2], values[3], t - 2.0);\n }\n}\nvec4 evaluate_zoom_function_4(const vec4 value0, const vec4 value1, const vec4 value2, const vec4 value3, const float t) {\n if (t < 1.0) {\n return mix(value0, value1, t);\n } else if (t < 2.0) {\n return mix(value1, value2, t - 1.0);\n } else {\n return mix(value2, value3, t - 2.0);\n }\n}\n\n\n// To minimize the number of attributes needed in the mapbox-gl-native shaders,\n// we encode a 4-component color into a pair of floats (i.e. a vec2) as follows:\n// [ floor(color.r * 255) * 256 + color.g * 255,\n// floor(color.b * 255) * 256 + color.g * 255 ]\nvec4 decode_color(const vec2 encodedColor) {\n float r = floor(encodedColor[0]/256.0)/255.0;\n float g = (encodedColor[0] - r*256.0*255.0)/255.0;\n float b = floor(encodedColor[1]/256.0)/255.0;\n float a = (encodedColor[1] - b*256.0*255.0)/255.0;\n return vec4(r, g, b, a);\n}\n\n// Unpack a pair of paint values and interpolate between them.\nfloat unpack_mix_vec2(const vec2 packedValue, const float t) {\n return mix(packedValue[0], packedValue[1], t);\n}\n\n// Unpack a pair of paint values and interpolate between them.\nvec4 unpack_mix_vec4(const vec4 packedColors, const float t) {\n vec4 minColor = decode_color(vec2(packedColors[0], packedColors[1]));\n vec4 maxColor = decode_color(vec2(packedColors[2], packedColors[3]));\n return mix(minColor, maxColor, t);\n}\n\n// The offset depends on how many pixels are between the world origin and the edge of the tile:\n// vec2 offset = mod(pixel_coord, size)\n//\n// At high zoom levels there are a ton of pixels between the world origin and the edge of the tile.\n// The glsl spec only guarantees 16 bits of precision for highp floats. We need more than that.\n//\n// The pixel_coord is passed in as two 16 bit values:\n// pixel_coord_upper = floor(pixel_coord / 2^16)\n// pixel_coord_lower = mod(pixel_coord, 2^16)\n//\n// The offset is calculated in a series of steps that should preserve this precision:\nvec2 get_pattern_pos(const vec2 pixel_coord_upper, const vec2 pixel_coord_lower,\n const vec2 pattern_size, const float tile_units_to_pixels, const vec2 pos) {\n\n vec2 offset = mod(mod(mod(pixel_coord_upper, pattern_size) * 256.0, pattern_size) * 256.0 + pixel_coord_lower, pattern_size);\n return (tile_units_to_pixels * pos + offset) / pattern_size;\n}\n"},circle:{fragmentSource:"#pragma mapbox: define lowp 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 lowp vec4 stroke_color\n#pragma mapbox: define mediump float stroke_width\n#pragma mapbox: define lowp float stroke_opacity\n\nvarying vec2 v_extrude;\nvarying lowp float v_antialiasblur;\n\nvoid main() {\n #pragma mapbox: initialize lowp 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 lowp vec4 stroke_color\n #pragma mapbox: initialize mediump float stroke_width\n #pragma mapbox: initialize lowp float stroke_opacity\n\n float extrude_length = length(v_extrude);\n float antialiased_blur = -max(blur, v_antialiasblur);\n\n float opacity_t = smoothstep(0.0, antialiased_blur, extrude_length - 1.0);\n\n float color_t = stroke_width < 0.01 ? 0.0 : smoothstep(\n antialiased_blur,\n 0.0,\n extrude_length - radius / (radius + stroke_width)\n );\n\n gl_FragColor = opacity_t * mix(color * opacity, stroke_color * stroke_opacity, color_t);\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform bool u_scale_with_map;\nuniform vec2 u_extrude_scale;\n\nattribute vec2 a_pos;\n\n#pragma mapbox: define lowp 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 lowp vec4 stroke_color\n#pragma mapbox: define mediump float stroke_width\n#pragma mapbox: define lowp float stroke_opacity\n\nvarying vec2 v_extrude;\nvarying lowp float v_antialiasblur;\n\nvoid main(void) {\n #pragma mapbox: initialize lowp 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 lowp vec4 stroke_color\n #pragma mapbox: initialize mediump float stroke_width\n #pragma mapbox: initialize lowp float stroke_opacity\n\n // unencode the extrusion vector that we snuck into the a_pos vector\n v_extrude = vec2(mod(a_pos, 2.0) * 2.0 - 1.0);\n\n vec2 extrude = v_extrude * (radius + stroke_width) * u_extrude_scale;\n // multiply a_pos by 0.5, since we had it * 2 in order to sneak\n // in extrusion data\n gl_Position = u_matrix * vec4(floor(a_pos * 0.5), 0, 1);\n\n if (u_scale_with_map) {\n gl_Position.xy += extrude;\n } else {\n gl_Position.xy += extrude * gl_Position.w;\n }\n\n // This is a minimum blur distance that serves as a faux-antialiasing for\n // the circle. since blur is a ratio of the circle's size and the intent is\n // to keep the blur at roughly 1px, the two are inversely related.\n v_antialiasblur = 1.0 / DEVICE_PIXEL_RATIO / (radius + stroke_width);\n}\n"},collisionBox:{fragmentSource:"uniform float u_zoom;\nuniform float u_maxzoom;\n\nvarying float v_max_zoom;\nvarying float v_placement_zoom;\n\nvoid main() {\n\n float alpha = 0.5;\n\n gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0) * alpha;\n\n if (v_placement_zoom > u_zoom) {\n gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0) * alpha;\n }\n\n if (u_zoom >= v_max_zoom) {\n gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0) * alpha * 0.25;\n }\n\n if (v_placement_zoom >= u_maxzoom) {\n gl_FragColor = vec4(0.0, 0.0, 1.0, 1.0) * alpha * 0.2;\n }\n}\n",vertexSource:"attribute vec2 a_pos;\nattribute vec2 a_extrude;\nattribute vec2 a_data;\n\nuniform mat4 u_matrix;\nuniform float u_scale;\n\nvarying float v_max_zoom;\nvarying float v_placement_zoom;\n\nvoid main() {\n gl_Position = u_matrix * vec4(a_pos + a_extrude / u_scale, 0.0, 1.0);\n\n v_max_zoom = a_data.x;\n v_placement_zoom = a_data.y;\n}\n"},debug:{fragmentSource:"uniform lowp vec4 u_color;\n\nvoid main() {\n gl_FragColor = u_color;\n}\n",vertexSource:"attribute vec2 a_pos;\n\nuniform mat4 u_matrix;\n\nvoid main() {\n gl_Position = u_matrix * vec4(a_pos, step(32767.0, a_pos.x), 1);\n}\n"},fill:{fragmentSource:"#pragma mapbox: define lowp vec4 color\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp vec4 color\n #pragma mapbox: initialize lowp float opacity\n\n gl_FragColor = color * opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"attribute vec2 a_pos;\n\nuniform mat4 u_matrix;\n\n#pragma mapbox: define lowp vec4 color\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp vec4 color\n #pragma mapbox: initialize lowp float opacity\n\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\n}\n"},fillOutline:{fragmentSource:"#pragma mapbox: define lowp vec4 outline_color\n#pragma mapbox: define lowp float opacity\n\nvarying vec2 v_pos;\n\nvoid main() {\n #pragma mapbox: initialize lowp vec4 outline_color\n #pragma mapbox: initialize lowp float opacity\n\n float dist = length(v_pos - gl_FragCoord.xy);\n float alpha = smoothstep(1.0, 0.0, dist);\n gl_FragColor = outline_color * (alpha * opacity);\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"attribute vec2 a_pos;\n\nuniform mat4 u_matrix;\nuniform vec2 u_world;\n\nvarying vec2 v_pos;\n\n#pragma mapbox: define lowp vec4 outline_color\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp vec4 outline_color\n #pragma mapbox: initialize lowp float opacity\n\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\n v_pos = (gl_Position.xy / gl_Position.w + 1.0) / 2.0 * u_world;\n}\n"},fillOutlinePattern:{fragmentSource:"uniform vec2 u_pattern_tl_a;\nuniform vec2 u_pattern_br_a;\nuniform vec2 u_pattern_tl_b;\nuniform vec2 u_pattern_br_b;\nuniform float u_mix;\n\nuniform sampler2D u_image;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\nvarying vec2 v_pos;\n\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp float opacity\n\n vec2 imagecoord = mod(v_pos_a, 1.0);\n vec2 pos = mix(u_pattern_tl_a, u_pattern_br_a, imagecoord);\n vec4 color1 = texture2D(u_image, pos);\n\n vec2 imagecoord_b = mod(v_pos_b, 1.0);\n vec2 pos2 = mix(u_pattern_tl_b, u_pattern_br_b, imagecoord_b);\n vec4 color2 = texture2D(u_image, pos2);\n\n // find distance to outline for alpha interpolation\n\n float dist = length(v_pos - gl_FragCoord.xy);\n float alpha = smoothstep(1.0, 0.0, dist);\n\n\n gl_FragColor = mix(color1, color2, u_mix) * alpha * opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec2 u_world;\nuniform vec2 u_pattern_size_a;\nuniform vec2 u_pattern_size_b;\nuniform vec2 u_pixel_coord_upper;\nuniform vec2 u_pixel_coord_lower;\nuniform float u_scale_a;\nuniform float u_scale_b;\nuniform float u_tile_units_to_pixels;\n\nattribute vec2 a_pos;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\nvarying vec2 v_pos;\n\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp float opacity\n\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\n\n 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);\n 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);\n\n v_pos = (gl_Position.xy / gl_Position.w + 1.0) / 2.0 * u_world;\n}\n"},fillPattern:{fragmentSource:"uniform vec2 u_pattern_tl_a;\nuniform vec2 u_pattern_br_a;\nuniform vec2 u_pattern_tl_b;\nuniform vec2 u_pattern_br_b;\nuniform float u_mix;\n\nuniform sampler2D u_image;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\n\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp float opacity\n\n vec2 imagecoord = mod(v_pos_a, 1.0);\n vec2 pos = mix(u_pattern_tl_a, u_pattern_br_a, imagecoord);\n vec4 color1 = texture2D(u_image, pos);\n\n vec2 imagecoord_b = mod(v_pos_b, 1.0);\n vec2 pos2 = mix(u_pattern_tl_b, u_pattern_br_b, imagecoord_b);\n vec4 color2 = texture2D(u_image, pos2);\n\n gl_FragColor = mix(color1, color2, u_mix) * opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec2 u_pattern_size_a;\nuniform vec2 u_pattern_size_b;\nuniform vec2 u_pixel_coord_upper;\nuniform vec2 u_pixel_coord_lower;\nuniform float u_scale_a;\nuniform float u_scale_b;\nuniform float u_tile_units_to_pixels;\n\nattribute vec2 a_pos;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\n\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp float opacity\n\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\n\n 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);\n 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);\n}\n"},fillExtrusion:{fragmentSource:"varying vec4 v_color;\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n#pragma mapbox: define lowp vec4 color\n\nvoid main() {\n #pragma mapbox: initialize lowp float base\n #pragma mapbox: initialize lowp float height\n #pragma mapbox: initialize lowp vec4 color\n\n gl_FragColor = v_color;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec3 u_lightcolor;\nuniform lowp vec3 u_lightpos;\nuniform lowp float u_lightintensity;\n\nattribute vec2 a_pos;\nattribute vec3 a_normal;\nattribute float a_edgedistance;\n\nvarying vec4 v_color;\n\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n\n#pragma mapbox: define lowp vec4 color\n\nvoid main() {\n #pragma mapbox: initialize lowp float base\n #pragma mapbox: initialize lowp float height\n #pragma mapbox: initialize lowp vec4 color\n\n float ed = a_edgedistance; // use each attrib in order to not trip a VAO assert\n float t = mod(a_normal.x, 2.0);\n\n gl_Position = u_matrix * vec4(a_pos, t > 0.0 ? height : base, 1);\n\n // Relative luminance (how dark/bright is the surface color?)\n float colorvalue = color.r * 0.2126 + color.g * 0.7152 + color.b * 0.0722;\n\n v_color = vec4(0.0, 0.0, 0.0, 1.0);\n\n // Add slight ambient lighting so no extrusions are totally black\n vec4 ambientlight = vec4(0.03, 0.03, 0.03, 1.0);\n color += ambientlight;\n\n // Calculate cos(theta), where theta is the angle between surface normal and diffuse light ray\n float directional = clamp(dot(a_normal / 16384.0, u_lightpos), 0.0, 1.0);\n\n // Adjust directional so that\n // the range of values for highlight/shading is narrower\n // with lower light intensity\n // and with lighter/brighter surface colors\n directional = mix((1.0 - u_lightintensity), max((1.0 - colorvalue + u_lightintensity), 1.0), directional);\n\n // Add gradient along z axis of side surfaces\n if (a_normal.y != 0.0) {\n directional *= clamp((t + base) * pow(height / 150.0, 0.5), mix(0.7, 0.98, 1.0 - u_lightintensity), 1.0);\n }\n\n // Assign final color based on surface + ambient light color, diffuse light directional, and light color\n // with lower bounds adjusted to hue of light\n // so that shading is tinted with the complementary (opposite) color to the light color\n v_color.r += clamp(color.r * directional * u_lightcolor.r, mix(0.0, 0.3, 1.0 - u_lightcolor.r), 1.0);\n v_color.g += clamp(color.g * directional * u_lightcolor.g, mix(0.0, 0.3, 1.0 - u_lightcolor.g), 1.0);\n v_color.b += clamp(color.b * directional * u_lightcolor.b, mix(0.0, 0.3, 1.0 - u_lightcolor.b), 1.0);\n}\n"},fillExtrusionPattern:{fragmentSource:"uniform vec2 u_pattern_tl_a;\nuniform vec2 u_pattern_br_a;\nuniform vec2 u_pattern_tl_b;\nuniform vec2 u_pattern_br_b;\nuniform float u_mix;\n\nuniform sampler2D u_image;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\nvarying vec4 v_lighting;\n\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n\nvoid main() {\n #pragma mapbox: initialize lowp float base\n #pragma mapbox: initialize lowp float height\n\n vec2 imagecoord = mod(v_pos_a, 1.0);\n vec2 pos = mix(u_pattern_tl_a, u_pattern_br_a, imagecoord);\n vec4 color1 = texture2D(u_image, pos);\n\n vec2 imagecoord_b = mod(v_pos_b, 1.0);\n vec2 pos2 = mix(u_pattern_tl_b, u_pattern_br_b, imagecoord_b);\n vec4 color2 = texture2D(u_image, pos2);\n\n vec4 mixedColor = mix(color1, color2, u_mix);\n\n gl_FragColor = mixedColor * v_lighting;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec2 u_pattern_size_a;\nuniform vec2 u_pattern_size_b;\nuniform vec2 u_pixel_coord_upper;\nuniform vec2 u_pixel_coord_lower;\nuniform float u_scale_a;\nuniform float u_scale_b;\nuniform float u_tile_units_to_pixels;\nuniform float u_height_factor;\n\nuniform vec3 u_lightcolor;\nuniform lowp vec3 u_lightpos;\nuniform lowp float u_lightintensity;\n\nattribute vec2 a_pos;\nattribute vec3 a_normal;\nattribute float a_edgedistance;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\nvarying vec4 v_lighting;\nvarying float v_directional;\n\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n\nvoid main() {\n #pragma mapbox: initialize lowp float base\n #pragma mapbox: initialize lowp float height\n\n float t = mod(a_normal.x, 2.0);\n float z = t > 0.0 ? height : base;\n\n gl_Position = u_matrix * vec4(a_pos, z, 1);\n\n vec2 pos = a_normal.x == 1.0 && a_normal.y == 0.0 && a_normal.z == 16384.0\n ? a_pos // extrusion top\n : vec2(a_edgedistance, z * u_height_factor); // extrusion side\n\n 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, pos);\n 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, pos);\n\n v_lighting = vec4(0.0, 0.0, 0.0, 1.0);\n float directional = clamp(dot(a_normal / 16383.0, u_lightpos), 0.0, 1.0);\n directional = mix((1.0 - u_lightintensity), max((0.5 + u_lightintensity), 1.0), directional);\n\n if (a_normal.y != 0.0) {\n directional *= clamp((t + base) * pow(height / 150.0, 0.5), mix(0.7, 0.98, 1.0 - u_lightintensity), 1.0);\n }\n\n v_lighting.rgb += clamp(directional * u_lightcolor, mix(vec3(0.0), vec3(0.3), 1.0 - u_lightcolor), vec3(1.0));\n}\n"},extrusionTexture:{fragmentSource:"uniform sampler2D u_texture;\nuniform float u_opacity;\n\nvarying vec2 v_pos;\n\nvoid main() {\n gl_FragColor = texture2D(u_texture, v_pos) * u_opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(0.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform int u_xdim;\nuniform int u_ydim;\nattribute vec2 a_pos;\nvarying vec2 v_pos;\n\nvoid main() {\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\n\n v_pos.x = a_pos.x / float(u_xdim);\n v_pos.y = 1.0 - a_pos.y / float(u_ydim);\n}\n"},line:{fragmentSource:"#pragma mapbox: define lowp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n\nvarying vec2 v_width2;\nvarying vec2 v_normal;\nvarying float v_gamma_scale;\n\nvoid main() {\n #pragma mapbox: initialize lowp vec4 color\n #pragma mapbox: initialize lowp float blur\n #pragma mapbox: initialize lowp float opacity\n\n // Calculate the distance of the pixel from the line in pixels.\n float dist = length(v_normal) * v_width2.s;\n\n // Calculate the antialiasing fade factor. This is either when fading in\n // the line in case of an offset line (v_width2.t) or when fading out\n // (v_width2.s)\n float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\n float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\n\n gl_FragColor = color * (alpha * opacity);\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"\n\n// the distance over which the line edge fades out.\n// Retina devices need a smaller distance to avoid aliasing.\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\n\n// floor(127 / 2) == 63.0\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\n// there are also \"special\" normals that have a bigger length (of up to 126 in\n// this case).\n// #define scale 63.0\n#define scale 0.015873016\n\nattribute vec2 a_pos;\nattribute vec4 a_data;\n\nuniform mat4 u_matrix;\nuniform mediump float u_ratio;\nuniform mediump float u_width;\nuniform vec2 u_gl_units_to_pixels;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying float v_gamma_scale;\n\n#pragma mapbox: define lowp 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\nvoid main() {\n #pragma mapbox: initialize lowp 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\n vec2 a_extrude = a_data.xy - 128.0;\n float a_direction = mod(a_data.z, 4.0) - 1.0;\n\n // We store the texture normals in the most insignificant bit\n // transform y so that 0 => -1 and 1 => 1\n // In the texture normal, x is 0 if the normal points straight up/down and 1 if it's a round cap\n // y is 1 if the normal points up, and -1 if it points down\n mediump vec2 normal = mod(a_pos, 2.0);\n normal.y = sign(normal.y - 0.5);\n v_normal = normal;\n\n\n // these transformations used to be applied in the JS and native code bases. \n // moved them into the shader for clarity and simplicity. \n gapwidth = gapwidth / 2.0;\n float width = u_width / 2.0;\n offset = -1.0 * offset; \n\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\n float outset = gapwidth + width * (gapwidth > 0.0 ? 2.0 : 1.0) + ANTIALIASING;\n\n // Scale the extrusion vector down to a normal and then up by the line width\n // of this vertex.\n mediump vec2 dist = outset * a_extrude * scale;\n\n // Calculate the offset when drawing a line that is to the side of the actual line.\n // We do this by creating a vector that points towards the extrude, but rotate\n // it when we're drawing round end points (a_direction = -1 or 1) since their\n // extrude vector points in another direction.\n mediump float u = 0.5 * a_direction;\n mediump float t = 1.0 - abs(u);\n mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\n\n // Remove the texture normal bit to get the position\n vec2 pos = floor(a_pos * 0.5);\n\n vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\n gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\n\n // calculate how much the perspective view squishes or stretches the extrude\n float extrude_length_without_perspective = length(dist);\n float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\n v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\n\n v_width2 = vec2(outset, inset);\n}\n"},linePattern:{fragmentSource:"uniform vec2 u_pattern_size_a;\nuniform vec2 u_pattern_size_b;\nuniform vec2 u_pattern_tl_a;\nuniform vec2 u_pattern_br_a;\nuniform vec2 u_pattern_tl_b;\nuniform vec2 u_pattern_br_b;\nuniform float u_fade;\n\nuniform sampler2D u_image;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying float v_linesofar;\nvarying float v_gamma_scale;\n\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp float blur\n #pragma mapbox: initialize lowp float opacity\n\n // Calculate the distance of the pixel from the line in pixels.\n float dist = length(v_normal) * v_width2.s;\n\n // Calculate the antialiasing fade factor. This is either when fading in\n // the line in case of an offset line (v_width2.t) or when fading out\n // (v_width2.s)\n float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\n float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\n\n float x_a = mod(v_linesofar / u_pattern_size_a.x, 1.0);\n float x_b = mod(v_linesofar / u_pattern_size_b.x, 1.0);\n float y_a = 0.5 + (v_normal.y * v_width2.s / u_pattern_size_a.y);\n float y_b = 0.5 + (v_normal.y * v_width2.s / u_pattern_size_b.y);\n vec2 pos_a = mix(u_pattern_tl_a, u_pattern_br_a, vec2(x_a, y_a));\n vec2 pos_b = mix(u_pattern_tl_b, u_pattern_br_b, vec2(x_b, y_b));\n\n vec4 color = mix(texture2D(u_image, pos_a), texture2D(u_image, pos_b), u_fade);\n\n gl_FragColor = color * alpha * opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"// floor(127 / 2) == 63.0\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\n// there are also \"special\" normals that have a bigger length (of up to 126 in\n// this case).\n// #define scale 63.0\n#define scale 0.015873016\n\n// We scale the distance before adding it to the buffers so that we can store\n// long distances for long segments. Use this value to unscale the distance.\n#define LINE_DISTANCE_SCALE 2.0\n\n// the distance over which the line edge fades out.\n// Retina devices need a smaller distance to avoid aliasing.\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\n\nattribute vec2 a_pos;\nattribute vec4 a_data;\n\nuniform mat4 u_matrix;\nuniform mediump float u_ratio;\nuniform mediump float u_width;\nuniform vec2 u_gl_units_to_pixels;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying float v_linesofar;\nvarying float v_gamma_scale;\n\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\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\n vec2 a_extrude = a_data.xy - 128.0;\n float a_direction = mod(a_data.z, 4.0) - 1.0;\n float a_linesofar = (floor(a_data.z / 4.0) + a_data.w * 64.0) * LINE_DISTANCE_SCALE;\n\n // We store the texture normals in the most insignificant bit\n // transform y so that 0 => -1 and 1 => 1\n // In the texture normal, x is 0 if the normal points straight up/down and 1 if it's a round cap\n // y is 1 if the normal points up, and -1 if it points down\n mediump vec2 normal = mod(a_pos, 2.0);\n normal.y = sign(normal.y - 0.5);\n v_normal = normal;\n\n // these transformations used to be applied in the JS and native code bases. \n // moved them into the shader for clarity and simplicity. \n gapwidth = gapwidth / 2.0;\n float width = u_width / 2.0;\n offset = -1.0 * offset; \n\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\n float outset = gapwidth + width * (gapwidth > 0.0 ? 2.0 : 1.0) + ANTIALIASING;\n\n // Scale the extrusion vector down to a normal and then up by the line width\n // of this vertex.\n mediump vec2 dist = outset * a_extrude * scale;\n\n // Calculate the offset when drawing a line that is to the side of the actual line.\n // We do this by creating a vector that points towards the extrude, but rotate\n // it when we're drawing round end points (a_direction = -1 or 1) since their\n // extrude vector points in another direction.\n mediump float u = 0.5 * a_direction;\n mediump float t = 1.0 - abs(u);\n mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\n\n // Remove the texture normal bit to get the position\n vec2 pos = floor(a_pos * 0.5);\n\n vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\n gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\n\n // calculate how much the perspective view squishes or stretches the extrude\n float extrude_length_without_perspective = length(dist);\n float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\n v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\n\n v_linesofar = a_linesofar;\n v_width2 = vec2(outset, inset);\n}\n"},lineSDF:{fragmentSource:"\nuniform sampler2D u_image;\nuniform float u_sdfgamma;\nuniform float u_mix;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying vec2 v_tex_a;\nvarying vec2 v_tex_b;\nvarying float v_gamma_scale;\n\n#pragma mapbox: define lowp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp vec4 color\n #pragma mapbox: initialize lowp float blur\n #pragma mapbox: initialize lowp float opacity\n\n // Calculate the distance of the pixel from the line in pixels.\n float dist = length(v_normal) * v_width2.s;\n\n // Calculate the antialiasing fade factor. This is either when fading in\n // the line in case of an offset line (v_width2.t) or when fading out\n // (v_width2.s)\n float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\n float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\n\n float sdfdist_a = texture2D(u_image, v_tex_a).a;\n float sdfdist_b = texture2D(u_image, v_tex_b).a;\n float sdfdist = mix(sdfdist_a, sdfdist_b, u_mix);\n alpha *= smoothstep(0.5 - u_sdfgamma, 0.5 + u_sdfgamma, sdfdist);\n\n gl_FragColor = color * (alpha * opacity);\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"// floor(127 / 2) == 63.0\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\n// there are also \"special\" normals that have a bigger length (of up to 126 in\n// this case).\n// #define scale 63.0\n#define scale 0.015873016\n\n// We scale the distance before adding it to the buffers so that we can store\n// long distances for long segments. Use this value to unscale the distance.\n#define LINE_DISTANCE_SCALE 2.0\n\n// the distance over which the line edge fades out.\n// Retina devices need a smaller distance to avoid aliasing.\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\n\nattribute vec2 a_pos;\nattribute vec4 a_data;\n\nuniform mat4 u_matrix;\nuniform mediump float u_ratio;\nuniform vec2 u_patternscale_a;\nuniform float u_tex_y_a;\nuniform vec2 u_patternscale_b;\nuniform float u_tex_y_b;\nuniform vec2 u_gl_units_to_pixels;\nuniform mediump float u_width;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying vec2 v_tex_a;\nvarying vec2 v_tex_b;\nvarying float v_gamma_scale;\n\n#pragma mapbox: define lowp 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\nvoid main() {\n #pragma mapbox: initialize lowp 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\n vec2 a_extrude = a_data.xy - 128.0;\n float a_direction = mod(a_data.z, 4.0) - 1.0;\n float a_linesofar = (floor(a_data.z / 4.0) + a_data.w * 64.0) * LINE_DISTANCE_SCALE;\n\n // We store the texture normals in the most insignificant bit\n // transform y so that 0 => -1 and 1 => 1\n // In the texture normal, x is 0 if the normal points straight up/down and 1 if it's a round cap\n // y is 1 if the normal points up, and -1 if it points down\n mediump vec2 normal = mod(a_pos, 2.0);\n normal.y = sign(normal.y - 0.5);\n v_normal = normal;\n\n // these transformations used to be applied in the JS and native code bases. \n // moved them into the shader for clarity and simplicity. \n gapwidth = gapwidth / 2.0;\n float width = u_width / 2.0;\n offset = -1.0 * offset;\n \n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\n float outset = gapwidth + width * (gapwidth > 0.0 ? 2.0 : 1.0) + ANTIALIASING;\n\n // Scale the extrusion vector down to a normal and then up by the line width\n // of this vertex.\n mediump vec2 dist =outset * a_extrude * scale;\n\n // Calculate the offset when drawing a line that is to the side of the actual line.\n // We do this by creating a vector that points towards the extrude, but rotate\n // it when we're drawing round end points (a_direction = -1 or 1) since their\n // extrude vector points in another direction.\n mediump float u = 0.5 * a_direction;\n mediump float t = 1.0 - abs(u);\n mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\n\n // Remove the texture normal bit to get the position\n vec2 pos = floor(a_pos * 0.5);\n\n vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\n gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\n\n // calculate how much the perspective view squishes or stretches the extrude\n float extrude_length_without_perspective = length(dist);\n float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\n v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\n\n v_tex_a = vec2(a_linesofar * u_patternscale_a.x, normal.y * u_patternscale_a.y + u_tex_y_a);\n v_tex_b = vec2(a_linesofar * u_patternscale_b.x, normal.y * u_patternscale_b.y + u_tex_y_b);\n\n v_width2 = vec2(outset, inset);\n}\n" -},raster:{fragmentSource:"uniform float u_fade_t;\nuniform float u_opacity;\nuniform sampler2D u_image0;\nuniform sampler2D u_image1;\nvarying vec2 v_pos0;\nvarying vec2 v_pos1;\n\nuniform float u_brightness_low;\nuniform float u_brightness_high;\n\nuniform float u_saturation_factor;\nuniform float u_contrast_factor;\nuniform vec3 u_spin_weights;\n\nvoid main() {\n\n // read and cross-fade colors from the main and parent tiles\n vec4 color0 = texture2D(u_image0, v_pos0);\n vec4 color1 = texture2D(u_image1, v_pos1);\n vec4 color = mix(color0, color1, u_fade_t);\n color.a *= u_opacity;\n vec3 rgb = color.rgb;\n\n // spin\n rgb = vec3(\n dot(rgb, u_spin_weights.xyz),\n dot(rgb, u_spin_weights.zxy),\n dot(rgb, u_spin_weights.yzx));\n\n // saturation\n float average = (color.r + color.g + color.b) / 3.0;\n rgb += (average - rgb) * u_saturation_factor;\n\n // contrast\n rgb = (rgb - 0.5) * u_contrast_factor + 0.5;\n\n // brightness\n vec3 u_high_vec = vec3(u_brightness_low, u_brightness_low, u_brightness_low);\n vec3 u_low_vec = vec3(u_brightness_high, u_brightness_high, u_brightness_high);\n\n gl_FragColor = vec4(mix(u_high_vec, u_low_vec, rgb) * color.a, color.a);\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec2 u_tl_parent;\nuniform float u_scale_parent;\nuniform float u_buffer_scale;\n\nattribute vec2 a_pos;\nattribute vec2 a_texture_pos;\n\nvarying vec2 v_pos0;\nvarying vec2 v_pos1;\n\nvoid main() {\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\n v_pos0 = (((a_texture_pos / 32767.0) - 0.5) / u_buffer_scale ) + 0.5;\n v_pos1 = (v_pos0 * u_scale_parent) + u_tl_parent;\n}\n"},symbolIcon:{fragmentSource:"uniform sampler2D u_texture;\nuniform sampler2D u_fadetexture;\n\n#pragma mapbox: define lowp float opacity\n\nvarying vec2 v_tex;\nvarying vec2 v_fade_tex;\n\nvoid main() {\n #pragma mapbox: initialize lowp float opacity\n\n lowp float alpha = texture2D(u_fadetexture, v_fade_tex).a * opacity;\n gl_FragColor = texture2D(u_texture, v_tex) * alpha;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"\nattribute vec4 a_pos_offset;\nattribute vec2 a_texture_pos;\nattribute vec4 a_data;\n\n#pragma mapbox: define lowp float opacity\n\n// matrix is for the vertex position.\nuniform mat4 u_matrix;\n\nuniform mediump float u_zoom;\nuniform bool u_rotate_with_map;\nuniform vec2 u_extrude_scale;\n\nuniform vec2 u_texsize;\n\nvarying vec2 v_tex;\nvarying vec2 v_fade_tex;\n\nvoid main() {\n #pragma mapbox: initialize lowp float opacity\n\n vec2 a_pos = a_pos_offset.xy;\n vec2 a_offset = a_pos_offset.zw;\n\n vec2 a_tex = a_texture_pos.xy;\n mediump float a_labelminzoom = a_data[0];\n mediump vec2 a_zoom = a_data.pq;\n mediump float a_minzoom = a_zoom[0];\n mediump float a_maxzoom = a_zoom[1];\n\n // u_zoom is the current zoom level adjusted for the change in font size\n mediump float z = 2.0 - step(a_minzoom, u_zoom) - (1.0 - step(a_maxzoom, u_zoom));\n\n vec2 extrude = u_extrude_scale * (a_offset / 64.0);\n if (u_rotate_with_map) {\n gl_Position = u_matrix * vec4(a_pos + extrude, 0, 1);\n gl_Position.z += z * gl_Position.w;\n } else {\n gl_Position = u_matrix * vec4(a_pos, 0, 1) + vec4(extrude, 0, 0);\n }\n\n v_tex = a_tex / u_texsize;\n v_fade_tex = vec2(a_labelminzoom / 255.0, 0.0);\n}\n"},symbolSDF:{fragmentSource:"#define SDF_PX 8.0\n#define EDGE_GAMMA 0.105/DEVICE_PIXEL_RATIO\n\nuniform bool u_is_halo;\n#pragma mapbox: define lowp vec4 fill_color\n#pragma mapbox: define lowp 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\n\nuniform sampler2D u_texture;\nuniform sampler2D u_fadetexture;\nuniform lowp float u_font_scale;\nuniform highp float u_gamma_scale;\n\nvarying vec2 v_tex;\nvarying vec2 v_fade_tex;\nvarying float v_gamma_scale;\n\nvoid main() {\n #pragma mapbox: initialize lowp vec4 fill_color\n #pragma mapbox: initialize lowp 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\n\n lowp vec4 color = fill_color;\n highp float gamma = EDGE_GAMMA / u_gamma_scale;\n lowp float buff = (256.0 - 64.0) / 256.0;\n if (u_is_halo) {\n color = halo_color;\n gamma = (halo_blur * 1.19 / SDF_PX + EDGE_GAMMA) / u_gamma_scale;\n buff = (6.0 - halo_width / u_font_scale) / SDF_PX;\n }\n\n lowp float dist = texture2D(u_texture, v_tex).a;\n lowp float fade_alpha = texture2D(u_fadetexture, v_fade_tex).a;\n highp float gamma_scaled = gamma * v_gamma_scale;\n highp float alpha = smoothstep(buff - gamma_scaled, buff + gamma_scaled, dist) * fade_alpha;\n\n gl_FragColor = color * (alpha * opacity);\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"const float PI = 3.141592653589793;\n\nattribute vec4 a_pos_offset;\nattribute vec2 a_texture_pos;\nattribute vec4 a_data;\n\n#pragma mapbox: define lowp vec4 fill_color\n#pragma mapbox: define lowp 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\n\n// matrix is for the vertex position.\nuniform mat4 u_matrix;\n\nuniform mediump float u_zoom;\nuniform bool u_rotate_with_map;\nuniform bool u_pitch_with_map;\nuniform mediump float u_pitch;\nuniform mediump float u_bearing;\nuniform mediump float u_aspect_ratio;\nuniform vec2 u_extrude_scale;\n\nuniform vec2 u_texsize;\n\nvarying vec2 v_tex;\nvarying vec2 v_fade_tex;\nvarying float v_gamma_scale;\n\nvoid main() {\n #pragma mapbox: initialize lowp vec4 fill_color\n #pragma mapbox: initialize lowp 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\n\n vec2 a_pos = a_pos_offset.xy;\n vec2 a_offset = a_pos_offset.zw;\n\n vec2 a_tex = a_texture_pos.xy;\n mediump float a_labelminzoom = a_data[0];\n mediump vec2 a_zoom = a_data.pq;\n mediump float a_minzoom = a_zoom[0];\n mediump float a_maxzoom = a_zoom[1];\n\n // u_zoom is the current zoom level adjusted for the change in font size\n mediump float z = 2.0 - step(a_minzoom, u_zoom) - (1.0 - step(a_maxzoom, u_zoom));\n\n // pitch-alignment: map\n // rotation-alignment: map | viewport\n if (u_pitch_with_map) {\n lowp float angle = u_rotate_with_map ? (a_data[1] / 256.0 * 2.0 * PI) : u_bearing;\n lowp float asin = sin(angle);\n lowp float acos = cos(angle);\n mat2 RotationMatrix = mat2(acos, asin, -1.0 * asin, acos);\n vec2 offset = RotationMatrix * a_offset;\n vec2 extrude = u_extrude_scale * (offset / 64.0);\n gl_Position = u_matrix * vec4(a_pos + extrude, 0, 1);\n gl_Position.z += z * gl_Position.w;\n // pitch-alignment: viewport\n // rotation-alignment: map\n } else if (u_rotate_with_map) {\n // foreshortening factor to apply on pitched maps\n // as a label goes from horizontal <=> vertical in angle\n // it goes from 0% foreshortening to up to around 70% foreshortening\n lowp float pitchfactor = 1.0 - cos(u_pitch * sin(u_pitch * 0.75));\n\n lowp float lineangle = a_data[1] / 256.0 * 2.0 * PI;\n\n // use the lineangle to position points a,b along the line\n // project the points and calculate the label angle in projected space\n // this calculation allows labels to be rendered unskewed on pitched maps\n vec4 a = u_matrix * vec4(a_pos, 0, 1);\n vec4 b = u_matrix * vec4(a_pos + vec2(cos(lineangle),sin(lineangle)), 0, 1);\n lowp float angle = atan((b[1]/b[3] - a[1]/a[3])/u_aspect_ratio, b[0]/b[3] - a[0]/a[3]);\n lowp float asin = sin(angle);\n lowp float acos = cos(angle);\n mat2 RotationMatrix = mat2(acos, -1.0 * asin, asin, acos);\n\n vec2 offset = RotationMatrix * (vec2((1.0-pitchfactor)+(pitchfactor*cos(angle*2.0)), 1.0) * a_offset);\n vec2 extrude = u_extrude_scale * (offset / 64.0);\n gl_Position = u_matrix * vec4(a_pos, 0, 1) + vec4(extrude, 0, 0);\n gl_Position.z += z * gl_Position.w;\n // pitch-alignment: viewport\n // rotation-alignment: viewport\n } else {\n vec2 extrude = u_extrude_scale * (a_offset / 64.0);\n gl_Position = u_matrix * vec4(a_pos, 0, 1) + vec4(extrude, 0, 0);\n }\n\n v_gamma_scale = gl_Position.w;\n\n v_tex = a_tex / u_texsize;\n v_fade_tex = vec2(a_labelminzoom / 255.0, 0.0);\n}\n"}}; -},{"path":23}],80:[function(require,module,exports){ -"use strict";var VertexArrayObject=function(){this.boundProgram=null,this.boundVertexBuffer=null,this.boundVertexBuffer2=null,this.boundElementBuffer=null,this.boundVertexOffset=null,this.vao=null};VertexArrayObject.prototype.bind=function(e,t,r,i,n,o){void 0===e.extVertexArrayObject&&(e.extVertexArrayObject=e.getExtension("OES_vertex_array_object"));var s=!this.vao||this.boundProgram!==t||this.boundVertexBuffer!==r||this.boundVertexBuffer2!==n||this.boundElementBuffer!==i||this.boundVertexOffset!==o;!e.extVertexArrayObject||s?(this.freshBind(e,t,r,i,n,o),this.gl=e):e.extVertexArrayObject.bindVertexArrayOES(this.vao)},VertexArrayObject.prototype.freshBind=function(e,t,r,i,n,o){var s,u=t.numAttributes;if(e.extVertexArrayObject)this.vao&&this.destroy(),this.vao=e.extVertexArrayObject.createVertexArrayOES(),e.extVertexArrayObject.bindVertexArrayOES(this.vao),s=0,this.boundProgram=t,this.boundVertexBuffer=r,this.boundVertexBuffer2=n,this.boundElementBuffer=i,this.boundVertexOffset=o;else{s=e.currentNumAttributes||0;for(var b=u;bthis.maxzoom?Math.pow(2,t.coord.z-this.maxzoom):1,r={type:this.type,uid:t.uid,coord:t.coord,zoom:t.coord.z,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,overscaling:i,angle:this.map.transform.angle,pitch:this.map.transform.pitch,showCollisionBoxes:this.map.showCollisionBoxes};t.workerID=this.dispatcher.send("loadTile",r,function(i,r){if(t.unloadVectorData(),!t.aborted)return i?e(i):(t.loadVectorData(r,o.map.painter),t.redoWhenDone&&(t.redoWhenDone=!1,t.redoPlacement(o)),e(null))},this.workerID)},e.prototype.abortTile=function(t){t.aborted=!0},e.prototype.unloadTile=function(t){t.unloadVectorData(),this.dispatcher.send("removeTile",{uid:t.uid,type:this.type,source:this.id},function(){},t.workerID)},e.prototype.onRemove=function(){this.dispatcher.broadcast("removeSource",{type:this.type,source:this.id},function(){})},e.prototype.serialize=function(){return{type:this.type,data:this._data}},e}(Evented);module.exports=GeoJSONSource; -},{"../data/extent":54,"../util/evented":200,"../util/util":212,"../util/window":194}],83:[function(require,module,exports){ -"use strict";var ajax=require("../util/ajax"),rewind=require("geojson-rewind"),GeoJSONWrapper=require("./geojson_wrapper"),vtpbf=require("vt-pbf"),supercluster=require("supercluster"),geojsonvt=require("geojson-vt"),VectorTileWorkerSource=require("./vector_tile_worker_source"),GeoJSONWorkerSource=function(e){function r(r,t,o){e.call(this,r,t),o&&(this.loadGeoJSON=o),this._geoJSONIndexes={}}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.loadVectorData=function(e,r){var t=e.source,o=e.coord;if(!this._geoJSONIndexes[t])return r(null,null);var n=this._geoJSONIndexes[t].getTile(Math.min(o.z,e.maxZoom),o.x,o.y);if(!n)return r(null,null);var u=new GeoJSONWrapper(n.features);u.name="_geojsonTileLayer";var a=vtpbf({layers:{_geojsonTileLayer:u}});0===a.byteOffset&&a.byteLength===a.buffer.byteLength||(a=new Uint8Array(a)),u.rawData=a.buffer,r(null,u)},r.prototype.loadData=function(e,r){var t=function(t,o){var n=this;return t?r(t):"object"!=typeof o?r(new Error("Input data is not a valid GeoJSON object.")):(rewind(o,!0),void this._indexData(o,e,function(t,o){return t?r(t):(n._geoJSONIndexes[e.source]=o,void r(null))}))}.bind(this);this.loadGeoJSON(e,t)},r.prototype.loadGeoJSON=function(e,r){if(e.url)ajax.getJSON(e.url,r);else{if("string"!=typeof e.data)return r(new Error("Input data is not a valid GeoJSON object."));try{return r(null,JSON.parse(e.data))}catch(e){return r(new Error("Input data is not a valid GeoJSON object."))}}},r.prototype.removeSource=function(e){this._geoJSONIndexes[e.source]&&delete this._geoJSONIndexes[e.source]},r.prototype._indexData=function(e,r,t){try{r.cluster?t(null,supercluster(r.superclusterOptions).load(e.features)):t(null,geojsonvt(e,r.geojsonVtOptions))}catch(e){return t(e)}},r}(VectorTileWorkerSource);module.exports=GeoJSONWorkerSource; -},{"../util/ajax":191,"./geojson_wrapper":84,"./vector_tile_worker_source":96,"geojson-rewind":7,"geojson-vt":11,"supercluster":29,"vt-pbf":38}],84:[function(require,module,exports){ -"use strict";var Point=require("point-geometry"),VectorTileFeature=require("vector-tile").VectorTileFeature,EXTENT=require("../data/extent"),FeatureWrapper=function(e){var t=this;if(this.type=e.type,1===e.type){this.rawGeometry=[];for(var r=0;rt)){var n=Math.pow(2,Math.min(a.coord.z,i._source.maxzoom)-Math.min(e.z,i._source.maxzoom));if(Math.floor(a.coord.x/n)===e.x&&Math.floor(a.coord.y/n)===e.y)for(o[s]=!0,r=!0;a&&a.coord.z-1>e.z;){var d=a.coord.parent(i._source.maxzoom).id;a=i._tiles[d],a&&a.hasData()&&(delete o[s],o[d]=!0)}}}return r},t.prototype.findLoadedParent=function(e,t,o){for(var i=this,r=e.z-1;r>=t;r--){e=e.parent(i._source.maxzoom);var s=i._tiles[e.id];if(s&&s.hasData())return o[e.id]=!0,s;if(i._cache.has(e.id))return o[e.id]=!0,i._cache.getWithoutRemoving(e.id)}},t.prototype.updateCacheSize=function(e){var t=Math.ceil(e.width/e.tileSize)+1,o=Math.ceil(e.height/e.tileSize)+1,i=t*o,r=5;this._cache.setMaxSize(Math.floor(i*r))},t.prototype.update=function(e){var o=this;if(this.transform=e,this._sourceLoaded){var i,r,s,a;this.updateCacheSize(e);var n=(this._source.roundZoom?Math.round:Math.floor)(this.getZoom(e)),d=Math.max(n-t.maxOverzooming,this._source.minzoom),c=Math.max(n+t.maxUnderzooming,this._source.minzoom),h={};this._coveredTiles={};var u;for(u=this.used?this._source.coord?[this._source.coord]:e.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}):[],i=0;i=Date.now())&&(o.findLoadedChildren(r,c,h)&&(h[_]=!0),a=o.findLoadedParent(r,d,l),a&&o.addTile(a.coord))}var f;for(f in l)h[f]||(o._coveredTiles[f]=!0);for(f in l)h[f]=!0;var T=util.keysDifference(this._tiles,h);for(i=0;ithis._source.maxzoom?Math.pow(2,r-this._source.maxzoom):1;t=new Tile(o,this._source.tileSize*s,this._source.maxzoom),this.loadTile(t,this._tileLoaded.bind(this,t,e.id,t.state))}return t.uses++,this._tiles[e.id]=t,i||this._source.fire("dataloading",{tile:t,coord:t.coord,dataType:"source"}),t},t.prototype._setTileReloadTimer=function(e,t){var o=this,i=t.getExpiryTimeout();i&&(this._timers[e]=setTimeout(function(){o.reloadTile(e,"expired"),o._timers[e]=void 0},i))},t.prototype._setCacheInvalidationTimer=function(e,t){var o=this,i=t.getExpiryTimeout();i&&(this._cacheTimers[e]=setTimeout(function(){o._cache.remove(e),o._cacheTimers[e]=void 0},i))},t.prototype.removeTile=function(e){var t=this._tiles[e];if(t&&(t.uses--,delete this._tiles[e],this._timers[e]&&(clearTimeout(this._timers[e]),this._timers[e]=void 0),!(t.uses>0)))if(t.hasData()){var o=t.coord.wrapped().id;this._cache.add(o,t),this._setCacheInvalidationTimer(o,t)}else t.aborted=!0,this.abortTile(t),this.unloadTile(t)},t.prototype.clearTiles=function(){var e=this;for(var t in e._tiles)e.removeTile(t);this._cache.reset()},t.prototype.tilesIn=function(e){for(var t=this,o={},i=this.getIds(),r=1/0,s=1/0,a=-(1/0),n=-(1/0),d=e[0].zoom,c=0;c=0&&p[1].y>=0){for(var _=[],f=0;fo)r=!1;else if(t)if(this.expirationTimei.row){var o=t;t=i,i=o}return{x0:t.column,y0:t.row,x1:i.column,y1:i.row,dx:i.column-t.column,dy:i.row-t.row}}function scanSpans(t,i,o,r,e){var n=Math.max(o,Math.floor(i.y0)),h=Math.min(r,Math.ceil(i.y1));if(t.x0===i.x0&&t.y0===i.y0?t.x0+i.dy/t.dy*t.dx0,l=i.dx<0,u=n;ua.dy&&(h=s,s=a,a=h),s.dy>d.dy&&(h=s,s=d,d=h),a.dy>d.dy&&(h=a,a=d,d=h),s.dy&&scanSpans(d,s,r,e,n),a.dy&&scanSpans(d,a,r,e,n)}function getQuadkey(t,i,o){for(var r,e="",n=t;n>0;n--)r=1<t?new TileCoord(this.z-1,this.x,this.y,this.w):new TileCoord(this.z-1,Math.floor(this.x/2),Math.floor(this.y/2),this.w)},TileCoord.prototype.wrapped=function(){return new TileCoord(this.z,this.x,this.y,0)},TileCoord.prototype.children=function(t){if(this.z>=t)return[new TileCoord(this.z+1,this.x,this.y,this.w)];var i=this.z+1,o=2*this.x,r=2*this.y;return[new TileCoord(i,o,r,this.w),new TileCoord(i,o+1,r,this.w),new TileCoord(i,o,r+1,this.w),new TileCoord(i,o+1,r+1,this.w)]},TileCoord.cover=function(t,i,o,r){function e(t,i,e){var s,a,d,y;if(e>=0&&e<=n)for(s=t;sthis.maxzoom?Math.pow(2,e.coord.z-this.maxzoom):1,r={url:normalizeURL(e.coord.url(this.tiles,this.maxzoom,this.scheme),this.url),uid:e.uid,coord:e.coord,zoom:e.coord.z,tileSize:this.tileSize*o,type:this.type,source:this.id,overscaling:o,angle:this.map.transform.angle,pitch:this.map.transform.pitch,showCollisionBoxes:this.map.showCollisionBoxes};e.workerID&&"expired"!==e.state?"loading"===e.state?e.reloadCallback=t:this.dispatcher.send("reloadTile",r,i.bind(this),e.workerID):e.workerID=this.dispatcher.send("loadTile",r,i.bind(this))},t.prototype.abortTile=function(e){this.dispatcher.send("abortTile",{uid:e.uid,type:this.type,source:this.id},null,e.workerID)},t.prototype.unloadTile=function(e){e.unloadVectorData(),this.dispatcher.send("removeTile",{uid:e.uid,type:this.type,source:this.id},null,e.workerID)},t}(Evented);module.exports=VectorTileSource; -},{"../util/evented":200,"../util/mapbox":208,"../util/util":212,"./load_tilejson":86}],96:[function(require,module,exports){ -"use strict";var ajax=require("../util/ajax"),vt=require("vector-tile"),Protobuf=require("pbf"),WorkerTile=require("./worker_tile"),util=require("../util/util"),VectorTileWorkerSource=function(e,r,t){this.actor=e,this.layerIndex=r,t&&(this.loadVectorData=t),this.loading={},this.loaded={}};VectorTileWorkerSource.prototype.loadTile=function(e,r){function t(e,t){return delete this.loading[o][i],e?r(e):t?(a.vectorTile=t,a.parse(t,this.layerIndex,this.actor,function(e,o,i){if(e)return r(e);var a={};t.expires&&(a.expires=t.expires),t.cacheControl&&(a.cacheControl=t.cacheControl),r(null,util.extend({rawTileData:t.rawData},o,a),i)}),this.loaded[o]=this.loaded[o]||{},void(this.loaded[o][i]=a)):r(null,null)}var o=e.source,i=e.uid;this.loading[o]||(this.loading[o]={});var a=this.loading[o][i]=new WorkerTile(e);a.abort=this.loadVectorData(e,t.bind(this))},VectorTileWorkerSource.prototype.reloadTile=function(e,r){function t(e,t){if(this.reloadCallback){var o=this.reloadCallback;delete this.reloadCallback,this.parse(this.vectorTile,a.layerIndex,a.actor,o)}r(e,t)}var o=this.loaded[e.source],i=e.uid,a=this;if(o&&o[i]){var l=o[i];"parsing"===l.status?l.reloadCallback=r:"done"===l.status&&l.parse(l.vectorTile,this.layerIndex,this.actor,t.bind(l))}},VectorTileWorkerSource.prototype.abortTile=function(e){var r=this.loading[e.source],t=e.uid;r&&r[t]&&r[t].abort&&(r[t].abort(),delete r[t])},VectorTileWorkerSource.prototype.removeTile=function(e){var r=this.loaded[e.source],t=e.uid;r&&r[t]&&delete r[t]},VectorTileWorkerSource.prototype.loadVectorData=function(e,r){function t(e,t){if(e)return r(e);var o=new vt.VectorTile(new Protobuf(t.data));o.rawData=t.data,o.cacheControl=t.cacheControl,o.expires=t.expires,r(e,o)}var o=ajax.getArrayBuffer(e.url,t.bind(this));return function(){o.abort()}},VectorTileWorkerSource.prototype.redoPlacement=function(e,r){var t=this.loaded[e.source],o=this.loading[e.source],i=e.uid;if(t&&t[i]){var a=t[i],l=a.redoPlacement(e.angle,e.pitch,e.showCollisionBoxes);l.result&&r(null,l.result,l.transferables)}else o&&o[i]&&(o[i].angle=e.angle)},module.exports=VectorTileWorkerSource; -},{"../util/ajax":191,"../util/util":212,"./worker_tile":99,"pbf":25,"vector-tile":34}],97:[function(require,module,exports){ -"use strict";var ajax=require("../util/ajax"),ImageSource=require("./image_source"),VideoSource=function(t){function e(e,o,i,r){t.call(this,e,o,i,r),this.roundZoom=!0,this.type="video",this.options=o}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.load=function(){var t=this,e=this.options;this.urls=e.urls,ajax.getVideo(e.urls,function(e,o){if(e)return t.fire("error",{error:e});t.video=o,t.video.loop=!0;var i;t.video.addEventListener("playing",function(){i=t.map.style.animationLoop.set(1/0),t.map._rerender()}),t.video.addEventListener("pause",function(){t.map.style.animationLoop.cancel(i)}),t.map&&t.video.play(),t._finishLoading()})},e.prototype.getVideo=function(){return this.video},e.prototype.onAdd=function(t){this.map||(this.load(),this.map=t,this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},e.prototype.prepare=function(){!this.tile||this.video.readyState<2||this._prepareImage(this.map.painter.gl,this.video)},e.prototype.serialize=function(){return{type:"video",urls:this.urls,coordinates:this.coordinates}},e}(ImageSource);module.exports=VideoSource; -},{"../util/ajax":191,"./image_source":85}],98:[function(require,module,exports){ -"use strict";var Actor=require("../util/actor"),StyleLayerIndex=require("../style/style_layer_index"),VectorTileWorkerSource=require("./vector_tile_worker_source"),GeoJSONWorkerSource=require("./geojson_worker_source"),globalRTLTextPlugin=require("./rtl_text_plugin"),Worker=function(e){var r=this;this.self=e,this.actor=new Actor(e,this),this.layerIndexes={},this.workerSourceTypes={vector:VectorTileWorkerSource,geojson:GeoJSONWorkerSource},this.workerSources={},this.self.registerWorkerSource=function(e,o){if(r.workerSourceTypes[e])throw new Error('Worker source with name "'+e+'" already registered.');r.workerSourceTypes[e]=o},this.self.registerRTLTextPlugin=function(e){if(globalRTLTextPlugin.applyArabicShaping||globalRTLTextPlugin.processBidirectionalText)throw new Error("RTL text plugin already registered.");globalRTLTextPlugin.applyArabicShaping=e.applyArabicShaping,globalRTLTextPlugin.processBidirectionalText=e.processBidirectionalText}};Worker.prototype.setLayers=function(e,r){this.getLayerIndex(e).replace(r)},Worker.prototype.updateLayers=function(e,r){this.getLayerIndex(e).update(r.layers,r.removedIds,r.symbolOrder)},Worker.prototype.loadTile=function(e,r,o){this.getWorkerSource(e,r.type).loadTile(r,o)},Worker.prototype.reloadTile=function(e,r,o){this.getWorkerSource(e,r.type).reloadTile(r,o)},Worker.prototype.abortTile=function(e,r){this.getWorkerSource(e,r.type).abortTile(r)},Worker.prototype.removeTile=function(e,r){this.getWorkerSource(e,r.type).removeTile(r)},Worker.prototype.removeSource=function(e,r){var o=this.getWorkerSource(e,r.type);void 0!==o.removeSource&&o.removeSource(r)},Worker.prototype.redoPlacement=function(e,r,o){this.getWorkerSource(e,r.type).redoPlacement(r,o)},Worker.prototype.loadWorkerSource=function(e,r,o){try{this.self.importScripts(r.url),o()}catch(e){o(e)}},Worker.prototype.loadRTLTextPlugin=function(e,r,o){try{globalRTLTextPlugin.applyArabicShaping||globalRTLTextPlugin.processBidirectionalText||this.self.importScripts(r)}catch(e){o(e)}},Worker.prototype.getLayerIndex=function(e){var r=this.layerIndexes[e];return r||(r=this.layerIndexes[e]=new StyleLayerIndex),r},Worker.prototype.getWorkerSource=function(e,r){var o=this;if(this.workerSources[e]||(this.workerSources[e]={}),!this.workerSources[e][r]){var t={send:function(r,t,i,n){o.actor.send(r,t,i,n,e)}};this.workerSources[e][r]=new this.workerSourceTypes[r](t,this.getLayerIndex(e))}return this.workerSources[e][r]},module.exports=function(e){return new Worker(e)}; -},{"../style/style_layer_index":154,"../util/actor":190,"./geojson_worker_source":83,"./rtl_text_plugin":90,"./vector_tile_worker_source":96}],99:[function(require,module,exports){ -"use strict";function recalculateLayers(e,i){for(var r=0,o=e.layers;r=B.maxzoom||B.layout&&"none"===B.layout.visibility)){for(var b=0,k=x;b=0;w--){var A=n[i.symbolOrder[w]];A&&t.symbolBuckets.push(A)}if(0===this.symbolBuckets.length)return T(new CollisionTile(this.angle,this.pitch,this.collisionBoxArray));var D=0,I=Object.keys(c.iconDependencies),O=util.mapObject(c.glyphDependencies,function(e){return Object.keys(e).map(Number)}),L=function(e){if(e)return o(e);if(D++,2===D){for(var i=new CollisionTile(t.angle,t.pitch,t.collisionBoxArray),r=0,s=t.symbolBuckets;r"===i||"<="===i||">="===i?compileComparisonOp(e[1],e[2],i,!0):"any"===i?compileLogicalOp(e.slice(1),"||"):"all"===i?compileLogicalOp(e.slice(1),"&&"):"none"===i?compileNegation(compileLogicalOp(e.slice(1),"||")):"in"===i?compileInOp(e[1],e.slice(2)):"!in"===i?compileNegation(compileInOp(e[1],e.slice(2))):"has"===i?compileHasOp(e[1]):"!has"===i?compileNegation(compileHasOp(e[1])):"true";return"("+n+")"}function compilePropertyReference(e){return"$type"===e?"f.type":"$id"===e?"f.id":"p["+JSON.stringify(e)+"]"}function compileComparisonOp(e,i,n,r){var o=compilePropertyReference(e),t="$type"===e?types.indexOf(i):JSON.stringify(i);return(r?"typeof "+o+"=== typeof "+t+"&&":"")+o+n+t}function compileLogicalOp(e,i){return e.map(compile).join(i)}function compileInOp(e,i){"$type"===e&&(i=i.map(function(e){return types.indexOf(e)}));var n=JSON.stringify(i.sort(compare)),r=compilePropertyReference(e);return i.length<=200?n+".indexOf("+r+") !== -1":"function(v, a, i, j) {while (i <= j) { var m = (i + j) >> 1; if (a[m] === v) return true; if (a[m] > v) j = m - 1; else i = m + 1;}return false; }("+r+", "+n+",0,"+(i.length-1)+")"}function compileHasOp(e){return"$id"===e?'"id" in f':JSON.stringify(e)+" in p"}function compileNegation(e){return"!("+e+")"}function compare(e,i){return ei?1:0}module.exports=createFilter;var types=["Unknown","Point","LineString","Polygon"]; -},{}],104:[function(require,module,exports){ -"use strict";function xyz2lab(r){return r>t3?Math.pow(r,1/3):r/t2+t0}function lab2xyz(r){return r>t1?r*r*r:t2*(r-t0)}function xyz2rgb(r){return 255*(r<=.0031308?12.92*r:1.055*Math.pow(r,1/2.4)-.055)}function rgb2xyz(r){return r/=255,r<=.04045?r/12.92:Math.pow((r+.055)/1.055,2.4)}function rgbToLab(r){var t=rgb2xyz(r[0]),a=rgb2xyz(r[1]),n=rgb2xyz(r[2]),b=xyz2lab((.4124564*t+.3575761*a+.1804375*n)/Xn),o=xyz2lab((.2126729*t+.7151522*a+.072175*n)/Yn),g=xyz2lab((.0193339*t+.119192*a+.9503041*n)/Zn);return[116*o-16,500*(b-o),200*(o-g),r[3]]}function labToRgb(r){var t=(r[0]+16)/116,a=isNaN(r[1])?t:t+r[1]/500,n=isNaN(r[2])?t:t-r[2]/200;return t=Yn*lab2xyz(t),a=Xn*lab2xyz(a),n=Zn*lab2xyz(n),[xyz2rgb(3.2404542*a-1.5371385*t-.4985314*n),xyz2rgb(-.969266*a+1.8760108*t+.041556*n),xyz2rgb(.0556434*a-.2040259*t+1.0572252*n),r[3]]}function rgbToHcl(r){var t=rgbToLab(r),a=t[0],n=t[1],b=t[2],o=Math.atan2(b,n)*rad2deg;return[o<0?o+360:o,Math.sqrt(n*n+b*b),a,r[3]]}function hclToRgb(r){var t=r[0]*deg2rad,a=r[1],n=r[2];return labToRgb([n,Math.cos(t)*a,Math.sin(t)*a,r[3]])}var Xn=.95047,Yn=1,Zn=1.08883,t0=4/29,t1=6/29,t2=3*t1*t1,t3=t1*t1*t1,deg2rad=Math.PI/180,rad2deg=180/Math.PI;module.exports={lab:{forward:rgbToLab,reverse:labToRgb},hcl:{forward:rgbToHcl,reverse:hclToRgb}}; -},{}],105:[function(require,module,exports){ -"use strict";function identityFunction(t){return t}function createFunction(t,e){var o,n="color"===e.type;if(isFunctionDefinition(t)){var r=t.stops&&"object"==typeof t.stops[0][0],a=r||void 0!==t.property,i=r||!a,s=t.type||("interpolated"===e.function?"exponential":"interval");n&&(t=extend({},t),t.stops&&(t.stops=t.stops.map(function(t){return[t[0],parseColor(t[1])]})),t.default?t.default=parseColor(t.default):t.default=parseColor(e.default));var u,p,l;if("exponential"===s)u=evaluateExponentialFunction;else if("interval"===s)u=evaluateIntervalFunction;else if("categorical"===s){u=evaluateCategoricalFunction,p=Object.create(null);for(var c=0,f=t.stops;c=t.stops[n-1][0])return t.stops[n-1][1];var r=binarySearchForIndex(t.stops,o);return t.stops[r][1]}function evaluateExponentialFunction(t,e,o){var n=void 0!==t.base?t.base:1;if("number"!==getType(o))return coalesce(t.default,e.default);var r=t.stops.length;if(1===r)return t.stops[0][1];if(o<=t.stops[0][0])return t.stops[0][1];if(o>=t.stops[r-1][0])return t.stops[r-1][1];var a=binarySearchForIndex(t.stops,o);return interpolate(o,n,t.stops[a][0],t.stops[a+1][0],t.stops[a][1],t.stops[a+1][1])}function evaluateIdentityFunction(t,e,o){return"color"===e.type?o=parseColor(o):getType(o)!==e.type&&(o=void 0),coalesce(o,t.default,e.default)}function binarySearchForIndex(t,e){for(var o,n,r=t.length,a=0,i=r-1,s=0;a<=i;){if(s=Math.floor((a+i)/2),o=t[s][0],n=t[s+1][0],e>=o&&ee&&(i=s-1)}return Math.max(s-1,0)}function interpolate(t,e,o,n,r,a){return"function"==typeof r?function(){var i=r.apply(void 0,arguments),s=a.apply(void 0,arguments);if(void 0!==i&&void 0!==s)return interpolate(t,e,o,n,i,s)}:r.length?interpolateArray(t,e,o,n,r,a):interpolateNumber(t,e,o,n,r,a)}function interpolateNumber(t,e,o,n,r,a){var i,s=n-o,u=t-o;return i=1===e?u/s:(Math.pow(e,u)-1)/(Math.pow(e,s)-1),r*(1-i)+a*i}function interpolateArray(t,e,o,n,r,a){for(var i=[],s=0;s255?255:e}function clamp_css_float(e){return e<0?0:e>1?1:e}function parse_css_int(e){return clamp_css_byte("%"===e[e.length-1]?parseFloat(e)/100*255:parseInt(e))}function parse_css_float(e){return clamp_css_float("%"===e[e.length-1]?parseFloat(e)/100:parseFloat(e))}function css_hue_to_rgb(e,r,l){return l<0?l+=1:l>1&&(l-=1),6*l<1?e+(r-e)*l*6:2*l<1?r:3*l<2?e+(r-e)*(2/3-l)*6:e}function parseCSSColor(e){var r=e.replace(/ /g,"").toLowerCase();if(r in kCSSColorTable)return kCSSColorTable[r].slice();if("#"===r[0]){if(4===r.length){var l=parseInt(r.substr(1),16);return l>=0&&l<=4095?[(3840&l)>>4|(3840&l)>>8,240&l|(240&l)>>4,15&l|(15&l)<<4,1]:null}if(7===r.length){var l=parseInt(r.substr(1),16);return l>=0&&l<=16777215?[(16711680&l)>>16,(65280&l)>>8,255&l,1]:null}return null}var a=r.indexOf("("),t=r.indexOf(")");if(a!==-1&&t+1===r.length){var n=r.substr(0,a),s=r.substr(a+1,t-(a+1)).split(","),o=1;switch(n){case"rgba":if(4!==s.length)return null;o=parse_css_float(s.pop());case"rgb":return 3!==s.length?null:[parse_css_int(s[0]),parse_css_int(s[1]),parse_css_int(s[2]),o];case"hsla":if(4!==s.length)return null;o=parse_css_float(s.pop());case"hsl":if(3!==s.length)return null;var i=(parseFloat(s[0])%360+360)%360/360,u=parse_css_float(s[1]),g=parse_css_float(s[2]),d=g<=.5?g*(u+1):g+u-g*u,c=2*g-d;return[clamp_css_byte(255*css_hue_to_rgb(c,d,i+1/3)),clamp_css_byte(255*css_hue_to_rgb(c,d,i)),clamp_css_byte(255*css_hue_to_rgb(c,d,i-1/3)),o];default:return null}}return null}var kCSSColorTable={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],rebeccapurple:[102,51,153,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};try{exports.parseCSSColor=parseCSSColor}catch(e){} -},{}],108:[function(require,module,exports){ -function sss(r){var e,t,s,n,u,a;switch(typeof r){case"object":if(null===r)return null;if(isArray(r)){for(s="[",t=r.length-1,e=0;e-1&&(s+=sss(r[e])),s+"]"}for(n=objKeys(r).sort(),t=n.length,s="{",u=n[e=0],a=t>0&&void 0!==r[u];e15?"\\u00"+e.toString(16):"\\u000"+e.toString(16)}};module.exports=function(r){if(void 0!==r)return""+sss(r)},module.exports.stringSearch=strReg,module.exports.stringReplace=strReplace; -},{}],109:[function(require,module,exports){ -function isObjectLike(r){return!!r&&"object"==typeof r}function arraySome(r,e){for(var a=-1,t=r.length;++as))return!1;for(;++c-1&&t%1==0&&t<=MAX_SAFE_INTEGER}function isObject(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function isObjectLike(t){return!!t&&"object"==typeof t}var MAX_SAFE_INTEGER=9007199254740991,argsTag="[object Arguments]",funcTag="[object Function]",genTag="[object GeneratorFunction]",objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,objectToString=objectProto.toString,propertyIsEnumerable=objectProto.propertyIsEnumerable;module.exports=isArguments; -},{}],113:[function(require,module,exports){ -function isObjectLike(t){return!!t&&"object"==typeof t}function getNative(t,r){var e=null==t?void 0:t[r];return isNative(e)?e:void 0}function isLength(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=MAX_SAFE_INTEGER}function isFunction(t){return isObject(t)&&objToString.call(t)==funcTag}function isObject(t){var r=typeof t;return!!t&&("object"==r||"function"==r)}function isNative(t){return null!=t&&(isFunction(t)?reIsNative.test(fnToString.call(t)):isObjectLike(t)&&reIsHostCtor.test(t))}var arrayTag="[object Array]",funcTag="[object Function]",reIsHostCtor=/^\[object .+?Constructor\]$/,objectProto=Object.prototype,fnToString=Function.prototype.toString,hasOwnProperty=objectProto.hasOwnProperty,objToString=objectProto.toString,reIsNative=RegExp("^"+fnToString.call(hasOwnProperty).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),nativeIsArray=getNative(Array,"isArray"),MAX_SAFE_INTEGER=9007199254740991,isArray=nativeIsArray||function(t){return isObjectLike(t)&&isLength(t.length)&&objToString.call(t)==arrayTag};module.exports=isArray; -},{}],114:[function(require,module,exports){ -function isEqual(a,l,i,e){i="function"==typeof i?bindCallback(i,e,3):void 0;var s=i?i(a,l):void 0;return void 0===s?baseIsEqual(a,l,i):!!s}var baseIsEqual=require("lodash._baseisequal"),bindCallback=require("lodash._bindcallback");module.exports=isEqual; -},{"lodash._baseisequal":109,"lodash._bindcallback":110}],115:[function(require,module,exports){ -function isLength(a){return"number"==typeof a&&a>-1&&a%1==0&&a<=MAX_SAFE_INTEGER}function isObjectLike(a){return!!a&&"object"==typeof a}function isTypedArray(a){return isObjectLike(a)&&isLength(a.length)&&!!typedArrayTags[objectToString.call(a)]}var MAX_SAFE_INTEGER=9007199254740991,argsTag="[object Arguments]",arrayTag="[object Array]",boolTag="[object Boolean]",dateTag="[object Date]",errorTag="[object Error]",funcTag="[object Function]",mapTag="[object Map]",numberTag="[object Number]",objectTag="[object Object]",regexpTag="[object RegExp]",setTag="[object Set]",stringTag="[object String]",weakMapTag="[object WeakMap]",arrayBufferTag="[object ArrayBuffer]",dataViewTag="[object DataView]",float32Tag="[object Float32Array]",float64Tag="[object Float64Array]",int8Tag="[object Int8Array]",int16Tag="[object Int16Array]",int32Tag="[object Int32Array]",uint8Tag="[object Uint8Array]",uint8ClampedTag="[object Uint8ClampedArray]",uint16Tag="[object Uint16Array]",uint32Tag="[object Uint32Array]",typedArrayTags={};typedArrayTags[float32Tag]=typedArrayTags[float64Tag]=typedArrayTags[int8Tag]=typedArrayTags[int16Tag]=typedArrayTags[int32Tag]=typedArrayTags[uint8Tag]=typedArrayTags[uint8ClampedTag]=typedArrayTags[uint16Tag]=typedArrayTags[uint32Tag]=!0,typedArrayTags[argsTag]=typedArrayTags[arrayTag]=typedArrayTags[arrayBufferTag]=typedArrayTags[boolTag]=typedArrayTags[dataViewTag]=typedArrayTags[dateTag]=typedArrayTags[errorTag]=typedArrayTags[funcTag]=typedArrayTags[mapTag]=typedArrayTags[numberTag]=typedArrayTags[objectTag]=typedArrayTags[regexpTag]=typedArrayTags[setTag]=typedArrayTags[stringTag]=typedArrayTags[weakMapTag]=!1;var objectProto=Object.prototype,objectToString=objectProto.toString;module.exports=isTypedArray; -},{}],116:[function(require,module,exports){ -function baseProperty(e){return function(t){return null==t?void 0:t[e]}}function isArrayLike(e){return null!=e&&isLength(getLength(e))}function isIndex(e,t){return e="number"==typeof e||reIsUint.test(e)?+e:-1,t=null==t?MAX_SAFE_INTEGER:t,e>-1&&e%1==0&&e-1&&e%1==0&&e<=MAX_SAFE_INTEGER}function shimKeys(e){for(var t=keysIn(e),r=t.length,n=r&&e.length,s=!!n&&isLength(n)&&(isArray(e)||isArguments(e)),o=-1,i=[];++o0;++n":{},">=":{},"<":{},"<=":{},"in":{},"!in":{},"all":{},"any":{},"none":{},"has":{},"!has":{}}},"geometry_type":{"type":"enum","values":{"Point":{},"LineString":{},"Polygon":{}}},"function":{"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":false}},"function_stop":{"type":"array","minimum":0,"maximum":22,"value":["number","color"],"length":2},"light":{"anchor":{"type":"enum","default":"viewport","values":{"map":{},"viewport":{}},"transition":false},"position":{"type":"array","default":[1.15,210,30],"length":3,"value":"number","transition":true,"function":"interpolated","zoom-function":true,"property-function":false},"color":{"type":"color","default":"#ffffff","function":"interpolated","zoom-function":true,"property-function":false,"transition":true},"intensity":{"type":"number","default":0.5,"minimum":0,"maximum":1,"function":"interpolated","zoom-function":true,"property-function":false,"transition":true}},"paint":["paint_fill","paint_line","paint_circle","paint_fill-extrusion","paint_symbol","paint_raster","paint_background"],"paint_fill":{"fill-antialias":{"type":"boolean","function":"piecewise-constant","zoom-function":true,"default":true},"fill-opacity":{"type":"number","function":"interpolated","zoom-function":true,"property-function":true,"default":1,"minimum":0,"maximum":1,"transition":true},"fill-color":{"type":"color","default":"#000000","function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"requires":[{"!":"fill-pattern"}]},"fill-outline-color":{"type":"color","function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"requires":[{"!":"fill-pattern"},{"fill-antialias":true}]},"fill-translate":{"type":"array","value":"number","length":2,"default":[0,0],"function":"interpolated","zoom-function":true,"transition":true,"units":"pixels"},"fill-translate-anchor":{"type":"enum","function":"piecewise-constant","zoom-function":true,"values":{"map":{},"viewport":{}},"default":"map","requires":["fill-translate"]},"fill-pattern":{"type":"string","function":"piecewise-constant","zoom-function":true,"transition":true}},"paint_fill-extrusion":{"fill-extrusion-opacity":{"type":"number","function":"interpolated","zoom-function":true,"property-function":false,"default":1,"minimum":0,"maximum":1,"transition":true},"fill-extrusion-color":{"type":"color","default":"#000000","function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"requires":[{"!":"fill-extrusion-pattern"}]},"fill-extrusion-translate":{"type":"array","value":"number","length":2,"default":[0,0],"function":"interpolated","zoom-function":true,"transition":true,"units":"pixels"},"fill-extrusion-translate-anchor":{"type":"enum","function":"piecewise-constant","zoom-function":true,"values":{"map":{},"viewport":{}},"default":"map","requires":["fill-extrusion-translate"]},"fill-extrusion-pattern":{"type":"string","function":"piecewise-constant","zoom-function":true,"transition":true},"fill-extrusion-height":{"type":"number","function":"interpolated","zoom-function":true,"property-function":true,"default":0,"minimum":0,"units":"meters","transition":true},"fill-extrusion-base":{"type":"number","function":"interpolated","zoom-function":true,"property-function":true,"default":0,"minimum":0,"units":"meters","transition":true,"requires":["fill-extrusion-height"]}},"paint_line":{"line-opacity":{"type":"number","function":"interpolated","zoom-function":true,"property-function":true,"default":1,"minimum":0,"maximum":1,"transition":true},"line-color":{"type":"color","default":"#000000","function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"requires":[{"!":"line-pattern"}]},"line-translate":{"type":"array","value":"number","length":2,"default":[0,0],"function":"interpolated","zoom-function":true,"transition":true,"units":"pixels"},"line-translate-anchor":{"type":"enum","function":"piecewise-constant","zoom-function":true,"values":{"map":{},"viewport":{}},"default":"map","requires":["line-translate"]},"line-width":{"type":"number","default":1,"minimum":0,"function":"interpolated","zoom-function":true,"transition":true,"units":"pixels"},"line-gap-width":{"type":"number","default":0,"minimum":0,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"units":"pixels"},"line-offset":{"type":"number","default":0,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"units":"pixels"},"line-blur":{"type":"number","default":0,"minimum":0,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"units":"pixels"},"line-dasharray":{"type":"array","value":"number","function":"piecewise-constant","zoom-function":true,"minimum":0,"transition":true,"units":"line widths","requires":[{"!":"line-pattern"}]},"line-pattern":{"type":"string","function":"piecewise-constant","zoom-function":true,"transition":true}},"paint_circle":{"circle-radius":{"type":"number","default":5,"minimum":0,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"units":"pixels"},"circle-color":{"type":"color","default":"#000000","function":"interpolated","zoom-function":true,"property-function":true,"transition":true},"circle-blur":{"type":"number","default":0,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true},"circle-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true},"circle-translate":{"type":"array","value":"number","length":2,"default":[0,0],"function":"interpolated","zoom-function":true,"transition":true,"units":"pixels"},"circle-translate-anchor":{"type":"enum","function":"piecewise-constant","zoom-function":true,"values":{"map":{},"viewport":{}},"default":"map","requires":["circle-translate"]},"circle-pitch-scale":{"type":"enum","function":"piecewise-constant","zoom-function":true,"values":{"map":{},"viewport":{}},"default":"map"},"circle-stroke-width":{"type":"number","default":0,"minimum":0,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"units":"pixels"},"circle-stroke-color":{"type":"color","default":"#000000","function":"interpolated","zoom-function":true,"property-function":true,"transition":true},"circle-stroke-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true}},"paint_symbol":{"icon-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"requires":["icon-image"]},"icon-color":{"type":"color","default":"#000000","function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"requires":["icon-image"]},"icon-halo-color":{"type":"color","default":"rgba(0, 0, 0, 0)","function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"requires":["icon-image"]},"icon-halo-width":{"type":"number","default":0,"minimum":0,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"units":"pixels","requires":["icon-image"]},"icon-halo-blur":{"type":"number","default":0,"minimum":0,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"units":"pixels","requires":["icon-image"]},"icon-translate":{"type":"array","value":"number","length":2,"default":[0,0],"function":"interpolated","zoom-function":true,"transition":true,"units":"pixels","requires":["icon-image"]},"icon-translate-anchor":{"type":"enum","function":"piecewise-constant","zoom-function":true,"values":{"map":{},"viewport":{}},"default":"map","requires":["icon-image","icon-translate"]},"text-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"requires":["text-field"]},"text-color":{"type":"color","default":"#000000","function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"requires":["text-field"]},"text-halo-color":{"type":"color","default":"rgba(0, 0, 0, 0)","function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"requires":["text-field"]},"text-halo-width":{"type":"number","default":0,"minimum":0,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"units":"pixels","requires":["text-field"]},"text-halo-blur":{"type":"number","default":0,"minimum":0,"function":"interpolated","zoom-function":true,"property-function":true,"transition":true,"units":"pixels","requires":["text-field"]},"text-translate":{"type":"array","value":"number","length":2,"default":[0,0],"function":"interpolated","zoom-function":true,"transition":true,"units":"pixels","requires":["text-field"]},"text-translate-anchor":{"type":"enum","function":"piecewise-constant","zoom-function":true,"values":{"map":{},"viewport":{}},"default":"map","requires":["text-field","text-translate"]}},"paint_raster":{"raster-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"function":"interpolated","zoom-function":true,"transition":true},"raster-hue-rotate":{"type":"number","default":0,"period":360,"function":"interpolated","zoom-function":true,"transition":true,"units":"degrees"},"raster-brightness-min":{"type":"number","function":"interpolated","zoom-function":true,"default":0,"minimum":0,"maximum":1,"transition":true},"raster-brightness-max":{"type":"number","function":"interpolated","zoom-function":true,"default":1,"minimum":0,"maximum":1,"transition":true},"raster-saturation":{"type":"number","default":0,"minimum":-1,"maximum":1,"function":"interpolated","zoom-function":true,"transition":true},"raster-contrast":{"type":"number","default":0,"minimum":-1,"maximum":1,"function":"interpolated","zoom-function":true,"transition":true},"raster-fade-duration":{"type":"number","default":300,"minimum":0,"function":"interpolated","zoom-function":true,"transition":true,"units":"milliseconds"}},"paint_background":{"background-color":{"type":"color","default":"#000000","function":"interpolated","zoom-function":true,"transition":true,"requires":[{"!":"background-pattern"}]},"background-pattern":{"type":"string","function":"piecewise-constant","zoom-function":true,"transition":true},"background-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"function":"interpolated","zoom-function":true,"transition":true}},"transition":{"duration":{"type":"number","default":300,"minimum":0,"units":"milliseconds"},"delay":{"type":"number","default":0,"minimum":0,"units":"milliseconds"}}} -},{}],119:[function(require,module,exports){ -"use strict";module.exports=function(r){for(var t=arguments,e=1;e7)return[new ValidationError(u,a,"constants have been deprecated as of v8")];if(!(a in l.constants))return[new ValidationError(u,a,'constant "%s" not found',a)];e=extend({},e,{value:l.constants[a]})}return n.function&&"object"===getType(a)?r(e):n.type&&i[n.type]?i[n.type](e):t(extend({},e,{valueSpec:n.type?o[n.type]:n}))}; -},{"../error/validation_error":102,"../util/extend":119,"../util/get_type":120,"./validate_array":125,"./validate_boolean":126,"./validate_color":127,"./validate_constants":128,"./validate_enum":129,"./validate_filter":130,"./validate_function":131,"./validate_layer":133,"./validate_light":135,"./validate_number":136,"./validate_object":137,"./validate_source":140,"./validate_string":141}],125:[function(require,module,exports){ -"use strict";var getType=require("../util/get_type"),validate=require("./validate"),ValidationError=require("../error/validation_error");module.exports=function(e){var r=e.value,t=e.valueSpec,a=e.style,n=e.styleSpec,l=e.key,i=e.arrayElementValidator||validate;if("array"!==getType(r))return[new ValidationError(l,r,"array expected, %s found",getType(r))];if(t.length&&r.length!==t.length)return[new ValidationError(l,r,"array length %d expected, length %d found",t.length,r.length)];if(t["min-length"]&&r.length7)return t?[new ValidationError(e,t,"constants have been deprecated as of v8")]:[];var o=getType(t);if("object"!==o)return[new ValidationError(e,t,"object expected, %s found",o)];var n=[];for(var i in t)"@"!==i[0]&&n.push(new ValidationError(e+"."+i,t[i],'constants must start with "@"'));return n}; -},{"../error/validation_error":102,"../util/get_type":120}],129:[function(require,module,exports){ -"use strict";var ValidationError=require("../error/validation_error"),unbundle=require("../util/unbundle_jsonlint");module.exports=function(e){var r=e.key,n=e.value,u=e.valueSpec,o=[];return Array.isArray(u.values)?u.values.indexOf(unbundle(n))===-1&&o.push(new ValidationError(r,n,"expected one of [%s], %s found",u.values.join(", "),n)):Object.keys(u.values).indexOf(unbundle(n))===-1&&o.push(new ValidationError(r,n,"expected one of [%s], %s found",Object.keys(u.values).join(", "),n)),o}; -},{"../error/validation_error":102,"../util/unbundle_jsonlint":123}],130:[function(require,module,exports){ -"use strict";var ValidationError=require("../error/validation_error"),validateEnum=require("./validate_enum"),getType=require("../util/get_type"),unbundle=require("../util/unbundle_jsonlint");module.exports=function e(r){var t,a=r.value,n=r.key,l=r.styleSpec,s=[];if("array"!==getType(a))return[new ValidationError(n,a,"array expected, %s found",getType(a))];if(a.length<1)return[new ValidationError(n,a,"filter array must have at least 1 element")];switch(s=s.concat(validateEnum({key:n+"[0]",value:a[0],valueSpec:l.filter_operator,style:r.style,styleSpec:r.styleSpec})),unbundle(a[0])){case"<":case"<=":case">":case">=":a.length>=2&&"$type"===unbundle(a[1])&&s.push(new ValidationError(n,a,'"$type" cannot be use with operator "%s"',a[0]));case"==":case"!=":3!==a.length&&s.push(new ValidationError(n,a,'filter array for operator "%s" must have 3 elements',a[0]));case"in":case"!in":a.length>=2&&(t=getType(a[1]),"string"!==t&&s.push(new ValidationError(n+"[1]",a[1],"string expected, %s found",t)));for(var o=2;ounbundle(r[0].zoom))return[new ValidationError(o,r[0].zoom,"stop zoom values must appear in ascending order")];unbundle(r[0].zoom)!==l&&(l=unbundle(r[0].zoom),i=void 0,s={}),t=t.concat(validateObject({key:o+"[0]",value:r[0],valueSpec:{zoom:{}},style:e.style,styleSpec:e.styleSpec,objectElementValidators:{zoom:validateNumber,value:a}}))}else t=t.concat(a({key:o+"[0]",value:r[0],valueSpec:{},style:e.style,styleSpec:e.styleSpec}));return t.concat(validate({key:o+"[1]",value:r[1],valueSpec:u,style:e.style,styleSpec:e.styleSpec}))}function a(e){var t=getType(e.value),r=unbundle(e.value);if(n){if(t!==n)return[new ValidationError(e.key,e.value,"%s stop domain type must match previous stop domain type %s",t,n)]}else n=t;if("number"!==t&&"string"!==t&&"boolean"!==t)return[new ValidationError(e.key,e.value,"stop domain value must be a number, string, or boolean")];if("number"!==t&&"categorical"!==p){var a="number expected, %s found";return u["property-function"]&&void 0===p&&(a+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new ValidationError(e.key,e.value,a,t)]}return"categorical"!==p||"number"!==t||isFinite(r)&&Math.floor(r)===r?"number"===t&&void 0!==i&&r=8&&(d&&!e.valueSpec["property-function"]?v.push(new ValidationError(e.key,e.value,"property functions not supported")):y&&!e.valueSpec["zoom-function"]&&v.push(new ValidationError(e.key,e.value,"zoom functions not supported"))),"categorical"!==p&&!c||void 0!==e.value.property||v.push(new ValidationError(e.key,e.value,'"property" property is required')),v}; -},{"../error/validation_error":102,"../util/get_type":120,"../util/unbundle_jsonlint":123,"./validate":124,"./validate_array":125,"./validate_number":136,"./validate_object":137}],132:[function(require,module,exports){ -"use strict";var ValidationError=require("../error/validation_error"),validateString=require("./validate_string");module.exports=function(r){var e=r.value,t=r.key,a=validateString(r);return a.length?a:(e.indexOf("{fontstack}")===-1&&a.push(new ValidationError(t,e,'"glyphs" url must include a "{fontstack}" token')),e.indexOf("{range}")===-1&&a.push(new ValidationError(t,e,'"glyphs" url must include a "{range}" token')),a)}; -},{"../error/validation_error":102,"./validate_string":141}],133:[function(require,module,exports){ -"use strict";var ValidationError=require("../error/validation_error"),unbundle=require("../util/unbundle_jsonlint"),validateObject=require("./validate_object"),validateFilter=require("./validate_filter"),validatePaintProperty=require("./validate_paint_property"),validateLayoutProperty=require("./validate_layout_property"),extend=require("../util/extend");module.exports=function(e){var r=[],t=e.value,a=e.key,i=e.style,l=e.styleSpec;t.type||t.ref||r.push(new ValidationError(a,t,'either "type" or "ref" is required'));var u=unbundle(t.type),n=unbundle(t.ref);if(t.id)for(var o=unbundle(t.id),s=0;sm.maximum?[new ValidationError(r,i,"%s is greater than the maximum value %s",i,m.maximum)]:[]}; -},{"../error/validation_error":102,"../util/get_type":120}],137:[function(require,module,exports){ -"use strict";var ValidationError=require("../error/validation_error"),getType=require("../util/get_type"),validateSpec=require("./validate");module.exports=function(e){var r=e.key,t=e.value,i=e.valueSpec||{},a=e.objectElementValidators||{},o=e.style,l=e.styleSpec,n=[],u=getType(t);if("object"!==u)return[new ValidationError(r,t,"object expected, %s found",u)];for(var d in t){var p=d.split(".")[0],s=i[p]||i["*"],c=void 0;if(a[p])c=a[p];else if(i[p])c=validateSpec;else if(a["*"])c=a["*"];else{if(!i["*"]){n.push(new ValidationError(r,t[d],'unknown property "%s"',d));continue}c=validateSpec}n=n.concat(c({key:(r?r+".":r)+d,value:t[d],valueSpec:s,style:o,styleSpec:l,object:t,objectKey:d}))}for(var v in i)i[v].required&&void 0===i[v].default&&void 0===t[v]&&n.push(new ValidationError(r,t,'missing required property "%s"',v));return n}; -},{"../error/validation_error":102,"../util/get_type":120,"./validate":124}],138:[function(require,module,exports){ -"use strict";var validateProperty=require("./validate_property");module.exports=function(r){return validateProperty(r,"paint")}; -},{"./validate_property":139}],139:[function(require,module,exports){ -"use strict";var validate=require("./validate"),ValidationError=require("../error/validation_error"),getType=require("../util/get_type");module.exports=function(e,t){var r=e.key,i=e.style,a=e.styleSpec,n=e.value,o=e.objectKey,l=a[t+"_"+e.layerType];if(!l)return[];var y=o.match(/^(.*)-transition$/);if("paint"===t&&y&&l[y[1]]&&l[y[1]].transition)return validate({key:r,value:n,valueSpec:a.transition,style:i,styleSpec:a});var p=e.valueSpec||l[o];if(!p)return[new ValidationError(r,n,'unknown property "%s"',o)];var s;if("string"===getType(n)&&p["property-function"]&&!p.tokens&&(s=/^{([^}]+)}$/.exec(n)))return[new ValidationError(r,n,'"%s" does not support interpolation syntax\nUse an identity property function instead: `{ "type": "identity", "property": %s` }`.',o,JSON.stringify(s[1]))];var u=[];return"symbol"===e.layerType&&"text-field"===o&&i&&!i.glyphs&&u.push(new ValidationError(r,n,'use of "text-field" requires a style "glyphs" property')),u.concat(validate({key:e.key,value:n,valueSpec:p,style:i,styleSpec:a}))}; -},{"../error/validation_error":102,"../util/get_type":120,"./validate":124}],140:[function(require,module,exports){ -"use strict";var ValidationError=require("../error/validation_error"),unbundle=require("../util/unbundle_jsonlint"),validateObject=require("./validate_object"),validateEnum=require("./validate_enum");module.exports=function(e){var a=e.value,t=e.key,r=e.styleSpec,l=e.style;if(!a.type)return[new ValidationError(t,a,'"type" is required')];var u=unbundle(a.type),i=[];switch(u){case"vector":case"raster":if(i=i.concat(validateObject({key:t,value:a,valueSpec:r.source_tile,style:e.style,styleSpec:r})),"url"in a)for(var s in a)["type","url","tileSize"].indexOf(s)<0&&i.push(new ValidationError(t+"."+s,a[s],'a source with a "url" property may not include a "%s" property',s));return i;case"geojson":return validateObject({key:t,value:a,valueSpec:r.source_geojson,style:l,styleSpec:r});case"video":return validateObject({key:t,value:a,valueSpec:r.source_video,style:l,styleSpec:r});case"image":return validateObject({key:t,value:a,valueSpec:r.source_image,style:l,styleSpec:r});case"canvas":return validateObject({key:t,value:a,valueSpec:r.source_canvas,style:l,styleSpec:r});default:return validateEnum({key:t+".type",value:a.type,valueSpec:{values:["vector","raster","geojson","video","image","canvas"]},style:l,styleSpec:r})}}; -},{"../error/validation_error":102,"../util/unbundle_jsonlint":123,"./validate_enum":129,"./validate_object":137}],141:[function(require,module,exports){ -"use strict";var getType=require("../util/get_type"),ValidationError=require("../error/validation_error");module.exports=function(r){var e=r.value,t=r.key,i=getType(e);return"string"!==i?[new ValidationError(t,e,"string expected, %s found",i)]:[]}; -},{"../error/validation_error":102,"../util/get_type":120}],142:[function(require,module,exports){ -"use strict";function validateStyleMin(e,a){a=a||latestStyleSpec;var t=[];return t=t.concat(validate({key:"",value:e,valueSpec:a.$root,styleSpec:a,style:e,objectElementValidators:{glyphs:validateGlyphsURL,"*":function(){return[]}}})),a.$version>7&&e.constants&&(t=t.concat(validateConstants({key:"constants",value:e.constants,style:e,styleSpec:a}))),sortErrors(t)}function sortErrors(e){return[].concat(e).sort(function(e,a){return e.line-a.line})}function wrapCleanErrors(e){return function(){return sortErrors(e.apply(this,arguments))}}var validateConstants=require("./validate/validate_constants"),validate=require("./validate/validate"),latestStyleSpec=require("./reference/latest"),validateGlyphsURL=require("./validate/validate_glyphs_url");validateStyleMin.source=wrapCleanErrors(require("./validate/validate_source")),validateStyleMin.light=wrapCleanErrors(require("./validate/validate_light")),validateStyleMin.layer=wrapCleanErrors(require("./validate/validate_layer")),validateStyleMin.filter=wrapCleanErrors(require("./validate/validate_filter")),validateStyleMin.paintProperty=wrapCleanErrors(require("./validate/validate_paint_property")),validateStyleMin.layoutProperty=wrapCleanErrors(require("./validate/validate_layout_property")),module.exports=validateStyleMin; -},{"./reference/latest":117,"./validate/validate":124,"./validate/validate_constants":128,"./validate/validate_filter":130,"./validate/validate_glyphs_url":132,"./validate/validate_layer":133,"./validate/validate_layout_property":134,"./validate/validate_light":135,"./validate/validate_paint_property":138,"./validate/validate_source":140}],143:[function(require,module,exports){ -"use strict";var AnimationLoop=function(){this.n=0,this.times=[]};AnimationLoop.prototype.stopped=function(){return this.times=this.times.filter(function(t){return t.time>=(new Date).getTime()}),!this.times.length},AnimationLoop.prototype.set=function(t){return this.times.push({id:this.n,time:t+(new Date).getTime()}),this.n++},AnimationLoop.prototype.cancel=function(t){this.times=this.times.filter(function(i){return i.id!==t})},module.exports=AnimationLoop; -},{}],144:[function(require,module,exports){ -"use strict";var Evented=require("../util/evented"),ajax=require("../util/ajax"),browser=require("../util/browser"),normalizeURL=require("../util/mapbox").normalizeSpriteURL,SpritePosition=function(){this.x=0,this.y=0,this.width=0,this.height=0,this.pixelRatio=1,this.sdf=!1},ImageSprite=function(t){function i(i,e){var a=this;t.call(this),this.base=i,this.retina=browser.devicePixelRatio>1,this.setEventedParent(e);var r=this.retina?"@2x":"";ajax.getJSON(normalizeURL(i,r,".json"),function(t,i){return t?void a.fire("error",{error:t}):(a.data=i,void(a.imgData&&a.fire("data",{dataType:"style"})))}),ajax.getImage(normalizeURL(i,r,".png"),function(t,i){if(t)return void a.fire("error",{error:t});a.imgData=browser.getImageData(i);for(var e=0;e1!==this.retina){var e=new i(this.base);e.on("data",function(){t.data=e.data,t.imgData=e.imgData,t.width=e.width,t.retina=e.retina})}},i.prototype.getSpritePosition=function(t){if(!this.loaded())return new SpritePosition;var i=this.data&&this.data[t];return i&&this.imgData?i:new SpritePosition},i}(Evented);module.exports=ImageSprite; -},{"../util/ajax":191,"../util/browser":192,"../util/evented":200,"../util/mapbox":208}],145:[function(require,module,exports){ -"use strict";var styleSpec=require("../style-spec/reference/latest"),util=require("../util/util"),Evented=require("../util/evented"),validateStyle=require("./validate_style"),StyleDeclaration=require("./style_declaration"),StyleTransition=require("./style_transition"),TRANSITION_SUFFIX="-transition",Light=function(t){function i(i){t.call(this),this.properties=["anchor","color","position","intensity"],this._specifications=styleSpec.light,this.set(i)}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.set=function(t){var i=this;if(!this._validate(validateStyle.light,t)){this._declarations={},this._transitions={},this._transitionOptions={},this.calculated={},t=util.extend({anchor:this._specifications.anchor.default,color:this._specifications.color.default,position:this._specifications.position.default,intensity:this._specifications.intensity.default},t);for(var e=0,o=i.properties;eMath.floor(e)&&(t.lastIntegerZoom=Math.floor(e+1),t.lastIntegerZoomTime=Date.now()),t.lastZoom=e},t.prototype._checkLoaded=function(){if(!this._loaded)throw new Error("Style is not done loading")},t.prototype.update=function(e,t){var r=this;if(this._changed){var i=Object.keys(this._updatedLayers),o=Object.keys(this._removedLayers);(i.length||o.length||this._updatedSymbolOrder)&&this._updateWorkerLayers(i,o);for(var s in r._updatedSources){var a=r._updatedSources[s];"reload"===a?r._reloadSource(s):"clear"===a&&r._clearSource(s)}this._applyClasses(e,t),this._resetUpdates(),this.fire("data",{dataType:"style"})}},t.prototype._updateWorkerLayers=function(e,t){var r=this,i=this._updatedSymbolOrder?this._order.filter(function(e){return"symbol"===r._layers[e].type}):null;this.dispatcher.broadcast("updateLayers",{layers:this._serializeLayers(e),removedIds:t,symbolOrder:i})},t.prototype._resetUpdates=function(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSymbolOrder=!1,this._updatedSources={},this._updatedPaintProps={},this._updatedAllPaintProps=!1},t.prototype.setState=function(e){var t=this;if(this._checkLoaded(),validateStyle.emitErrors(this,validateStyle(e)))return!1;e=util.extend({},e),e.layers=deref(e.layers);var r=diff(this.serialize(),e).filter(function(e){return!(e.command in ignoredDiffOperations)});if(0===r.length)return!1;var i=r.filter(function(e){return!(e.command in supportedDiffOperations)});if(i.length>0)throw new Error("Unimplemented: "+i.map(function(e){return e.command}).join(", ")+".");return r.forEach(function(e){"setTransition"!==e.command&&t[e.command].apply(t,e.args)}),this.stylesheet=e,!0},t.prototype.addSource=function(e,t,r){var i=this;if(this._checkLoaded(),void 0!==this.sourceCaches[e])throw new Error("There is already a source with this ID");if(!t.type)throw new Error("The type property must be defined, but the only the following properties were given: "+Object.keys(t)+".");var o=["vector","raster","geojson","video","image","canvas"],s=o.indexOf(t.type)>=0;if(!s||!this._validate(validateStyle.source,"sources."+e,t,null,r)){var a=this.sourceCaches[e]=new SourceCache(e,t,this.dispatcher);a.style=this,a.setEventedParent(this,function(){return{isSourceLoaded:i.loaded(),source:a.serialize(),sourceId:e}}),a.onAdd(this.map),this._changed=!0}},t.prototype.removeSource=function(e){if(this._checkLoaded(),void 0===this.sourceCaches[e])throw new Error("There is no source with this ID");var t=this.sourceCaches[e];delete this.sourceCaches[e],delete this._updatedSources[e],t.setEventedParent(null),t.clearTiles(),t.onRemove&&t.onRemove(this.map),this._changed=!0},t.prototype.getSource=function(e){return this.sourceCaches[e]&&this.sourceCaches[e].getSource()},t.prototype.addLayer=function(e,t,r){this._checkLoaded();var i=e.id;if("object"==typeof e.source&&(this.addSource(i,e.source),e=util.extend(e,{source:i})),!this._validate(validateStyle.layer,"layers."+i,e,{arrayIndex:-1},r)){var o=StyleLayer.create(e);this._validateLayer(o),o.setEventedParent(this,{layer:{id:i}});var s=t?this._order.indexOf(t):this._order.length;if(this._order.splice(s,0,i),this._layers[i]=o,this._removedLayers[i]&&o.source){var a=this._removedLayers[i];delete this._removedLayers[i],this._updatedSources[o.source]=a.type!==o.type?"clear":"reload"}this._updateLayer(o),"symbol"===o.type&&(this._updatedSymbolOrder=!0),this.updateClasses(i)}},t.prototype.moveLayer=function(e,t){this._checkLoaded(),this._changed=!0;var r=this._layers[e];if(!r)return void this.fire("error",{error:new Error("The layer '"+e+"' does not exist in the map's style and cannot be moved.")});var i=this._order.indexOf(e);this._order.splice(i,1);var o=t?this._order.indexOf(t):this._order.length;this._order.splice(o,0,e),"symbol"===r.type&&(this._updatedSymbolOrder=!0,r.source&&!this._updatedSources[r.source]&&(this._updatedSources[r.source]="reload"))},t.prototype.removeLayer=function(e){this._checkLoaded();var t=this._layers[e];if(!t)return void this.fire("error",{error:new Error("The layer '"+e+"' does not exist in the map's style and cannot be removed.")});t.setEventedParent(null);var r=this._order.indexOf(e);this._order.splice(r,1),"symbol"===t.type&&(this._updatedSymbolOrder=!0),this._changed=!0,this._removedLayers[e]=t,delete this._layers[e],delete this._updatedLayers[e],delete this._updatedPaintProps[e]},t.prototype.getLayer=function(e){return this._layers[e]},t.prototype.setLayerZoomRange=function(e,t,r){this._checkLoaded();var i=this.getLayer(e);return i?void(i.minzoom===t&&i.maxzoom===r||(null!=t&&(i.minzoom=t),null!=r&&(i.maxzoom=r),this._updateLayer(i))):void this.fire("error",{error:new Error("The layer '"+e+"' does not exist in the map's style and cannot have zoom extent.")})},t.prototype.setFilter=function(e,t){this._checkLoaded();var r=this.getLayer(e);return r?void(null!==t&&void 0!==t&&this._validate(validateStyle.filter,"layers."+r.id+".filter",t)||util.deepEqual(r.filter,t)||(r.filter=util.clone(t),this._updateLayer(r))):void this.fire("error",{error:new Error("The layer '"+e+"' does not exist in the map's style and cannot be filtered.")})},t.prototype.getFilter=function(e){return util.clone(this.getLayer(e).filter)},t.prototype.setLayoutProperty=function(e,t,r){this._checkLoaded();var i=this.getLayer(e);return i?void(util.deepEqual(i.getLayoutProperty(t),r)||(i.setLayoutProperty(t,r),this._updateLayer(i))):void this.fire("error",{error:new Error("The layer '"+e+"' does not exist in the map's style and cannot be styled.")})},t.prototype.getLayoutProperty=function(e,t){return this.getLayer(e).getLayoutProperty(t)},t.prototype.setPaintProperty=function(e,t,r,i){this._checkLoaded();var o=this.getLayer(e);if(!o)return void this.fire("error",{error:new Error("The layer '"+e+"' does not exist in the map's style and cannot be styled.")});if(!util.deepEqual(o.getPaintProperty(t,i),r)){var s=o.isPaintValueFeatureConstant(t);o.setPaintProperty(t,r,i);var a=!(r&&MapboxGLFunction.isFunctionDefinition(r)&&"$zoom"!==r.property&&void 0!==r.property);a&&s||this._updateLayer(o),this.updateClasses(e,t)}},t.prototype.getPaintProperty=function(e,t,r){return this.getLayer(e).getPaintProperty(t,r)},t.prototype.getTransition=function(){return util.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},t.prototype.updateClasses=function(e,t){if(this._changed=!0,e){var r=this._updatedPaintProps;r[e]||(r[e]={}),r[e][t||"all"]=!0}else this._updatedAllPaintProps=!0},t.prototype.serialize=function(){var e=this;return util.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:util.mapObject(this.sourceCaches,function(e){return e.serialize()}),layers:this._order.map(function(t){return e._layers[t].serialize()})},function(e){return void 0!==e})},t.prototype._updateLayer=function(e){this._updatedLayers[e.id]=!0,e.source&&!this._updatedSources[e.source]&&(this._updatedSources[e.source]="reload"),this._changed=!0},t.prototype._flattenRenderedFeatures=function(e){for(var t=this,r=[],i=this._order.length-1;i>=0;i--)for(var o=t._order[i],s=0,a=e;s=this.maxzoom)||"none"===this.layout.visibility)},i.prototype.updatePaintTransitions=function(t,i,a,e,n){for(var o=this,r=util.extend({},this._paintDeclarations[""]),s=0;s=this.endTime)return e;var a=this.oldTransition.calculate(t,i,this.startTime),n=util.easeCubicInOut((o-this.startTime-this.delay)/this.duration);return this.interp(a,e,n)},StyleTransition.prototype._calculateTargetValue=function(t,i){if(!this.zoomTransitioned)return this.declaration.calculate(t,i);var o=t.zoom,e=this.zoomHistory.lastIntegerZoom,a=o>e?2:.5,n=this.declaration.calculate({zoom:o>e?o-1:o+1},i),r=this.declaration.calculate({zoom:o},i),s=Math.min((Date.now()-this.zoomHistory.lastIntegerZoomTime)/this.duration,1),l=Math.abs(o-e),u=interpolate(s,1,l);return void 0!==n&&void 0!==r?{from:n,fromScale:a,to:r,toScale:1,t:u}:void 0},module.exports=StyleTransition; -},{"../util/interpolate":204,"../util/util":212}],156:[function(require,module,exports){ -"use strict";module.exports=require("../style-spec/validate_style.min"),module.exports.emitErrors=function(r,e){if(e&&e.length){for(var t=0;t-a/2;){if(s--,s<0)return!1;f-=e[s].dist(i),i=e[s]}f+=e[s].dist(e[s+1]),s++;for(var l=[],o=0;f
r;)o-=l.shift().angleDelta;if(o>n)return!1;s++,f+=c.dist(g)}return!0}module.exports=checkMaxAngle; -},{}],159:[function(require,module,exports){ -"use strict";function clipLine(n,x,y,o,e){for(var r=[],t=0;t=o&&w.x>=o||(P.x>=o?P=new Point(o,P.y+(w.y-P.y)*((o-P.x)/(w.x-P.x)))._round():w.x>=o&&(w=new Point(o,P.y+(w.y-P.y)*((o-P.x)/(w.x-P.x)))._round()),P.y>=e&&w.y>=e||(P.y>=e?P=new Point(P.x+(w.x-P.x)*((e-P.y)/(w.y-P.y)),e)._round():w.y>=e&&(w=new Point(P.x+(w.x-P.x)*((e-P.y)/(w.y-P.y)),e)._round()),u&&P.equals(u[u.length-1])||(u=[P],r.push(u)),u.push(w)))))}return r}var Point=require("point-geometry");module.exports=clipLine; -},{"point-geometry":26}],160:[function(require,module,exports){ -"use strict";var createStructArrayType=require("../util/struct_array"),Point=require("point-geometry"),CollisionBoxArray=createStructArrayType({members:[{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:"Float32",name:"maxScale"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"},{type:"Int16",name:"bbox0"},{type:"Int16",name:"bbox1"},{type:"Int16",name:"bbox2"},{type:"Int16",name:"bbox3"},{type:"Float32",name:"placementScale"}]});Object.defineProperty(CollisionBoxArray.prototype.StructType.prototype,"anchorPoint",{get:function(){return new Point(this.anchorPointX,this.anchorPointY)}}),module.exports=CollisionBoxArray; -},{"../util/struct_array":210,"point-geometry":26}],161:[function(require,module,exports){ -"use strict";var CollisionFeature=function(t,e,i,o,s,a,n,r,l,d,u){var h=n.top*r-l,x=n.bottom*r+l,f=n.left*r-l,m=n.right*r+l;if(this.boxStartIndex=t.length,d){var _=x-h,b=m-f;if(_>0)if(_=Math.max(10*r,_),u){var v=e[i.segment+1].sub(e[i.segment])._unit()._mult(b),c=[i.sub(v),i.add(v)];this._addLineCollisionBoxes(t,c,i,0,b,_,o,s,a)}else this._addLineCollisionBoxes(t,e,i,i.segment,b,_,o,s,a)}else t.emplaceBack(i.x,i.y,f,h,m,x,1/0,o,s,a,0,0,0,0,0);this.boxEndIndex=t.length};CollisionFeature.prototype._addLineCollisionBoxes=function(t,e,i,o,s,a,n,r,l){var d=a/2,u=Math.floor(s/d),h=-a/2,x=this.boxes,f=i,m=o+1,_=h;do{if(m--,m<0)return x;_-=e[m].dist(f),f=e[m]}while(_>-s/2);for(var b=e[m].dist(e[m+1]),v=0;v=e.length)return x;b=e[m].dist(e[m+1])}var g=c-_,p=e[m],C=e[m+1],B=C.sub(p)._unit()._mult(g)._add(p)._round(),M=Math.max(Math.abs(c-h)-d/2,0),y=s/2/M;t.emplaceBack(B.x,B.y,-a/2,-a/2,a/2,a/2,y,n,r,l,0,0,0,0,0)}return x},module.exports=CollisionFeature; -},{}],162:[function(require,module,exports){ -"use strict";var Point=require("point-geometry"),EXTENT=require("../data/extent"),Grid=require("grid-index"),intersectionTests=require("../util/intersection_tests"),CollisionTile=function(t,e,i){if("object"==typeof t){var r=t;i=e,t=r.angle,e=r.pitch,this.grid=new Grid(r.grid),this.ignoredGrid=new Grid(r.ignoredGrid)}else this.grid=new Grid(EXTENT,12,6),this.ignoredGrid=new Grid(EXTENT,12,0);this.minScale=.5,this.maxScale=2,this.angle=t,this.pitch=e;var a=Math.sin(t),o=Math.cos(t);if(this.rotationMatrix=[o,-a,a,o],this.reverseRotationMatrix=[o,a,-a,o],this.yStretch=1/Math.cos(e/180*Math.PI),this.yStretch=Math.pow(this.yStretch,1.3),this.collisionBoxArray=i,0===i.length){i.emplaceBack();var n=32767;i.emplaceBack(0,0,0,-n,0,n,n,0,0,0,0,0,0,0,0,0),i.emplaceBack(EXTENT,0,0,-n,0,n,n,0,0,0,0,0,0,0,0,0),i.emplaceBack(0,0,-n,0,n,0,n,0,0,0,0,0,0,0,0,0),i.emplaceBack(0,EXTENT,-n,0,n,0,n,0,0,0,0,0,0,0,0,0)}this.tempCollisionBox=i.get(0),this.edges=[i.get(1),i.get(2),i.get(3),i.get(4)]};CollisionTile.prototype.serialize=function(t){var e=this.grid.toArrayBuffer(),i=this.ignoredGrid.toArrayBuffer();return t&&(t.push(e),t.push(i)),{angle:this.angle,pitch:this.pitch,grid:e,ignoredGrid:i}},CollisionTile.prototype.placeCollisionFeature=function(t,e,i){for(var r=this,a=this.collisionBoxArray,o=this.minScale,n=this.rotationMatrix,l=this.yStretch,h=t.boxStartIndex;h=r.maxScale)return o}if(i){var S=void 0;if(r.angle){var P=r.reverseRotationMatrix,b=new Point(s.x1,s.y1).matMult(P),T=new Point(s.x2,s.y1).matMult(P),w=new Point(s.x1,s.y2).matMult(P),N=new Point(s.x2,s.y2).matMult(P);S=r.tempCollisionBox,S.anchorPointX=s.anchorPoint.x,S.anchorPointY=s.anchorPoint.y,S.x1=Math.min(b.x,T.x,w.x,N.x),S.y1=Math.min(b.y,T.x,w.x,N.x),S.x2=Math.max(b.x,T.x,w.x,N.x),S.y2=Math.max(b.y,T.x,w.x,N.x),S.maxScale=s.maxScale}else S=s;for(var B=0;B=r.maxScale)return o}}}return o},CollisionTile.prototype.queryRenderedSymbols=function(t,e){var i={},r=[];if(0===t.length||0===this.grid.length&&0===this.ignoredGrid.length)return r;for(var a=this.collisionBoxArray,o=this.rotationMatrix,n=this.yStretch,l=[],h=1/0,s=1/0,x=-(1/0),c=-(1/0),g=0;gS.maxScale)){var T=S.anchorPoint.matMult(o),w=T.x+S.x1/e,N=T.y+S.y1/e*n,B=T.x+S.x2/e,G=T.y+S.y2/e*n,E=[new Point(w,N),new Point(B,N),new Point(B,G),new Point(w,G)];intersectionTests.polygonIntersectsPolygon(l,E)&&(i[P][b]=!0,r.push(u[v]))}}return r},CollisionTile.prototype.getPlacementScale=function(t,e,i,r,a){var o=e.x-r.x,n=e.y-r.y,l=(a.x1-i.x2)/o,h=(a.x2-i.x1)/o,s=(a.y1-i.y2)*this.yStretch/n,x=(a.y2-i.y1)*this.yStretch/n;(isNaN(l)||isNaN(h))&&(l=h=1),(isNaN(s)||isNaN(x))&&(s=x=1);var c=Math.min(Math.max(l,h),Math.max(s,x)),g=a.maxScale,y=i.maxScale;return c>g&&(c=g),c>y&&(c=y),c>t&&c>=a.placementScale&&(t=c),t},CollisionTile.prototype.insertCollisionFeature=function(t,e,i){for(var r=this,a=i?this.ignoredGrid:this.grid,o=this.collisionBoxArray,n=t.boxStartIndex;n=0&&k=0&&q=0&&p+c<=s){var M=new Anchor(k,q,y,f)._round();n&&!checkMaxAngle(e,M,l,n,a)||x.push(M)}}g+=A}return i||x.length||o||(x=resample(e,g/2,t,n,a,l,o,!0,h)),x}var interpolate=require("../util/interpolate"),Anchor=require("../symbol/anchor"),checkMaxAngle=require("./check_max_angle");module.exports=getAnchors; -},{"../symbol/anchor":157,"../util/interpolate":204,"./check_max_angle":158}],164:[function(require,module,exports){ -"use strict";var ShelfPack=require("@mapbox/shelf-pack"),util=require("../util/util"),SIZE_GROWTH_RATE=4,DEFAULT_SIZE=128,MAX_SIZE=2048,GlyphAtlas=function(){this.width=DEFAULT_SIZE,this.height=DEFAULT_SIZE,this.atlas=new ShelfPack(this.width,this.height),this.index={},this.ids={},this.data=new Uint8Array(this.width*this.height)};GlyphAtlas.prototype.getGlyphs=function(){var t,i,e,h=this,r={};for(var s in h.ids)t=s.split("#"),i=t[0],e=t[1],r[i]||(r[i]=[]),r[i].push(e);return r},GlyphAtlas.prototype.getRects=function(){var t,i,e,h=this,r={};for(var s in h.ids)t=s.split("#"),i=t[0],e=t[1],r[i]||(r[i]={}),r[i][e]=h.index[s];return r},GlyphAtlas.prototype.addGlyph=function(t,i,e,h){var r=this;if(!e)return null;var s=i+"#"+e.id;if(this.index[s])return this.ids[s].indexOf(t)<0&&this.ids[s].push(t),this.index[s];if(!e.bitmap)return null;var a=e.width+2*h,E=e.height+2*h,n=1,l=a+2*n,T=E+2*n;l+=4-l%4,T+=4-T%4;var u=this.atlas.packOne(l,T);if(u||(this.resize(),u=this.atlas.packOne(l,T)),!u)return util.warnOnce("glyph bitmap overflow"),null;this.index[s]=u,this.ids[s]=[t];for(var d=this.data,p=e.bitmap,A=0;A=MAX_SIZE||e>=MAX_SIZE)){this.texture&&(this.gl&&this.gl.deleteTexture(this.texture),this.texture=null),this.width*=SIZE_GROWTH_RATE,this.height*=SIZE_GROWTH_RATE,this.atlas.resize(this.width,this.height);for(var h=new ArrayBuffer(this.width*this.height),r=0;r65535)return a("glyphs > 65535 not supported");void 0===this.loading[t]&&(this.loading[t]={});var l=this.loading[t];if(l[e])l[e].push(a);else{l[e]=[a];var i=256*e+"-"+(256*e+255),r=glyphUrl(t,i,this.url);ajax.getArrayBuffer(r,function(t,a){for(var i=!t&&new Glyphs(new Protobuf(a.data)),r=0;r1?2:1,this.canvas&&(this.canvas.width=this.width*this.pixelRatio,this.canvas.height=this.height*this.pixelRatio)),this.sprite=t},i.prototype.addIcons=function(t,i){for(var e=this,r=0;r1||(b?(clearTimeout(b),b=null,h("dblclick",t)):b=setTimeout(l,300))}function i(e){f("touchmove",e)}function c(e){f("touchend",e)}function d(e){f("touchcancel",e)}function l(){b=null}function s(e){var t=DOM.mousePos(g,e);t.equals(L)&&h("click",e)}function v(e){h("dblclick",e),e.preventDefault()}function m(t){var n=e.dragRotate&&e.dragRotate.isActive();E||n?E&&(p=t):h("contextmenu",t),t.preventDefault()}function h(t,n){var o=DOM.mousePos(g,n);return e.fire(t,{lngLat:e.unproject(o),point:o,originalEvent:n})}function f(t,n){var o=DOM.touchPos(g,n),r=o.reduce(function(e,t,n,o){return e.add(t.div(o.length))},new Point(0,0));return e.fire(t,{lngLat:e.unproject(r),point:r,lngLats:o.map(function(t){return e.unproject(t)},this),points:o,originalEvent:n})}var g=e.getCanvasContainer(),p=null,E=!1,L=null,b=null;for(var q in handlers)e[q]=new handlers[q](e,t),t.interactive&&t[q]&&e[q].enable(t[q]);g.addEventListener("mouseout",n,!1),g.addEventListener("mousedown",o,!1),g.addEventListener("mouseup",r,!1),g.addEventListener("mousemove",a,!1),g.addEventListener("touchstart",u,!1),g.addEventListener("touchend",c,!1),g.addEventListener("touchmove",i,!1),g.addEventListener("touchcancel",d,!1),g.addEventListener("click",s,!1),g.addEventListener("dblclick",v,!1),g.addEventListener("contextmenu",m,!1)}; -},{"../util/dom":199,"./handler/box_zoom":179,"./handler/dblclick_zoom":180,"./handler/drag_pan":181,"./handler/drag_rotate":182,"./handler/keyboard":183,"./handler/scroll_zoom":184,"./handler/touch_zoom_rotate":185,"point-geometry":26}],172:[function(require,module,exports){ -"use strict";var util=require("../util/util"),interpolate=require("../util/interpolate"),browser=require("../util/browser"),LngLat=require("../geo/lng_lat"),LngLatBounds=require("../geo/lng_lat_bounds"),Point=require("point-geometry"),Evented=require("../util/evented"),Camera=function(t){function i(i,e){t.call(this),this.moving=!1,this.transform=i,this._bearingSnap=e.bearingSnap}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.getCenter=function(){return this.transform.center},i.prototype.setCenter=function(t,i){return this.jumpTo({center:t},i),this},i.prototype.panBy=function(t,i,e){return this.panTo(this.transform.center,util.extend({offset:Point.convert(t).mult(-1)},i),e),this},i.prototype.panTo=function(t,i,e){return this.easeTo(util.extend({center:t},i),e)},i.prototype.getZoom=function(){return this.transform.zoom},i.prototype.setZoom=function(t,i){return this.jumpTo({zoom:t},i),this},i.prototype.zoomTo=function(t,i,e){return this.easeTo(util.extend({zoom:t},i),e)},i.prototype.zoomIn=function(t,i){return this.zoomTo(this.getZoom()+1,t,i),this},i.prototype.zoomOut=function(t,i){return this.zoomTo(this.getZoom()-1,t,i),this},i.prototype.getBearing=function(){return this.transform.bearing},i.prototype.setBearing=function(t,i){return this.jumpTo({bearing:t},i),this},i.prototype.rotateTo=function(t,i,e){return this.easeTo(util.extend({bearing:t},i),e)},i.prototype.resetNorth=function(t,i){return this.rotateTo(0,util.extend({duration:1e3},t),i),this},i.prototype.snapToNorth=function(t,i){return Math.abs(this.getBearing())i?1:0}),["bottom","left","right","top"]))return void util.warnOnce("options.padding must be a positive number, or an Object with keys 'bottom', 'left', 'right', 'top'");t=LngLatBounds.convert(t);var n=[i.padding.left-i.padding.right,i.padding.top-i.padding.bottom],r=Math.min(i.padding.right,i.padding.left),s=Math.min(i.padding.top,i.padding.bottom);i.offset=[i.offset[0]+n[0],i.offset[1]+n[1]];var a=Point.convert(i.offset),h=this.transform,u=h.project(t.getNorthWest()),p=h.project(t.getSouthEast()),c=p.sub(u),g=(h.width-2*r-2*Math.abs(a.x))/c.x,m=(h.height-2*s-2*Math.abs(a.y))/c.y;return m<0||g<0?void util.warnOnce("Map cannot fit within canvas with the given bounds, padding, and/or offset."):(i.center=h.unproject(u.add(p).div(2)),i.zoom=Math.min(h.scaleZoom(h.scale*Math.min(g,m)),i.maxZoom),i.bearing=0,i.linear?this.easeTo(i,e):this.flyTo(i,e))},i.prototype.jumpTo=function(t,i){this.stop();var e=this.transform,o=!1,n=!1,r=!1;return"zoom"in t&&e.zoom!==+t.zoom&&(o=!0,e.zoom=+t.zoom),"center"in t&&(e.center=LngLat.convert(t.center)),"bearing"in t&&e.bearing!==+t.bearing&&(n=!0,e.bearing=+t.bearing),"pitch"in t&&e.pitch!==+t.pitch&&(r=!0,e.pitch=+t.pitch),this.fire("movestart",i).fire("move",i),o&&this.fire("zoomstart",i).fire("zoom",i).fire("zoomend",i),n&&this.fire("rotate",i),r&&this.fire("pitch",i),this.fire("moveend",i)},i.prototype.easeTo=function(t,i){var e=this;this.stop(),t=util.extend({offset:[0,0],duration:500,easing:util.ease},t);var o,n,r=this.transform,s=Point.convert(t.offset),a=this.getZoom(),h=this.getBearing(),u=this.getPitch(),p="zoom"in t?+t.zoom:a,c="bearing"in t?this._normalizeBearing(t.bearing,h):h,g="pitch"in t?+t.pitch:u;"center"in t?(o=LngLat.convert(t.center),n=r.centerPoint.add(s)):"around"in t?(o=LngLat.convert(t.around),n=r.locationPoint(o)):(n=r.centerPoint.add(s),o=r.pointLocation(n));var m=r.locationPoint(o);return t.animate===!1&&(t.duration=0),this.zooming=p!==a,this.rotating=h!==c,this.pitching=g!==u,t.smoothEasing&&0!==t.duration&&(t.easing=this._smoothOutEasing(t.duration)),t.noMoveStart||(this.moving=!0,this.fire("movestart",i)),this.zooming&&this.fire("zoomstart",i),clearTimeout(this._onEaseEnd),this._ease(function(t){this.zooming&&(r.zoom=interpolate(a,p,t)),this.rotating&&(r.bearing=interpolate(h,c,t)),this.pitching&&(r.pitch=interpolate(u,g,t)),r.setLocationAtPoint(o,m.add(n.sub(m)._mult(t))),this.fire("move",i),this.zooming&&this.fire("zoom",i),this.rotating&&this.fire("rotate",i),this.pitching&&this.fire("pitch",i)},function(){t.delayEndEvents?e._onEaseEnd=setTimeout(e._easeToEnd.bind(e,i),t.delayEndEvents):e._easeToEnd(i)},t),this},i.prototype._easeToEnd=function(t){var i=this.zooming;this.moving=!1,this.zooming=!1,this.rotating=!1,this.pitching=!1,i&&this.fire("zoomend",t),this.fire("moveend",t)},i.prototype.flyTo=function(t,i){function e(t){var i=(y*y-z*z+(t?-1:1)*E*E*_*_)/(2*(t?y:z)*E*_);return Math.log(Math.sqrt(i*i+1)-i)}function o(t){return(Math.exp(t)-Math.exp(-t))/2}function n(t){return(Math.exp(t)+Math.exp(-t))/2}function r(t){return o(t)/n(t)}this.stop(),t=util.extend({offset:[0,0],speed:1.2,curve:1.42,easing:util.ease},t);var s=this.transform,a=Point.convert(t.offset),h=this.getZoom(),u=this.getBearing(),p=this.getPitch(),c="center"in t?LngLat.convert(t.center):this.getCenter(),g="zoom"in t?+t.zoom:h,m="bearing"in t?this._normalizeBearing(t.bearing,u):u,f="pitch"in t?+t.pitch:p;Math.abs(s.center.lng)+Math.abs(c.lng)>180&&(s.center.lng>0&&c.lng<0?c.lng+=360:s.center.lng<0&&c.lng>0&&(c.lng-=360));var d=s.zoomScale(g-h),l=s.point,v="center"in t?s.project(c).sub(a.div(d)):l,b=t.curve,z=Math.max(s.width,s.height),y=z/d,_=v.sub(l).mag();if("minZoom"in t){var M=util.clamp(Math.min(t.minZoom,h,g),s.minZoom,s.maxZoom),T=z/s.zoomScale(M-h);b=Math.sqrt(T/_*2)}var E=b*b,x=e(0),L=function(t){return n(x)/n(x+b*t)},Z=function(t){return z*((n(x)*r(x+b*t)-o(x))/E)/_},P=(e(1)-x)/b;if(Math.abs(_)<1e-6){if(Math.abs(z-y)<1e-6)return this.easeTo(t,i);var j=y=0)return!1;return!0}),this._container.innerHTML=i.join(" | "),this._editLink=null}},AttributionControl.prototype._updateCompact=function(){var t=this._map.getCanvasContainer().offsetWidth<=640;this._container.classList[t?"add":"remove"]("compact")},module.exports=AttributionControl; -},{"../../util/dom":199,"../../util/util":212}],174:[function(require,module,exports){ -"use strict";var DOM=require("../../util/dom"),util=require("../../util/util"),window=require("../../util/window"),FullscreenControl=function(){this._fullscreen=!1,util.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in window.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in window.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in window.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in window.document&&(this._fullscreenchange="MSFullscreenChange")};FullscreenControl.prototype.onAdd=function(e){var n="mapboxgl-ctrl",t=this._container=DOM.create("div",n+" mapboxgl-ctrl-group"),l=this._fullscreenButton=DOM.create("button",n+"-icon "+n+"-fullscreen",this._container);return l.setAttribute("aria-label","Toggle fullscreen"),l.type="button",this._fullscreenButton.addEventListener("click",this._onClickFullscreen),this._mapContainer=e.getContainer(),window.document.addEventListener(this._fullscreenchange,this._changeIcon),t},FullscreenControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},FullscreenControl.prototype._isFullscreen=function(){return this._fullscreen},FullscreenControl.prototype._changeIcon=function(e){if(e.target===this._mapContainer){this._fullscreen=!this._fullscreen;var n="mapboxgl-ctrl";this._fullscreenButton.classList.toggle(n+"-shrink"),this._fullscreenButton.classList.toggle(n+"-fullscreen")}},FullscreenControl.prototype._onClickFullscreen=function(){this._isFullscreen()?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._mapContainer.requestFullscreen?this._mapContainer.requestFullscreen():this._mapContainer.mozRequestFullScreen?this._mapContainer.mozRequestFullScreen():this._mapContainer.msRequestFullscreen?this._mapContainer.msRequestFullscreen():this._mapContainer.webkitRequestFullscreen&&this._mapContainer.webkitRequestFullscreen()},module.exports=FullscreenControl; -},{"../../util/dom":199,"../../util/util":212,"../../util/window":194}],175:[function(require,module,exports){ -"use strict";function checkGeolocationSupport(t){void 0!==supportsGeolocation?t(supportsGeolocation):void 0!==window.navigator.permissions?window.navigator.permissions.query({name:"geolocation"}).then(function(o){supportsGeolocation="denied"!==o.state,t(supportsGeolocation)}):(supportsGeolocation=!!window.navigator.geolocation,t(supportsGeolocation))}var Evented=require("../../util/evented"),DOM=require("../../util/dom"),window=require("../../util/window"),util=require("../../util/util"),defaultGeoPositionOptions={enableHighAccuracy:!1,timeout:6e3},className="mapboxgl-ctrl",supportsGeolocation,GeolocateControl=function(t){function o(o){t.call(this),this.options=o||{},util.bindAll(["_onSuccess","_onError","_finish","_setupUI"],this)}return t&&(o.__proto__=t),o.prototype=Object.create(t&&t.prototype),o.prototype.constructor=o,o.prototype.onAdd=function(t){return this._map=t,this._container=DOM.create("div",className+" "+className+"-group"),checkGeolocationSupport(this._setupUI),this._container},o.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map=void 0},o.prototype._onSuccess=function(t){this._map.jumpTo({center:[t.coords.longitude,t.coords.latitude],zoom:17,bearing:0,pitch:0}),this.fire("geolocate",t),this._finish()},o.prototype._onError=function(t){this.fire("error",t),this._finish()},o.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},o.prototype._setupUI=function(t){t!==!1&&(this._container.addEventListener("contextmenu",function(t){return t.preventDefault()}),this._geolocateButton=DOM.create("button",className+"-icon "+className+"-geolocate",this._container),this._geolocateButton.type="button",this._geolocateButton.setAttribute("aria-label","Geolocate"),this.options.watchPosition&&this._geolocateButton.setAttribute("aria-pressed",!1),this._geolocateButton.addEventListener("click",this._onClickGeolocate.bind(this)))},o.prototype._onClickGeolocate=function(){var t=util.extend(defaultGeoPositionOptions,this.options&&this.options.positionOptions||{});this.options.watchPosition?void 0!==this._geolocationWatchID?(this._geolocateButton.classList.remove("watching"),this._geolocateButton.setAttribute("aria-pressed",!1),window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0):(this._geolocateButton.classList.add("watching"),this._geolocateButton.setAttribute("aria-pressed",!0),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,t)):(window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,t),this._timeoutId=setTimeout(this._finish,1e4))},o}(Evented);module.exports=GeolocateControl; -},{"../../util/dom":199,"../../util/evented":200,"../../util/util":212,"../../util/window":194}],176:[function(require,module,exports){ -"use strict";var DOM=require("../../util/dom"),util=require("../../util/util"),LogoControl=function(){util.bindAll(["_updateLogo"],this)};LogoControl.prototype.onAdd=function(o){return this._map=o,this._container=DOM.create("div","mapboxgl-ctrl"),this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._container},LogoControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off("sourcedata",this._updateLogo)},LogoControl.prototype.getDefaultPosition=function(){return"bottom-left"},LogoControl.prototype._updateLogo=function(o){if(o&&"metadata"===o.sourceDataType)if(!this._container.childNodes.length&&this._logoRequired()){var t=DOM.create("a","mapboxgl-ctrl-logo");t.target="_blank",t.href="https://www.mapbox.com/",t.setAttribute("aria-label","Mapbox logo"),this._container.appendChild(t),this._map.off("data",this._updateLogo)}else this._container.childNodes.length&&!this._logoRequired()&&this.onRemove()},LogoControl.prototype._logoRequired=function(){if(this._map.style){var o=this._map.style.sourceCaches;for(var t in o){var e=o[t].getSource();if(e.mapbox_logo)return!0}return!1}},module.exports=LogoControl; -},{"../../util/dom":199,"../../util/util":212}],177:[function(require,module,exports){ -"use strict";function copyMouseEvent(t){return new window.MouseEvent(t.type,{button:2,buttons:2,bubbles:!0,cancelable:!0,detail:t.detail,view:t.view,screenX:t.screenX,screenY:t.screenY,clientX:t.clientX,clientY:t.clientY,movementX:t.movementX,movementY:t.movementY,ctrlKey:t.ctrlKey,shiftKey:t.shiftKey,altKey:t.altKey,metaKey:t.metaKey})}var DOM=require("../../util/dom"),window=require("../../util/window"),util=require("../../util/util"),className="mapboxgl-ctrl",NavigationControl=function(){util.bindAll(["_rotateCompassArrow"],this)};NavigationControl.prototype._rotateCompassArrow=function(){var t="rotate("+this._map.transform.angle*(180/Math.PI)+"deg)";this._compassArrow.style.transform=t},NavigationControl.prototype.onAdd=function(t){return this._map=t,this._container=DOM.create("div",className+" "+className+"-group",t.getContainer()),this._container.addEventListener("contextmenu",this._onContextMenu.bind(this)),this._zoomInButton=this._createButton(className+"-icon "+className+"-zoom-in","Zoom In",t.zoomIn.bind(t)),this._zoomOutButton=this._createButton(className+"-icon "+className+"-zoom-out","Zoom Out",t.zoomOut.bind(t)),this._compass=this._createButton(className+"-icon "+className+"-compass","Reset North",t.resetNorth.bind(t)),this._compassArrow=DOM.create("span",className+"-compass-arrow",this._compass),this._compass.addEventListener("mousedown",this._onCompassDown.bind(this)),this._onCompassMove=this._onCompassMove.bind(this),this._onCompassUp=this._onCompassUp.bind(this),this._map.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._container},NavigationControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off("rotate",this._rotateCompassArrow),this._map=void 0},NavigationControl.prototype._onContextMenu=function(t){t.preventDefault()},NavigationControl.prototype._onCompassDown=function(t){0===t.button&&(DOM.disableDrag(),window.document.addEventListener("mousemove",this._onCompassMove),window.document.addEventListener("mouseup",this._onCompassUp),this._map.getCanvasContainer().dispatchEvent(copyMouseEvent(t)),t.stopPropagation())},NavigationControl.prototype._onCompassMove=function(t){0===t.button&&(this._map.getCanvasContainer().dispatchEvent(copyMouseEvent(t)),t.stopPropagation())},NavigationControl.prototype._onCompassUp=function(t){0===t.button&&(window.document.removeEventListener("mousemove",this._onCompassMove),window.document.removeEventListener("mouseup",this._onCompassUp),DOM.enableDrag(),this._map.getCanvasContainer().dispatchEvent(copyMouseEvent(t)),t.stopPropagation())},NavigationControl.prototype._createButton=function(t,o,e){var n=DOM.create("button",t,this._container);return n.type="button",n.setAttribute("aria-label",o),n.addEventListener("click",function(){e()}),n},module.exports=NavigationControl; -},{"../../util/dom":199,"../../util/util":212,"../../util/window":194}],178:[function(require,module,exports){ -"use strict";function updateScale(t,e,o){var n=o&&o.maxWidth||100,i=t._container.clientHeight/2,a=getDistance(t.unproject([0,i]),t.unproject([n,i]));if(o&&"imperial"===o.unit){var r=3.2808*a;if(r>5280){var l=r/5280;setScale(e,n,l,"mi")}else setScale(e,n,r,"ft")}else setScale(e,n,a,"m")}function setScale(t,e,o,n){var i=getRoundNum(o),a=i/o;"m"===n&&i>=1e3&&(i/=1e3,n="km"),t.style.width=e*a+"px",t.innerHTML=i+n}function getDistance(t,e){var o=6371e3,n=Math.PI/180,i=t.lat*n,a=e.lat*n,r=Math.sin(i)*Math.sin(a)+Math.cos(i)*Math.cos(a)*Math.cos((e.lng-t.lng)*n),l=o*Math.acos(Math.min(r,1));return l}function getRoundNum(t){var e=Math.pow(10,(""+Math.floor(t)).length-1),o=t/e;return o=o>=10?10:o>=5?5:o>=3?3:o>=2?2:1,e*o}var DOM=require("../../util/dom"),util=require("../../util/util"),ScaleControl=function(t){this.options=t,util.bindAll(["_onMove"],this)};ScaleControl.prototype.getDefaultPosition=function(){return"bottom-left"},ScaleControl.prototype._onMove=function(){updateScale(this._map,this._container,this.options)},ScaleControl.prototype.onAdd=function(t){return this._map=t,this._container=DOM.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",t.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},ScaleControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off("move",this._onMove),this._map=void 0},module.exports=ScaleControl; -},{"../../util/dom":199,"../../util/util":212}],179:[function(require,module,exports){ -"use strict";var DOM=require("../../util/dom"),LngLatBounds=require("../../geo/lng_lat_bounds"),util=require("../../util/util"),window=require("../../util/window"),BoxZoomHandler=function(o){this._map=o,this._el=o.getCanvasContainer(),this._container=o.getContainer(),util.bindAll(["_onMouseDown","_onMouseMove","_onMouseUp","_onKeyDown"],this)};BoxZoomHandler.prototype.isEnabled=function(){return!!this._enabled},BoxZoomHandler.prototype.isActive=function(){return!!this._active},BoxZoomHandler.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener("mousedown",this._onMouseDown,!1),this._enabled=!0)},BoxZoomHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("mousedown",this._onMouseDown),this._enabled=!1)},BoxZoomHandler.prototype._onMouseDown=function(o){o.shiftKey&&0===o.button&&(window.document.addEventListener("mousemove",this._onMouseMove,!1),window.document.addEventListener("keydown",this._onKeyDown,!1),window.document.addEventListener("mouseup",this._onMouseUp,!1),DOM.disableDrag(),this._startPos=DOM.mousePos(this._el,o),this._active=!0)},BoxZoomHandler.prototype._onMouseMove=function(o){var e=this._startPos,t=DOM.mousePos(this._el,o);this._box||(this._box=DOM.create("div","mapboxgl-boxzoom",this._container),this._container.classList.add("mapboxgl-crosshair"),this._fireEvent("boxzoomstart",o));var n=Math.min(e.x,t.x),i=Math.max(e.x,t.x),s=Math.min(e.y,t.y),r=Math.max(e.y,t.y);DOM.setTransform(this._box,"translate("+n+"px,"+s+"px)"),this._box.style.width=i-n+"px",this._box.style.height=r-s+"px"},BoxZoomHandler.prototype._onMouseUp=function(o){if(0===o.button){var e=this._startPos,t=DOM.mousePos(this._el,o),n=(new LngLatBounds).extend(this._map.unproject(e)).extend(this._map.unproject(t));this._finish(),e.x===t.x&&e.y===t.y?this._fireEvent("boxzoomcancel",o):this._map.fitBounds(n,{linear:!0}).fire("boxzoomend",{originalEvent:o,boxZoomBounds:n})}},BoxZoomHandler.prototype._onKeyDown=function(o){27===o.keyCode&&(this._finish(),this._fireEvent("boxzoomcancel",o))},BoxZoomHandler.prototype._finish=function(){this._active=!1,window.document.removeEventListener("mousemove",this._onMouseMove,!1),window.document.removeEventListener("keydown",this._onKeyDown,!1),window.document.removeEventListener("mouseup",this._onMouseUp,!1),this._container.classList.remove("mapboxgl-crosshair"),this._box&&(this._box.parentNode.removeChild(this._box),this._box=null),DOM.enableDrag()},BoxZoomHandler.prototype._fireEvent=function(o,e){return this._map.fire(o,{originalEvent:e})},module.exports=BoxZoomHandler; -},{"../../geo/lng_lat_bounds":63,"../../util/dom":199,"../../util/util":212,"../../util/window":194}],180:[function(require,module,exports){ -"use strict";var DoubleClickZoomHandler=function(o){this._map=o,this._onDblClick=this._onDblClick.bind(this)};DoubleClickZoomHandler.prototype.isEnabled=function(){return!!this._enabled},DoubleClickZoomHandler.prototype.enable=function(){this.isEnabled()||(this._map.on("dblclick",this._onDblClick),this._enabled=!0)},DoubleClickZoomHandler.prototype.disable=function(){this.isEnabled()&&(this._map.off("dblclick",this._onDblClick),this._enabled=!1)},DoubleClickZoomHandler.prototype._onDblClick=function(o){this._map.zoomTo(this._map.getZoom()+(o.originalEvent.shiftKey?-1:1),{around:o.lngLat},o)},module.exports=DoubleClickZoomHandler; -},{}],181:[function(require,module,exports){ -"use strict";var DOM=require("../../util/dom"),util=require("../../util/util"),window=require("../../util/window"),inertiaLinearity=.3,inertiaEasing=util.bezier(0,0,inertiaLinearity,1),inertiaMaxSpeed=1400,inertiaDeceleration=2500,DragPanHandler=function(t){this._map=t,this._el=t.getCanvasContainer(),util.bindAll(["_onDown","_onMove","_onUp","_onTouchEnd","_onMouseUp"],this)};DragPanHandler.prototype.isEnabled=function(){return!!this._enabled},DragPanHandler.prototype.isActive=function(){return!!this._active},DragPanHandler.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener("mousedown",this._onDown),this._el.addEventListener("touchstart",this._onDown),this._enabled=!0)},DragPanHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("mousedown",this._onDown),this._el.removeEventListener("touchstart",this._onDown),this._enabled=!1)},DragPanHandler.prototype._onDown=function(t){this._ignoreEvent(t)||this.isActive()||(t.touches?(window.document.addEventListener("touchmove",this._onMove),window.document.addEventListener("touchend",this._onTouchEnd)):(window.document.addEventListener("mousemove",this._onMove),window.document.addEventListener("mouseup",this._onMouseUp)),window.addEventListener("blur",this._onMouseUp),this._active=!1,this._startPos=this._pos=DOM.mousePos(this._el,t),this._inertia=[[Date.now(),this._pos]])},DragPanHandler.prototype._onMove=function(t){if(!this._ignoreEvent(t)){this.isActive()||(this._active=!0,this._map.moving=!0,this._fireEvent("dragstart",t),this._fireEvent("movestart",t));var e=DOM.mousePos(this._el,t),n=this._map;n.stop(),this._drainInertiaBuffer(),this._inertia.push([Date.now(),e]),n.transform.setLocationAtPoint(n.transform.pointLocation(this._pos),e),this._fireEvent("drag",t),this._fireEvent("move",t),this._pos=e,t.preventDefault()}},DragPanHandler.prototype._onUp=function(t){var e=this;if(this.isActive()){this._active=!1,this._fireEvent("dragend",t),this._drainInertiaBuffer();var n=function(){e._map.moving=!1,e._fireEvent("moveend",t)},i=this._inertia;if(i.length<2)return void n();var o=i[i.length-1],r=i[0],a=o[1].sub(r[1]),s=(o[0]-r[0])/1e3;if(0===s||o[1].equals(r[1]))return void n();var u=a.mult(inertiaLinearity/s),d=u.mag();d>inertiaMaxSpeed&&(d=inertiaMaxSpeed,u._unit()._mult(d));var h=d/(inertiaDeceleration*inertiaLinearity),v=u.mult(-h/2);this._map.panBy(v,{duration:1e3*h,easing:inertiaEasing,noMoveStart:!0},{originalEvent:t})}},DragPanHandler.prototype._onMouseUp=function(t){this._ignoreEvent(t)||(this._onUp(t),window.document.removeEventListener("mousemove",this._onMove),window.document.removeEventListener("mouseup",this._onMouseUp),window.removeEventListener("blur",this._onMouseUp))},DragPanHandler.prototype._onTouchEnd=function(t){this._ignoreEvent(t)||(this._onUp(t),window.document.removeEventListener("touchmove",this._onMove),window.document.removeEventListener("touchend",this._onTouchEnd))},DragPanHandler.prototype._fireEvent=function(t,e){return this._map.fire(t,{originalEvent:e})},DragPanHandler.prototype._ignoreEvent=function(t){var e=this._map;if(e.boxZoom&&e.boxZoom.isActive())return!0;if(e.dragRotate&&e.dragRotate.isActive())return!0;if(t.touches)return t.touches.length>1;if(t.ctrlKey)return!0;var n=1,i=0;return"mousemove"===t.type?t.buttons&0===n:t.button&&t.button!==i},DragPanHandler.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now(),n=160;t.length>0&&e-t[0][0]>n;)t.shift()},module.exports=DragPanHandler; -},{"../../util/dom":199,"../../util/util":212,"../../util/window":194}],182:[function(require,module,exports){ -"use strict";var DOM=require("../../util/dom"),util=require("../../util/util"),window=require("../../util/window"),inertiaLinearity=.25,inertiaEasing=util.bezier(0,0,inertiaLinearity,1),inertiaMaxSpeed=180,inertiaDeceleration=720,DragRotateHandler=function(t,e){this._map=t,this._el=t.getCanvasContainer(),this._bearingSnap=e.bearingSnap,this._pitchWithRotate=e.pitchWithRotate!==!1,util.bindAll(["_onDown","_onMove","_onUp"],this)};DragRotateHandler.prototype.isEnabled=function(){return!!this._enabled},DragRotateHandler.prototype.isActive=function(){return!!this._active},DragRotateHandler.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener("mousedown",this._onDown),this._enabled=!0)},DragRotateHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("mousedown",this._onDown),this._enabled=!1)},DragRotateHandler.prototype._onDown=function(t){this._ignoreEvent(t)||this.isActive()||(window.document.addEventListener("mousemove",this._onMove),window.document.addEventListener("mouseup",this._onUp),window.addEventListener("blur",this._onUp),this._active=!1,this._inertia=[[Date.now(),this._map.getBearing()]],this._startPos=this._pos=DOM.mousePos(this._el,t),this._center=this._map.transform.centerPoint,t.preventDefault())},DragRotateHandler.prototype._onMove=function(t){if(!this._ignoreEvent(t)){this.isActive()||(this._active=!0,this._map.moving=!0,this._fireEvent("rotatestart",t),this._fireEvent("movestart",t));var e=this._map;e.stop();var i=this._pos,n=DOM.mousePos(this._el,t),r=.8*(i.x-n.x),a=(i.y-n.y)*-.5,o=e.getBearing()-r,s=e.getPitch()-a,h=this._inertia,v=h[h.length-1];this._drainInertiaBuffer(),h.push([Date.now(),e._normalizeBearing(o,v[1])]),e.transform.bearing=o,this._pitchWithRotate&&(e.transform.pitch=s),this._fireEvent("rotate",t),this._fireEvent("move",t),this._pos=n}},DragRotateHandler.prototype._onUp=function(t){var e=this;if(!this._ignoreEvent(t)&&(window.document.removeEventListener("mousemove",this._onMove),window.document.removeEventListener("mouseup",this._onUp),window.removeEventListener("blur",this._onUp),this.isActive())){this._active=!1,this._fireEvent("rotateend",t),this._drainInertiaBuffer();var i=this._map,n=i.getBearing(),r=this._inertia,a=function(){Math.abs(n)inertiaMaxSpeed&&(p=inertiaMaxSpeed);var l=p/(inertiaDeceleration*inertiaLinearity),g=u*p*(l/2);v+=g,Math.abs(i._normalizeBearing(v,0))1;var i=t.ctrlKey?1:2,n=t.ctrlKey?0:2,r=t.button;return"undefined"!=typeof InstallTrigger&&2===t.button&&t.ctrlKey&&window.navigator.platform.toUpperCase().indexOf("MAC")>=0&&(r=0),"mousemove"===t.type?t.buttons&0===i:!this.isActive()&&r!==n},DragRotateHandler.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now(),i=160;t.length>0&&e-t[0][0]>i;)t.shift()},module.exports=DragRotateHandler; -},{"../../util/dom":199,"../../util/util":212,"../../util/window":194}],183:[function(require,module,exports){ -"use strict";function easeOut(e){return e*(2-e)}var panStep=100,bearingStep=15,pitchStep=10,KeyboardHandler=function(e){this._map=e,this._el=e.getCanvasContainer(),this._onKeyDown=this._onKeyDown.bind(this)};KeyboardHandler.prototype.isEnabled=function(){return!!this._enabled},KeyboardHandler.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener("keydown",this._onKeyDown,!1),this._enabled=!0)},KeyboardHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("keydown",this._onKeyDown),this._enabled=!1)},KeyboardHandler.prototype._onKeyDown=function(e){if(!(e.altKey||e.ctrlKey||e.metaKey)){var t=0,n=0,a=0,i=0,r=0;switch(e.keyCode){case 61:case 107:case 171:case 187:t=1;break;case 189:case 109:case 173:t=-1;break;case 37:e.shiftKey?n=-1:(e.preventDefault(),i=-1);break;case 39:e.shiftKey?n=1:(e.preventDefault(),i=1);break;case 38:e.shiftKey?a=1:(e.preventDefault(),r=-1);break;case 40:e.shiftKey?a=-1:(r=1,e.preventDefault())}var s=this._map,o=s.getZoom(),d={duration:300,delayEndEvents:500,easing:easeOut,zoom:t?Math.round(o)+t*(e.shiftKey?2:1):o,bearing:s.getBearing()+n*bearingStep,pitch:s.getPitch()+a*pitchStep,offset:[-i*panStep,-r*panStep],center:s.getCenter()};s.easeTo(d,{originalEvent:e})}},module.exports=KeyboardHandler; -},{}],184:[function(require,module,exports){ -"use strict";var DOM=require("../../util/dom"),util=require("../../util/util"),browser=require("../../util/browser"),window=require("../../util/window"),ua=window.navigator.userAgent.toLowerCase(),firefox=ua.indexOf("firefox")!==-1,safari=ua.indexOf("safari")!==-1&&ua.indexOf("chrom")===-1,ScrollZoomHandler=function(e){this._map=e,this._el=e.getCanvasContainer(),util.bindAll(["_onWheel","_onTimeout"],this)};ScrollZoomHandler.prototype.isEnabled=function(){return!!this._enabled},ScrollZoomHandler.prototype.enable=function(e){this.isEnabled()||(this._el.addEventListener("wheel",this._onWheel,!1),this._el.addEventListener("mousewheel",this._onWheel,!1),this._enabled=!0,this._aroundCenter=e&&"center"===e.around)},ScrollZoomHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("wheel",this._onWheel),this._el.removeEventListener("mousewheel",this._onWheel),this._enabled=!1)},ScrollZoomHandler.prototype._onWheel=function(e){var t;"wheel"===e.type?(t=e.deltaY,firefox&&e.deltaMode===window.WheelEvent.DOM_DELTA_PIXEL&&(t/=browser.devicePixelRatio),e.deltaMode===window.WheelEvent.DOM_DELTA_LINE&&(t*=40)):"mousewheel"===e.type&&(t=-e.wheelDeltaY,safari&&(t/=3));var o=browser.now(),i=o-(this._time||0);this._pos=DOM.mousePos(this._el,e),this._time=o,0!==t&&t%4.000244140625===0?this._type="wheel":0!==t&&Math.abs(t)<4?this._type="trackpad":i>400?(this._type=null,this._lastValue=t,this._timeout=setTimeout(this._onTimeout,40)):this._type||(this._type=Math.abs(i*t)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,t+=this._lastValue)),e.shiftKey&&t&&(t/=4),this._type&&this._zoom(-t,e),e.preventDefault()},ScrollZoomHandler.prototype._onTimeout=function(){this._type="wheel",this._zoom(-this._lastValue)},ScrollZoomHandler.prototype._zoom=function(e,t){if(0!==e){var o=this._map,i=2/(1+Math.exp(-Math.abs(e/100)));e<0&&0!==i&&(i=1/i);var l=o.ease?o.ease.to:o.transform.scale,s=o.transform.scaleZoom(l*i);o.zoomTo(s,{duration:"wheel"===this._type?200:0,around:this._aroundCenter?o.getCenter():o.unproject(this._pos),delayEndEvents:200,smoothEasing:!0},{originalEvent:t})}},module.exports=ScrollZoomHandler; -},{"../../util/browser":192,"../../util/dom":199,"../../util/util":212,"../../util/window":194}],185:[function(require,module,exports){ -"use strict";var DOM=require("../../util/dom"),util=require("../../util/util"),window=require("../../util/window"),inertiaLinearity=.15,inertiaEasing=util.bezier(0,0,inertiaLinearity,1),inertiaDeceleration=12,inertiaMaxSpeed=2.5,significantScaleThreshold=.15,significantRotateThreshold=4,TouchZoomRotateHandler=function(t){this._map=t,this._el=t.getCanvasContainer(),util.bindAll(["_onStart","_onMove","_onEnd"],this)};TouchZoomRotateHandler.prototype.isEnabled=function(){return!!this._enabled},TouchZoomRotateHandler.prototype.enable=function(t){this.isEnabled()||(this._el.addEventListener("touchstart",this._onStart,!1),this._enabled=!0,this._aroundCenter=t&&"center"===t.around)},TouchZoomRotateHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("touchstart",this._onStart),this._enabled=!1)},TouchZoomRotateHandler.prototype.disableRotation=function(){this._rotationDisabled=!0},TouchZoomRotateHandler.prototype.enableRotation=function(){this._rotationDisabled=!1},TouchZoomRotateHandler.prototype._onStart=function(t){if(2===t.touches.length){var e=DOM.mousePos(this._el,t.touches[0]),o=DOM.mousePos(this._el,t.touches[1]);this._startVec=e.sub(o),this._startScale=this._map.transform.scale,this._startBearing=this._map.transform.bearing,this._gestureIntent=void 0,this._inertia=[],window.document.addEventListener("touchmove",this._onMove,!1),window.document.addEventListener("touchend",this._onEnd,!1)}},TouchZoomRotateHandler.prototype._onMove=function(t){if(2===t.touches.length){var e=DOM.mousePos(this._el,t.touches[0]),o=DOM.mousePos(this._el,t.touches[1]),i=e.add(o).div(2),n=e.sub(o),a=n.mag()/this._startVec.mag(),r=this._rotationDisabled?0:180*n.angleWith(this._startVec)/Math.PI,s=this._map;if(this._gestureIntent){var h={duration:0,around:s.unproject(i)};"rotate"===this._gestureIntent&&(h.bearing=this._startBearing+r),"zoom"!==this._gestureIntent&&"rotate"!==this._gestureIntent||(h.zoom=s.transform.scaleZoom(this._startScale*a)),s.stop(),this._drainInertiaBuffer(),this._inertia.push([Date.now(),a,i]),s.easeTo(h,{originalEvent:t})}else{var u=Math.abs(1-a)>significantScaleThreshold,d=Math.abs(r)>significantRotateThreshold;d?this._gestureIntent="rotate":u&&(this._gestureIntent="zoom"),this._gestureIntent&&(this._startVec=n,this._startScale=s.transform.scale,this._startBearing=s.transform.bearing)}t.preventDefault()}},TouchZoomRotateHandler.prototype._onEnd=function(t){window.document.removeEventListener("touchmove",this._onMove),window.document.removeEventListener("touchend",this._onEnd),this._drainInertiaBuffer();var e=this._inertia,o=this._map;if(e.length<2)return void o.snapToNorth({},{originalEvent:t});var i=e[e.length-1],n=e[0],a=o.transform.scaleZoom(this._startScale*i[1]),r=o.transform.scaleZoom(this._startScale*n[1]),s=a-r,h=(i[0]-n[0])/1e3,u=i[2];if(0===h||a===r)return void o.snapToNorth({},{originalEvent:t});var d=s*inertiaLinearity/h;Math.abs(d)>inertiaMaxSpeed&&(d=d>0?inertiaMaxSpeed:-inertiaMaxSpeed);var l=1e3*Math.abs(d/(inertiaDeceleration*inertiaLinearity)),c=a+d*l/2e3;c<0&&(c=0),o.easeTo({zoom:c,duration:l,easing:inertiaEasing,around:this._aroundCenter?o.getCenter():o.unproject(u)},{originalEvent:t})},TouchZoomRotateHandler.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now(),o=160;t.length>2&&e-t[0][0]>o;)t.shift()},module.exports=TouchZoomRotateHandler; -},{"../../util/dom":199,"../../util/util":212,"../../util/window":194}],186:[function(require,module,exports){ -"use strict";var util=require("../util/util"),window=require("../util/window"),Hash=function(){util.bindAll(["_onHashChange","_updateHash"],this)};Hash.prototype.addTo=function(t){return this._map=t,window.addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this},Hash.prototype.remove=function(){return window.removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),delete this._map,this},Hash.prototype._onHashChange=function(){var t=window.location.hash.replace("#","").split("/");return t.length>=3&&(this._map.jumpTo({center:[+t[2],+t[1]],zoom:+t[0],bearing:+(t[3]||0),pitch:+(t[4]||0)}),!0)},Hash.prototype._updateHash=function(){var t=this._map.getCenter(),e=this._map.getZoom(),a=this._map.getBearing(),h=this._map.getPitch(),i=Math.max(0,Math.ceil(Math.log(e)/Math.LN2)),n="#"+Math.round(100*e)/100+"/"+t.lat.toFixed(i)+"/"+t.lng.toFixed(i);(a||h)&&(n+="/"+Math.round(10*a)/10),h&&(n+="/"+Math.round(h)),window.history.replaceState("","",n)},module.exports=Hash; -},{"../util/util":212,"../util/window":194}],187:[function(require,module,exports){ -"use strict";function removeNode(t){t.parentNode&&t.parentNode.removeChild(t)}var util=require("../util/util"),browser=require("../util/browser"),window=require("../util/window"),DOM=require("../util/dom"),Style=require("../style/style"),AnimationLoop=require("../style/animation_loop"),Painter=require("../render/painter"),Transform=require("../geo/transform"),Hash=require("./hash"),bindHandlers=require("./bind_handlers"),Camera=require("./camera"),LngLat=require("../geo/lng_lat"),LngLatBounds=require("../geo/lng_lat_bounds"),Point=require("point-geometry"),AttributionControl=require("./control/attribution_control"),LogoControl=require("./control/logo_control"),isSupported=require("mapbox-gl-supported"),defaultMinZoom=0,defaultMaxZoom=22,defaultOptions={center:[0,0],zoom:0,bearing:0,pitch:0,minZoom:defaultMinZoom,maxZoom:defaultMaxZoom,interactive:!0,scrollZoom:!0,boxZoom:!0,dragRotate:!0,dragPan:!0,keyboard:!0,doubleClickZoom:!0,touchZoomRotate:!0,bearingSnap:7,hash:!1,attributionControl:!0,failIfMajorPerformanceCaveat:!1,preserveDrawingBuffer:!1,trackResize:!0,renderWorldCopies:!0,refreshExpiredTiles:!0},Map=function(t){function e(e){var o=this;if(e=util.extend({},defaultOptions,e),null!=e.minZoom&&null!=e.maxZoom&&e.minZoom>e.maxZoom)throw new Error("maxZoom must be greater than minZoom");var i=new Transform(e.minZoom,e.maxZoom,e.renderWorldCopies);if(t.call(this,i,e),this._interactive=e.interactive,this._failIfMajorPerformanceCaveat=e.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=e.preserveDrawingBuffer,this._trackResize=e.trackResize,this._bearingSnap=e.bearingSnap,this._refreshExpiredTiles=e.refreshExpiredTiles,"string"==typeof e.container){if(this._container=window.document.getElementById(e.container),!this._container)throw new Error("Container '"+e.container+"' not found.")}else this._container=e.container;this.animationLoop=new AnimationLoop,e.maxBounds&&this.setMaxBounds(e.maxBounds),util.bindAll(["_onWindowOnline","_onWindowResize","_contextLost","_contextRestored","_update","_render","_onData","_onDataLoading"],this),this._setupContainer(),this._setupPainter(),this.on("move",this._update.bind(this,!1)),this.on("zoom",this._update.bind(this,!0)),this.on("moveend",function(){o.animationLoop.set(300),o._rerender()}),"undefined"!=typeof window&&(window.addEventListener("online",this._onWindowOnline,!1),window.addEventListener("resize",this._onWindowResize,!1)),bindHandlers(this,e),this._hash=e.hash&&(new Hash).addTo(this),this._hash&&this._hash._onHashChange()||this.jumpTo({center:e.center,zoom:e.zoom,bearing:e.bearing,pitch:e.pitch}),this._classes=[],this.resize(),e.classes&&this.setClasses(e.classes),e.style&&this.setStyle(e.style),e.attributionControl&&this.addControl(new AttributionControl),this.addControl(new LogoControl,e.logoPosition),this.on("style.load",function(){this.transform.unmodified&&this.jumpTo(this.style.stylesheet),this.style.update(this._classes,{transition:!1})}),this.on("data",this._onData),this.on("dataloading",this._onDataLoading)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var o={showTileBoundaries:{},showCollisionBoxes:{},showOverdrawInspector:{},repaint:{},vertices:{}};return e.prototype.addControl=function(t,e){void 0===e&&t.getDefaultPosition&&(e=t.getDefaultPosition()),void 0===e&&(e="top-right");var o=t.onAdd(this),i=this._controlPositions[e];return e.indexOf("bottom")!==-1?i.insertBefore(o,i.firstChild):i.appendChild(o),this},e.prototype.removeControl=function(t){return t.onRemove(this),this},e.prototype.addClass=function(t,e){return util.warnOnce("Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS."),this._classes.indexOf(t)>=0||""===t?this:(this._classes.push(t),this._classOptions=e,this.style&&this.style.updateClasses(),this._update(!0))},e.prototype.removeClass=function(t,e){util.warnOnce("Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.");var o=this._classes.indexOf(t);return o<0||""===t?this:(this._classes.splice(o,1),this._classOptions=e,this.style&&this.style.updateClasses(),this._update(!0))},e.prototype.setClasses=function(t,e){util.warnOnce("Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.");for(var o={},i=0;i=0},e.prototype.getClasses=function(){return util.warnOnce("Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS."),this._classes},e.prototype.resize=function(){var t=this._containerDimensions(),e=t[0],o=t[1];return this._resizeCanvas(e,o),this.transform.resize(e,o),this.painter.resize(e,o),this.fire("movestart").fire("move").fire("resize").fire("moveend")},e.prototype.getBounds=function(){var t=new LngLatBounds(this.transform.pointLocation(new Point(0,this.transform.height)),this.transform.pointLocation(new Point(this.transform.width,0)));return(this.transform.angle||this.transform.pitch)&&(t.extend(this.transform.pointLocation(new Point(this.transform.size.x,0))),t.extend(this.transform.pointLocation(new Point(0,this.transform.size.y)))),t},e.prototype.setMaxBounds=function(t){if(t){var e=LngLatBounds.convert(t);this.transform.lngRange=[e.getWest(),e.getEast()],this.transform.latRange=[e.getSouth(),e.getNorth()],this.transform._constrain(),this._update()}else null!==t&&void 0!==t||(this.transform.lngRange=[],this.transform.latRange=[],this._update());return this},e.prototype.setMinZoom=function(t){if(t=null===t||void 0===t?defaultMinZoom:t,t>=defaultMinZoom&&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")},e.prototype.getMaxZoom=function(){return this.transform.maxZoom},e.prototype.project=function(t){return this.transform.locationPoint(LngLat.convert(t))},e.prototype.unproject=function(t){return this.transform.pointLocation(Point.convert(t))},e.prototype.queryRenderedFeatures=function(){function t(t){return t instanceof Point||Array.isArray(t)}var e,o={};return 2===arguments.length?(e=arguments[0],o=arguments[1]):1===arguments.length&&t(arguments[0])?e=arguments[0]:1===arguments.length&&(o=arguments[0]),this.style.queryRenderedFeatures(this._makeQueryGeometry(e),o,this.transform.zoom,this.transform.angle)},e.prototype._makeQueryGeometry=function(t){var e=this;void 0===t&&(t=[Point.convert([0,0]),Point.convert([this.transform.width,this.transform.height])]);var o,i=t instanceof Point||"number"==typeof t[0];if(i){var r=Point.convert(t);o=[r]}else{var s=[Point.convert(t[0]),Point.convert(t[1])];o=[s[0],new Point(s[1].x,s[0].y),s[1],new Point(s[0].x,s[1].y),s[0]]}return o=o.map(function(t){return e.transform.pointCoordinate(t)})},e.prototype.querySourceFeatures=function(t,e){return this.style.querySourceFeatures(t,e)},e.prototype.setStyle=function(t,e){var o=(!e||e.diff!==!1)&&this.style&&t&&!(t instanceof Style)&&"string"!=typeof t;if(o)try{return this.style.setState(t)&&this._update(!0),this}catch(t){util.warnOnce("Unable to perform style diff: "+(t.message||t.error||t)+". Rebuilding the style from scratch.")}return this.style&&(this.style.setEventedParent(null),this.style._remove(),this.off("rotate",this.style._redoPlacement),this.off("pitch",this.style._redoPlacement)),t?(t instanceof Style?this.style=t:this.style=new Style(t,this),this.style.setEventedParent(this,{style:this.style}),this.on("rotate",this.style._redoPlacement),this.on("pitch",this.style._redoPlacement),this):(this.style=null,this)},e.prototype.getStyle=function(){if(this.style)return this.style.serialize()},e.prototype.addSource=function(t,e){return this.style.addSource(t,e),this._update(!0),this},e.prototype.isSourceLoaded=function(t){var e=this.style&&this.style.sourceCaches[t];return void 0===e?void this.fire("error",{error:new Error("There is no source with ID '"+t+"'")}):e.loaded()},e.prototype.addSourceType=function(t,e,o){return this.style.addSourceType(t,e,o)},e.prototype.removeSource=function(t){return this.style.removeSource(t),this._update(!0),this},e.prototype.getSource=function(t){return this.style.getSource(t)},e.prototype.addImage=function(t,e,o){this.style.spriteAtlas.addImage(t,e,o)},e.prototype.removeImage=function(t){this.style.spriteAtlas.removeImage(t)},e.prototype.addLayer=function(t,e){return this.style.addLayer(t,e),this._update(!0),this},e.prototype.moveLayer=function(t,e){return this.style.moveLayer(t,e),this._update(!0),this},e.prototype.removeLayer=function(t){return this.style.removeLayer(t),this._update(!0),this},e.prototype.getLayer=function(t){return this.style.getLayer(t)},e.prototype.setFilter=function(t,e){return this.style.setFilter(t,e),this._update(!0),this},e.prototype.setLayerZoomRange=function(t,e,o){return this.style.setLayerZoomRange(t,e,o),this._update(!0),this},e.prototype.getFilter=function(t){return this.style.getFilter(t)},e.prototype.setPaintProperty=function(t,e,o,i){return this.style.setPaintProperty(t,e,o,i),this._update(!0),this},e.prototype.getPaintProperty=function(t,e,o){return this.style.getPaintProperty(t,e,o)},e.prototype.setLayoutProperty=function(t,e,o){return this.style.setLayoutProperty(t,e,o),this._update(!0),this},e.prototype.getLayoutProperty=function(t,e){return this.style.getLayoutProperty(t,e)},e.prototype.setLight=function(t){return this.style.setLight(t),this._update(!0),this},e.prototype.getLight=function(){return this.style.getLight()},e.prototype.getContainer=function(){return this._container},e.prototype.getCanvasContainer=function(){return this._canvasContainer},e.prototype.getCanvas=function(){return this._canvas},e.prototype._containerDimensions=function(){var t=0,e=0;return this._container&&(t=this._container.offsetWidth||400,e=this._container.offsetHeight||300),[t,e]},e.prototype._setupContainer=function(){var t=this._container;t.classList.add("mapboxgl-map");var e=this._canvasContainer=DOM.create("div","mapboxgl-canvas-container",t);this._interactive&&e.classList.add("mapboxgl-interactive"),this._canvas=DOM.create("canvas","mapboxgl-canvas",e),this._canvas.style.position="absolute",this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("tabindex",0),this._canvas.setAttribute("aria-label","Map");var o=this._containerDimensions();this._resizeCanvas(o[0],o[1]);var i=this._controlContainer=DOM.create("div","mapboxgl-control-container",t),r=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(function(t){r[t]=DOM.create("div","mapboxgl-ctrl-"+t,i)})},e.prototype._resizeCanvas=function(t,e){var o=window.devicePixelRatio||1;this._canvas.width=o*t,this._canvas.height=o*e,this._canvas.style.width=t+"px",this._canvas.style.height=e+"px"},e.prototype._setupPainter=function(){var t=util.extend({failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer},isSupported.webGLContextAttributes),e=this._canvas.getContext("webgl",t)||this._canvas.getContext("experimental-webgl",t);return e?void(this.painter=new Painter(e,this.transform)):void this.fire("error",{error:new Error("Failed to initialize WebGL")})},e.prototype._contextLost=function(t){t.preventDefault(),this._frameId&&browser.cancelFrame(this._frameId),this.fire("webglcontextlost",{originalEvent:t})},e.prototype._contextRestored=function(t){this._setupPainter(),this.resize(),this._update(),this.fire("webglcontextrestored",{originalEvent:t})},e.prototype.loaded=function(){return!this._styleDirty&&!this._sourcesDirty&&!(!this.style||!this.style.loaded())},e.prototype._update=function(t){return this.style?(this._styleDirty=this._styleDirty||t,this._sourcesDirty=!0,this._rerender(),this):this},e.prototype._render=function(){return this.style&&this._styleDirty&&(this._styleDirty=!1,this.style.update(this._classes,this._classOptions),this._classOptions=null,this.style._recalculate(this.transform.zoom)),this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.rotating,zooming:this.zooming}),this.fire("render"),this.loaded()&&!this._loaded&&(this._loaded=!0,this.fire("load")),this._frameId=null,this.animationLoop.stopped()||(this._styleDirty=!0),(this._sourcesDirty||this._repaint||this._styleDirty)&&this._rerender(),this},e.prototype.remove=function(){this._hash&&this._hash.remove(),browser.cancelFrame(this._frameId),this.setStyle(null),"undefined"!=typeof window&&(window.removeEventListener("resize",this._onWindowResize,!1),window.removeEventListener("online",this._onWindowOnline,!1));var t=this.painter.gl.getExtension("WEBGL_lose_context");t&&t.loseContext(),removeNode(this._canvasContainer),removeNode(this._controlContainer),this._container.classList.remove("mapboxgl-map"),this.fire("remove")},e.prototype._rerender=function(){this.style&&!this._frameId&&(this._frameId=browser.frame(this._render))},e.prototype._onWindowOnline=function(){this._update()},e.prototype._onWindowResize=function(){this._trackResize&&this.stop().resize()._update()},o.showTileBoundaries.get=function(){return!!this._showTileBoundaries},o.showTileBoundaries.set=function(t){this._showTileBoundaries!==t&&(this._showTileBoundaries=t,this._update())},o.showCollisionBoxes.get=function(){return!!this._showCollisionBoxes},o.showCollisionBoxes.set=function(t){this._showCollisionBoxes!==t&&(this._showCollisionBoxes=t,this.style._redoPlacement())},o.showOverdrawInspector.get=function(){return!!this._showOverdrawInspector},o.showOverdrawInspector.set=function(t){this._showOverdrawInspector!==t&&(this._showOverdrawInspector=t,this._update())},o.repaint.get=function(){return!!this._repaint},o.repaint.set=function(t){this._repaint=t,this._update()},o.vertices.get=function(){return!!this._vertices},o.vertices.set=function(t){this._vertices=t,this._update()},e.prototype._onData=function(t){this._update("style"===t.dataType),this.fire(t.dataType+"data",t)},e.prototype._onDataLoading=function(t){this.fire(t.dataType+"dataloading",t)},Object.defineProperties(e.prototype,o),e}(Camera);module.exports=Map; -},{"../geo/lng_lat":62,"../geo/lng_lat_bounds":63,"../geo/transform":64,"../render/painter":77,"../style/animation_loop":143,"../style/style":146,"../util/browser":192,"../util/dom":199,"../util/util":212,"../util/window":194,"./bind_handlers":171,"./camera":172,"./control/attribution_control":173,"./control/logo_control":176,"./hash":186,"mapbox-gl-supported":22,"point-geometry":26}],188:[function(require,module,exports){ -"use strict";var DOM=require("../util/dom"),LngLat=require("../geo/lng_lat"),Point=require("point-geometry"),Marker=function(t,e){this._offset=Point.convert(e&&e.offset||[0,0]),this._update=this._update.bind(this),this._onMapClick=this._onMapClick.bind(this),t||(t=DOM.create("div")),t.classList.add("mapboxgl-marker"),this._element=t,this._popup=null};Marker.prototype.addTo=function(t){return this.remove(),this._map=t,t.getCanvasContainer().appendChild(this._element),t.on("move",this._update),t.on("moveend",this._update),this._update(),this._map.on("click",this._onMapClick),this},Marker.prototype.remove=function(){return this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),this._map=null),DOM.remove(this._element),this._popup&&this._popup.remove(),this},Marker.prototype.getLngLat=function(){return this._lngLat},Marker.prototype.setLngLat=function(t){return this._lngLat=LngLat.convert(t),this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this},Marker.prototype.getElement=function(){return this._element},Marker.prototype.setPopup=function(t){return this._popup&&(this._popup.remove(),this._popup=null),t&&(this._popup=t,this._popup.setLngLat(this._lngLat)),this},Marker.prototype._onMapClick=function(t){var e=t.originalEvent.target,p=this._element;this._popup&&(e===p||p.contains(e))&&this.togglePopup()},Marker.prototype.getPopup=function(){return this._popup},Marker.prototype.togglePopup=function(){var t=this._popup;t&&(t.isOpen()?t.remove():t.addTo(this._map))},Marker.prototype._update=function(t){if(this._map){var e=this._map.project(this._lngLat)._add(this._offset);t&&"moveend"!==t.type||(e=e.round()),DOM.setTransform(this._element,"translate("+e.x+"px, "+e.y+"px)")}},module.exports=Marker; -},{"../geo/lng_lat":62,"../util/dom":199,"point-geometry":26}],189:[function(require,module,exports){ -"use strict";function normalizeOffset(t){if(t){if("number"==typeof t){var o=Math.round(Math.sqrt(.5*Math.pow(t,2)));return{top:new Point(0,t),"top-left":new Point(o,o),"top-right":new Point(-o,o),bottom:new Point(0,-t),"bottom-left":new Point(o,-o),"bottom-right":new Point(-o,-o),left:new Point(t,0),right:new Point(-t,0)}}if(isPointLike(t)){var e=Point.convert(t);return{top:e,"top-left":e,"top-right":e,bottom:e,"bottom-left":e,"bottom-right":e,left:e,right:e}}return{top:Point.convert(t.top||[0,0]),"top-left":Point.convert(t["top-left"]||[0,0]),"top-right":Point.convert(t["top-right"]||[0,0]),bottom:Point.convert(t.bottom||[0,0]),"bottom-left":Point.convert(t["bottom-left"]||[0,0]),"bottom-right":Point.convert(t["bottom-right"]||[0,0]),left:Point.convert(t.left||[0,0]),right:Point.convert(t.right||[0,0])}}return normalizeOffset(new Point(0,0))}function isPointLike(t){return t instanceof Point||Array.isArray(t)}var util=require("../util/util"),Evented=require("../util/evented"),DOM=require("../util/dom"),LngLat=require("../geo/lng_lat"),Point=require("point-geometry"),window=require("../util/window"),defaultOptions={closeButton:!0,closeOnClick:!0},Popup=function(t){function o(o){t.call(this),this.options=util.extend(Object.create(defaultOptions),o),util.bindAll(["_update","_onClickClose"],this)}return t&&(o.__proto__=t),o.prototype=Object.create(t&&t.prototype),o.prototype.constructor=o,o.prototype.addTo=function(t){return this._map=t,this._map.on("move",this._update),this.options.closeOnClick&&this._map.on("click",this._onClickClose),this._update(),this},o.prototype.isOpen=function(){return!!this._map},o.prototype.remove=function(){return this._content&&this._content.parentNode&&this._content.parentNode.removeChild(this._content),this._container&&(this._container.parentNode.removeChild(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("click",this._onClickClose),delete this._map),this.fire("close"),this},o.prototype.getLngLat=function(){return this._lngLat},o.prototype.setLngLat=function(t){return this._lngLat=LngLat.convert(t),this._update(),this},o.prototype.setText=function(t){return this.setDOMContent(window.document.createTextNode(t))},o.prototype.setHTML=function(t){var o,e=window.document.createDocumentFragment(),n=window.document.createElement("body");for(n.innerHTML=t;;){if(o=n.firstChild,!o)break;e.appendChild(o)}return this.setDOMContent(e)},o.prototype.setDOMContent=function(t){return this._createContent(),this._content.appendChild(t),this._update(),this},o.prototype._createContent=function(){this._content&&this._content.parentNode&&this._content.parentNode.removeChild(this._content),this._content=DOM.create("div","mapboxgl-popup-content",this._container),this.options.closeButton&&(this._closeButton=DOM.create("button","mapboxgl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClickClose))},o.prototype._update=function(){if(this._map&&this._lngLat&&this._content){this._container||(this._container=DOM.create("div","mapboxgl-popup",this._map.getContainer()),this._tip=DOM.create("div","mapboxgl-popup-tip",this._container),this._container.appendChild(this._content));var t=this.options.anchor,o=normalizeOffset(this.options.offset),e=this._map.project(this._lngLat).round();if(!t){var n=this._container.offsetWidth,i=this._container.offsetHeight;t=e.y+o.bottom.ythis._map.transform.height-i?["bottom"]:[],e.xthis._map.transform.width-n/2&&t.push("right"),t=0===t.length?"bottom":t.join("-")}var r=e.add(o[t]),s={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%)"},p=this._container.classList;for(var a in s)p.remove("mapboxgl-popup-anchor-"+a);p.add("mapboxgl-popup-anchor-"+t),DOM.setTransform(this._container,s[t]+" translate("+r.x+"px,"+r.y+"px)")}},o.prototype._onClickClose=function(){this.remove()},o}(Evented);module.exports=Popup; -},{"../geo/lng_lat":62,"../util/dom":199,"../util/evented":200,"../util/util":212,"../util/window":194,"point-geometry":26}],190:[function(require,module,exports){ -"use strict";var Actor=function(t,e,a){this.target=t,this.parent=e,this.mapId=a,this.callbacks={},this.callbackID=0,this.receive=this.receive.bind(this),this.target.addEventListener("message",this.receive,!1)};Actor.prototype.send=function(t,e,a,r,s){var i=a?this.mapId+":"+this.callbackID++:null;a&&(this.callbacks[i]=a),this.target.postMessage({targetMapId:s,sourceMapId:this.mapId,type:t,id:String(i),data:e},r)},Actor.prototype.receive=function(t){var e,a=this,r=t.data,s=r.id;if(!r.targetMapId||this.mapId===r.targetMapId){var i=function(t,e,r){a.target.postMessage({sourceMapId:a.mapId,type:"",id:String(s),error:t?String(t):null,data:e},r)};if(""===r.type)e=this.callbacks[r.id],delete this.callbacks[r.id],e&&e(r.error||null,r.data);else if("undefined"!=typeof r.id&&this.parent[r.type])this.parent[r.type](r.sourceMapId,r.data,i);else if("undefined"!=typeof r.id&&this.parent.getWorkerSource){var p=r.type.split("."),d=this.parent.getWorkerSource(r.sourceMapId,p[0]);d[p[1]](r.data,i)}else this.parent[r.type](r.data)}},Actor.prototype.remove=function(){this.target.removeEventListener("message",this.receive,!1)},module.exports=Actor; -},{}],191:[function(require,module,exports){ -"use strict";function sameOrigin(e){var t=window.document.createElement("a");return t.href=e,t.protocol===window.document.location.protocol&&t.host===window.document.location.host}var window=require("./window");exports.getJSON=function(e,t){var n=new window.XMLHttpRequest;return n.open("GET",e,!0),n.setRequestHeader("Accept","application/json"),n.onerror=function(e){t(e)},n.onload=function(){if(n.status>=200&&n.status<300&&n.response){var e;try{e=JSON.parse(n.response)}catch(e){return t(e)}t(null,e)}else t(new Error(n.statusText))},n.send(),n},exports.getArrayBuffer=function(e,t){var n=new window.XMLHttpRequest;return n.open("GET",e,!0),n.responseType="arraybuffer",n.onerror=function(e){t(e)},n.onload=function(){return 0===n.response.byteLength&&200===n.status?t(new Error("http status 200 returned without content.")):void(n.status>=200&&n.status<300&&n.response?t(null,{data:n.response,cacheControl:n.getResponseHeader("Cache-Control"),expires:n.getResponseHeader("Expires")}):t(new Error(n.statusText)))},n.send(),n};var transparentPngUrl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";exports.getImage=function(e,t){return exports.getArrayBuffer(e,function(e,n){if(e)return t(e);var r=new window.Image,o=window.URL||window.webkitURL;r.onload=function(){t(null,r),o.revokeObjectURL(r.src)};var a=new window.Blob([new Uint8Array(n.data)],{type:"image/png"});r.cacheControl=n.cacheControl,r.expires=n.expires,r.src=n.data.byteLength?o.createObjectURL(a):transparentPngUrl})},exports.getVideo=function(e,t){var n=window.document.createElement("video");n.onloadstart=function(){t(null,n)};for(var r=0;r=a+n?e.call(t,1):(e.call(t,(i-a)/n),exports.frame(o)))}if(!n)return e.call(t,1),null;var r=!1,a=module.exports.now();return exports.frame(o),function(){r=!0}},exports.getImageData=function(e){var n=window.document.createElement("canvas"),t=n.getContext("2d");return n.width=e.width,n.height=e.height,t.drawImage(e,0,0),t.getImageData(0,0,e.width,e.height).data},exports.supported=require("mapbox-gl-supported"),exports.hardwareConcurrency=window.navigator.hardwareConcurrency||4,Object.defineProperty(exports,"devicePixelRatio",{get:function(){return window.devicePixelRatio}}),exports.supportsWebp=!1;var webpImgTest=window.document.createElement("img");webpImgTest.onload=function(){exports.supportsWebp=!0},webpImgTest.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA="; -},{"./window":194,"mapbox-gl-supported":22}],193:[function(require,module,exports){ -"use strict";var WebWorkify=require("webworkify"),window=require("../window"),workerURL=window.URL.createObjectURL(new WebWorkify(require("../../source/worker"),{bare:!0}));module.exports=function(){return new window.Worker(workerURL)}; -},{"../../source/worker":98,"../window":194,"webworkify":41}],194:[function(require,module,exports){ -"use strict";module.exports=self; -},{}],195:[function(require,module,exports){ -"use strict";function compareAreas(e,r){return r.area-e.area}var quickselect=require("quickselect"),calculateSignedArea=require("./util").calculateSignedArea;module.exports=function(e,r){var a=e.length;if(a<=1)return[e];for(var t,u,c=[],i=0;i1)for(var n=0;n0||this._oneTimeListeners&&this._oneTimeListeners[e]&&this._oneTimeListeners[e].length>0||this._eventedParent&&this._eventedParent.listens(e)},Evented.prototype.setEventedParent=function(e,t){return this._eventedParent=e,this._eventedParentData=t,this},module.exports=Evented; -},{"./util":212}],201:[function(require,module,exports){ -"use strict";function compareMax(e,t){return t.max-e.max}function Cell(e,t,n,r){this.p=new Point(e,t),this.h=n,this.d=pointToPolygonDist(this.p,r),this.max=this.d+this.h*Math.SQRT2}function pointToPolygonDist(e,t){for(var n=!1,r=1/0,o=0;oe.y!=h.y>e.y&&e.x<(h.x-a.x)*(e.y-a.y)/(h.y-a.y)+a.x&&(n=!n),r=Math.min(r,distToSegmentSquared(e,a,h))}return(n?1:-1)*Math.sqrt(r)}function getCentroidCell(e){for(var t=0,n=0,r=0,o=e[0],i=0,l=o.length,u=l-1;ii)&&(i=a.x),(!s||a.y>l)&&(l=a.y)}var h=i-r,p=l-o,y=Math.min(h,p),x=y/2,d=new Queue(null,compareMax);if(0===y)return[r,o];for(var g=r;gm.d||!m.d)&&(m=v,n&&console.log("found best %d after %d probes",Math.round(1e4*v.d)/1e4,c)),v.max-m.d<=t||(x=v.h/2,d.push(new Cell(v.p.x-x,v.p.y-x,x,e)),d.push(new Cell(v.p.x+x,v.p.y-x,x,e)),d.push(new Cell(v.p.x-x,v.p.y+x,x,e)),d.push(new Cell(v.p.x+x,v.p.y+x,x,e)),c+=4)}return n&&(console.log("num probes: "+c),console.log("best distance: "+m.d)),m.p}; -},{"./intersection_tests":205,"point-geometry":26,"tinyqueue":30}],202:[function(require,module,exports){ -"use strict";var WorkerPool=require("./worker_pool"),globalWorkerPool;module.exports=function(){return globalWorkerPool||(globalWorkerPool=new WorkerPool),globalWorkerPool}; -},{"./worker_pool":215}],203:[function(require,module,exports){ -"use strict";function Glyphs(a,e){this.stacks=a.readFields(readFontstacks,[],e)}function readFontstacks(a,e,r){if(1===a){var t=r.readMessage(readFontstack,{glyphs:{}});e.push(t)}}function readFontstack(a,e,r){if(1===a)e.name=r.readString();else if(2===a)e.range=r.readString();else if(3===a){var t=r.readMessage(readGlyph,{});e.glyphs[t.id]=t}}function readGlyph(a,e,r){1===a?e.id=r.readVarint():2===a?e.bitmap=r.readBytes():3===a?e.width=r.readVarint():4===a?e.height=r.readVarint():5===a?e.left=r.readSVarint():6===a?e.top=r.readSVarint():7===a&&(e.advance=r.readVarint())}module.exports=Glyphs; -},{}],204:[function(require,module,exports){ -"use strict";function interpolate(t,e,n){return t*(1-n)+e*n}module.exports=interpolate,interpolate.number=interpolate,interpolate.vec2=function(t,e,n){return[interpolate(t[0],e[0],n),interpolate(t[1],e[1],n)]},interpolate.color=function(t,e,n){return[interpolate(t[0],e[0],n),interpolate(t[1],e[1],n),interpolate(t[2],e[2],n),interpolate(t[3],e[3],n)]},interpolate.array=function(t,e,n){return t.map(function(t,r){return interpolate(t,e[r],n)})}; -},{}],205:[function(require,module,exports){ -"use strict";function polygonIntersectsPolygon(n,t){for(var e=0;e=3)for(var u=0;u1){if(lineIntersectsLine(n,t))return!0;for(var r=0;r1?n.distSqr(e):n.distSqr(e.sub(t)._mult(o)._add(t))}function multiPolygonContainsPoint(n,t){for(var e,r,o,i=!1,l=0;lt.y!=o.y>t.y&&t.x<(o.x-r.x)*(t.y-r.y)/(o.y-r.y)+r.x&&(i=!i)}return i}function polygonContainsPoint(n,t){for(var e=!1,r=0,o=n.length-1;rt.y!=l.y>t.y&&t.x<(l.x-i.x)*(t.y-i.y)/(l.y-i.y)+i.x&&(e=!e)}return e}var isCounterClockwise=require("./util").isCounterClockwise;module.exports={multiPolygonIntersectsBufferedMultiPoint:multiPolygonIntersectsBufferedMultiPoint,multiPolygonIntersectsMultiPolygon:multiPolygonIntersectsMultiPolygon,multiPolygonIntersectsBufferedMultiLine:multiPolygonIntersectsBufferedMultiLine,polygonIntersectsPolygon:polygonIntersectsPolygon,distToSegmentSquared:distToSegmentSquared}; -},{"./util":212}],206:[function(require,module,exports){ -"use strict";var unicodeBlockLookup={"Latin-1 Supplement":function(n){return n>=128&&n<=255},"Hangul Jamo":function(n){return n>=4352&&n<=4607},"Unified Canadian Aboriginal Syllabics":function(n){return n>=5120&&n<=5759},"Unified Canadian Aboriginal Syllabics Extended":function(n){return n>=6320&&n<=6399},"General Punctuation":function(n){return n>=8192&&n<=8303},"Letterlike Symbols":function(n){return n>=8448&&n<=8527},"Number Forms":function(n){return n>=8528&&n<=8591},"Miscellaneous Technical":function(n){return n>=8960&&n<=9215},"Control Pictures":function(n){return n>=9216&&n<=9279},"Optical Character Recognition":function(n){return n>=9280&&n<=9311},"Enclosed Alphanumerics":function(n){return n>=9312&&n<=9471},"Geometric Shapes":function(n){return n>=9632&&n<=9727},"Miscellaneous Symbols":function(n){return n>=9728&&n<=9983},"Miscellaneous Symbols and Arrows":function(n){return n>=11008&&n<=11263},"CJK Radicals Supplement":function(n){return n>=11904&&n<=12031},"Kangxi Radicals":function(n){return n>=12032&&n<=12255},"Ideographic Description Characters":function(n){return n>=12272&&n<=12287},"CJK Symbols and Punctuation":function(n){return n>=12288&&n<=12351},Hiragana:function(n){return n>=12352&&n<=12447},Katakana:function(n){return n>=12448&&n<=12543},Bopomofo:function(n){return n>=12544&&n<=12591},"Hangul Compatibility Jamo":function(n){return n>=12592&&n<=12687},Kanbun:function(n){return n>=12688&&n<=12703},"Bopomofo Extended":function(n){return n>=12704&&n<=12735},"CJK Strokes":function(n){return n>=12736&&n<=12783},"Katakana Phonetic Extensions":function(n){return n>=12784&&n<=12799},"Enclosed CJK Letters and Months":function(n){return n>=12800&&n<=13055},"CJK Compatibility":function(n){return n>=13056&&n<=13311},"CJK Unified Ideographs Extension A":function(n){return n>=13312&&n<=19903},"Yijing Hexagram Symbols":function(n){return n>=19904&&n<=19967},"CJK Unified Ideographs":function(n){return n>=19968&&n<=40959},"Yi Syllables":function(n){return n>=40960&&n<=42127},"Yi Radicals":function(n){return n>=42128&&n<=42191},"Hangul Jamo Extended-A":function(n){return n>=43360&&n<=43391},"Hangul Syllables":function(n){return n>=44032&&n<=55215},"Hangul Jamo Extended-B":function(n){return n>=55216&&n<=55295},"Private Use Area":function(n){return n>=57344&&n<=63743},"CJK Compatibility Ideographs":function(n){return n>=63744&&n<=64255},"Vertical Forms":function(n){return n>=65040&&n<=65055},"CJK Compatibility Forms":function(n){return n>=65072&&n<=65103},"Small Form Variants":function(n){return n>=65104&&n<=65135},"Halfwidth and Fullwidth Forms":function(n){return n>=65280&&n<=65519}};module.exports=unicodeBlockLookup; -},{}],207:[function(require,module,exports){ -"use strict";var LRUCache=function(t,e){this.max=t,this.onRemove=e,this.reset()};LRUCache.prototype.reset=function(){var t=this;for(var e in t.data)t.onRemove(t.data[e]);return this.data={},this.order=[],this},LRUCache.prototype.add=function(t,e){if(this.has(t))this.order.splice(this.order.indexOf(t),1),this.data[t]=e,this.order.push(t);else if(this.data[t]=e,this.order.push(t),this.order.length>this.max){var r=this.get(this.order[0]);r&&this.onRemove(r)}return this},LRUCache.prototype.has=function(t){return t in this.data},LRUCache.prototype.keys=function(){return this.order},LRUCache.prototype.get=function(t){if(!this.has(t))return null;var e=this.data[t];return delete this.data[t],this.order.splice(this.order.indexOf(t),1),e},LRUCache.prototype.getWithoutRemoving=function(t){if(!this.has(t))return null;var e=this.data[t];return e},LRUCache.prototype.remove=function(t){if(!this.has(t))return this;var e=this.data[t];return delete this.data[t],this.onRemove(e),this.order.splice(this.order.indexOf(t),1),this},LRUCache.prototype.setMaxSize=function(t){var e=this;for(this.max=t;this.order.length>this.max;){var r=e.get(e.order[0]);r&&e.onRemove(r)}return this},module.exports=LRUCache; -},{}],208:[function(require,module,exports){ -"use strict";function makeAPIURL(r,e){var t=parseUrl(config.API_URL);if(r.protocol=t.protocol,r.authority=t.authority,!config.REQUIRE_ACCESS_TOKEN)return formatUrl(r);if(e=e||config.ACCESS_TOKEN,!e)throw new Error("An API access token is required to use Mapbox GL. "+help);if("s"===e[0])throw new Error("Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). "+help);return r.params.push("access_token="+e),formatUrl(r)}function isMapboxURL(r){return 0===r.indexOf("mapbox:")}function replaceTempAccessToken(r){for(var e=0;e=2||512===t?"@2x":"",s=browser.supportsWebp?".webp":"$1";return o.path=o.path.replace(imageExtensionRe,""+a+s),replaceTempAccessToken(o.params),formatUrl(o)};var urlRe=/^(\w+):\/\/([^\/?]+)(\/[^?]+)?\??(.+)?/; -},{"./browser":192,"./config":196}],209:[function(require,module,exports){ -"use strict";var isChar=require("./is_char_in_unicode_block");module.exports.allowsIdeographicBreaking=function(a){for(var i=0,r=a;i=65097&&a<=65103)||(!!isChar["CJK Compatibility Ideographs"](a)||(!!isChar["CJK Compatibility"](a)||(!!isChar["CJK Radicals Supplement"](a)||(!!isChar["CJK Strokes"](a)||(!(!isChar["CJK Symbols and Punctuation"](a)||a>=12296&&a<=12305||a>=12308&&a<=12319||12336===a)||(!!isChar["CJK Unified Ideographs Extension A"](a)||(!!isChar["CJK Unified Ideographs"](a)||(!!isChar["Enclosed CJK Letters and Months"](a)||(!!isChar["Hangul Compatibility Jamo"](a)||(!!isChar["Hangul Jamo Extended-A"](a)||(!!isChar["Hangul Jamo Extended-B"](a)||(!!isChar["Hangul Jamo"](a)||(!!isChar["Hangul Syllables"](a)||(!!isChar.Hiragana(a)||(!!isChar["Ideographic Description Characters"](a)||(!!isChar.Kanbun(a)||(!!isChar["Kangxi Radicals"](a)||(!!isChar["Katakana Phonetic Extensions"](a)||(!(!isChar.Katakana(a)||12540===a)||(!(!isChar["Halfwidth and Fullwidth Forms"](a)||65288===a||65289===a||65293===a||a>=65306&&a<=65310||65339===a||65341===a||65343===a||a>=65371&&a<=65503||65507===a||a>=65512&&a<=65519)||(!(!isChar["Small Form Variants"](a)||a>=65112&&a<=65118||a>=65123&&a<=65126)||(!!isChar["Unified Canadian Aboriginal Syllabics"](a)||(!!isChar["Unified Canadian Aboriginal Syllabics Extended"](a)||(!!isChar["Vertical Forms"](a)||(!!isChar["Yijing Hexagram Symbols"](a)||(!!isChar["Yi Syllables"](a)||!!isChar["Yi Radicals"](a))))))))))))))))))))))))))))))},exports.charHasNeutralVerticalOrientation=function(a){return!(!isChar["Latin-1 Supplement"](a)||167!==a&&169!==a&&174!==a&&177!==a&&188!==a&&189!==a&&190!==a&&215!==a&&247!==a)||(!(!isChar["General Punctuation"](a)||8214!==a&&8224!==a&&8225!==a&&8240!==a&&8241!==a&&8251!==a&&8252!==a&&8258!==a&&8263!==a&&8264!==a&&8265!==a&&8273!==a)||(!!isChar["Letterlike Symbols"](a)||(!!isChar["Number Forms"](a)||(!(!isChar["Miscellaneous Technical"](a)||!(a>=8960&&a<=8967||a>=8972&&a<=8991||a>=8996&&a<=9e3||9003===a||a>=9085&&a<=9114||a>=9150&&a<=9165||9167===a||a>=9169&&a<=9179||a>=9186&&a<=9215))||(!(!isChar["Control Pictures"](a)||9251===a)||(!!isChar["Optical Character Recognition"](a)||(!!isChar["Enclosed Alphanumerics"](a)||(!!isChar["Geometric Shapes"](a)||(!(!isChar["Miscellaneous Symbols"](a)||a>=9754&&a<=9759)||(!(!isChar["Miscellaneous Symbols and Arrows"](a)||!(a>=11026&&a<=11055||a>=11088&&a<=11097||a>=11192&&a<=11243))||(!!isChar["CJK Symbols and Punctuation"](a)||(!!isChar.Katakana(a)||(!!isChar["Private Use Area"](a)||(!!isChar["CJK Compatibility Forms"](a)||(!!isChar["Small Form Variants"](a)||(!!isChar["Halfwidth and Fullwidth Forms"](a)||(8734===a||8756===a||8757===a||a>=9984&&a<=10087||a>=10102&&a<=10131||65532===a||65533===a)))))))))))))))))},exports.charHasRotatedVerticalOrientation=function(a){return!(exports.charHasUprightVerticalOrientation(a)||exports.charHasNeutralVerticalOrientation(a))}; -},{"./is_char_in_unicode_block":206}],210:[function(require,module,exports){ -"use strict";function createStructArrayType(t){var e=JSON.stringify(t);if(structArrayTypeCache[e])return structArrayTypeCache[e];var r=void 0===t.alignment?1:t.alignment,i=0,n=0,a=["Uint8"],o=t.members.map(function(t){a.indexOf(t.type)<0&&a.push(t.type);var e=sizeOf(t.type),o=i=align(i,Math.max(r,e)),s=t.components||1;return n=Math.max(n,e),i+=e*s,{name:t.name,type:t.type,components:s,offset:o}}),s=align(i,Math.max(n,r)),p=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Struct);p.prototype.alignment=r,p.prototype.size=s;for(var y=0,c=o;ythis.capacity){this.capacity=Math.max(t,Math.floor(this.capacity*RESIZE_MULTIPLIER),DEFAULT_CAPACITY),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var e=this.uint8;this._refreshViews(),e&&this.uint8.set(e)}},StructArray.prototype._refreshViews=function(){for(var t=this,e=0,r=t._usedTypes;e=1)return 1;var e=r*r,t=e*r;return 4*(r<.5?t:3*(r-e)+t-.75)},exports.bezier=function(r,e,t,n){var o=new UnitBezier(r,e,t,n);return function(r){return o.solve(r)}},exports.ease=exports.bezier(.25,.1,.25,1),exports.clamp=function(r,e,t){return Math.min(t,Math.max(e,r))},exports.wrap=function(r,e,t){var n=t-e,o=((r-e)%n+n)%n+e;return o===e?t:o},exports.asyncAll=function(r,e,t){if(!r.length)return t(null,[]);var n=r.length,o=new Array(r.length),a=null;r.forEach(function(r,i){e(r,function(r,e){r&&(a=r),o[i]=e,0===--n&&t(a,o)})})},exports.values=function(r){var e=[];for(var t in r)e.push(r[t]);return e},exports.keysDifference=function(r,e){var t=[];for(var n in r)n in e||t.push(n);return t},exports.extend=function(r,e,t,n){for(var o=arguments,a=1;a=0)return!0;return!1};var warnOnceHistory={};exports.warnOnce=function(r){warnOnceHistory[r]||("undefined"!=typeof console&&console.warn(r),warnOnceHistory[r]=!0)},exports.isCounterClockwise=function(r,e,t){return(t.y-r.y)*(e.x-r.x)>(e.y-r.y)*(t.x-r.x)},exports.calculateSignedArea=function(r){for(var e=0,t=0,n=r.length,o=n-1,a=void 0,i=void 0;t0||Math.abs(e.y-t.y)>0)&&Math.abs(exports.calculateSignedArea(r))>.01},exports.sphericalToCartesian=function(r){var e=r[0],t=r[1],n=r[2];return t+=90,t*=Math.PI/180,n*=Math.PI/180,[e*Math.cos(t)*Math.sin(n),e*Math.sin(t)*Math.sin(n),e*Math.cos(n)]},exports.parseCacheControl=function(r){var e=/(?:^|(?:\s*\,\s*))([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,t={};if(r.replace(e,function(r,e,n,o){var a=n||o;return t[e]=!a||a.toLowerCase(),""}),t["max-age"]){var n=parseInt(t["max-age"],10);isNaN(n)?delete t["max-age"]:t["max-age"]=n}return t}; -},{"../geo/coordinate":61,"@mapbox/unitbezier":3,"point-geometry":26}],213:[function(require,module,exports){ -"use strict";var Feature=function(e,t,r,o){this.type="Feature",this._vectorTileFeature=e,e._z=t,e._x=r,e._y=o,this.properties=e.properties,null!=e.id&&(this.id=e.id)},prototypeAccessors={geometry:{}};prototypeAccessors.geometry.get=function(){return void 0===this._geometry&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry},prototypeAccessors.geometry.set=function(e){this._geometry=e},Feature.prototype.toJSON=function(){var e=this,t={geometry:this.geometry};for(var r in e)"_geometry"!==r&&"_vectorTileFeature"!==r&&(t[r]=e[r]);return t},Object.defineProperties(Feature.prototype,prototypeAccessors),module.exports=Feature; -},{}],214:[function(require,module,exports){ -"use strict";var scriptDetection=require("./script_detection");module.exports=function(t){for(var o="",e=0;e":"﹀","?":"︖","@":"@","[":"﹇","\\":"\","]":"﹈","^":"^",_:"︳","`":"`","{":"︷","|":"―","}":"︸","~":"~","¢":"¢","£":"£","¥":"¥","¦":"¦","¬":"¬","¯":" ̄","–":"︲","—":"︱","‘":"﹃","’":"﹄","“":"﹁","”":"﹂","…":"︙","‧":"・","₩":"₩","、":"︑","。":"︒","〈":"︿","〉":"﹀","《":"︽","》":"︾","「":"﹁","」":"﹂","『":"﹃","』":"﹄","【":"︻","】":"︼","〔":"︹","〕":"︺","〖":"︗","〗":"︘","!":"︕","(":"︵",")":"︶",",":"︐","-":"︲",".":"・",":":"︓",";":"︔","<":"︿",">":"﹀","?":"︖","[":"﹇","]":"﹈","_":"︳","{":"︷","|":"―","}":"︸","⦅":"︵","⦆":"︶","。":"︒","「":"﹁","」":"﹂"}; -},{"./script_detection":209}],215:[function(require,module,exports){ -"use strict";var WebWorker=require("./web_worker"),WorkerPool=function(){this.active={}};WorkerPool.prototype.acquire=function(r){var e=this;if(!this.workers){var o=require("../").workerCount;for(this.workers=[];this.workers.length 2 && arguments[2] !== undefined ? arguments[2] : null; - - //create the ",message:"

{{message}}

",log:"
{{message}}
"},defaultDialogs:{buttons:{holder:"",ok:"",cancel:""},input:"",message:"

{{message}}

",log:"
{{message}}
"},build:function(t){var e=this.dialogs.buttons.ok,o="
"+this.dialogs.message.replace("{{message}}",t.message);return"confirm"!==t.type&&"prompt"!==t.type||(e=this.dialogs.buttons.cancel+this.dialogs.buttons.ok),"prompt"===t.type&&(o+=this.dialogs.input),o=(o+this.dialogs.buttons.holder+"
").replace("{{buttons}}",e).replace("{{ok}}",this.okLabel).replace("{{cancel}}",this.cancelLabel)},setCloseLogOnClick:function(t){this.closeLogOnClick=!!t},close:function(t,e){this.closeLogOnClick&&t.addEventListener("click",function(){o(t)}),0>(e=e&&!isNaN(+e)?+e:this.delay)?o(t):e>0&&setTimeout(function(){o(t)},e)},dialog:function(t,e,o,n){return this.setup({type:e,message:t,onOkay:o,onCancel:n})},log:function(t,e,o){var n=document.querySelectorAll(".alertify-logs > div");if(n){var i=n.length-this.maxLogItems;if(i>=0)for(var a=0,l=i+1;l>a;a++)this.close(n[a],-1)}this.notify(t,e,o)},setLogPosition:function(t){this.logContainerClass="alertify-logs "+t},setupLogContainer:function(){var t=document.querySelector(".alertify-logs"),e=this.logContainerClass;return t||(t=document.createElement("div"),t.className=e,this.parent.appendChild(t)),t.className!==e&&(t.className=e),t},notify:function(e,o,n){var i=this.setupLogContainer(),a=document.createElement("div");a.className=o||"default",t.logTemplateMethod?a.innerHTML=t.logTemplateMethod(e):a.innerHTML=e,"function"==typeof n&&a.addEventListener("click",n),i.appendChild(a),setTimeout(function(){a.className+=" show"},10),this.close(a,this.delay)},setup:function(t){function e(e){"function"!=typeof e&&(e=function(){}),i&&i.addEventListener("click",function(i){t.onOkay&&"function"==typeof t.onOkay&&(l?t.onOkay(l.value,i):t.onOkay(i)),e(l?{buttonClicked:"ok",inputValue:l.value,event:i}:{buttonClicked:"ok",event:i}),o(n)}),a&&a.addEventListener("click",function(i){t.onCancel&&"function"==typeof t.onCancel&&t.onCancel(i),e({buttonClicked:"cancel",event:i}),o(n)}),l&&l.addEventListener("keyup",function(t){13===t.which&&i.click()})}var n=document.createElement("div");n.className="alertify hide",n.innerHTML=this.build(t);var i=n.querySelector(".ok"),a=n.querySelector(".cancel"),l=n.querySelector("input"),s=n.querySelector("label");l&&("string"==typeof this.promptPlaceholder&&(s?s.textContent=this.promptPlaceholder:l.placeholder=this.promptPlaceholder),"string"==typeof this.promptValue&&(l.value=this.promptValue));var r;return"function"==typeof Promise?r=new Promise(e):e(),this.parent.appendChild(n),setTimeout(function(){n.classList.remove("hide"),l&&t.type&&"prompt"===t.type?(l.select(),l.focus()):i&&i.focus()},100),r},okBtn:function(t){return this.okLabel=t,this},setDelay:function(t){return t=t||0,this.delay=isNaN(t)?this.defaultDelay:parseInt(t,10),this},cancelBtn:function(t){return this.cancelLabel=t,this},setMaxLogItems:function(t){this.maxLogItems=parseInt(t||this.defaultMaxLogItems)},theme:function(t){switch(t.toLowerCase()){case"bootstrap":this.dialogs.buttons.ok="",this.dialogs.buttons.cancel="",this.dialogs.input="";break;case"purecss":this.dialogs.buttons.ok="",this.dialogs.buttons.cancel="";break;case"mdl":case"material-design-light":this.dialogs.buttons.ok="",this.dialogs.buttons.cancel="",this.dialogs.input="
";break;case"angular-material":this.dialogs.buttons.ok="",this.dialogs.buttons.cancel="",this.dialogs.input="
";break;case"default":default:this.dialogs.buttons.ok=this.defaultDialogs.buttons.ok,this.dialogs.buttons.cancel=this.defaultDialogs.buttons.cancel,this.dialogs.input=this.defaultDialogs.input}},reset:function(){this.parent=document.body,this.theme("default"),this.okBtn(this.defaultOkLabel),this.cancelBtn(this.defaultCancelLabel),this.setMaxLogItems(),this.promptValue="",this.promptPlaceholder="",this.delay=this.defaultDelay,this.setCloseLogOnClick(this.closeLogOnClickDefault),this.setLogPosition("bottom left"),this.logTemplateMethod=null},injectCSS:function(){if(!document.querySelector("#alertifyCSS")){var t=document.getElementsByTagName("head")[0],e=document.createElement("style");e.type="text/css",e.id="alertifyCSS",e.innerHTML=".alertify-logs>*{padding:12px 24px;color:#fff;box-shadow:0 2px 5px 0 rgba(0,0,0,.2);border-radius:1px}.alertify-logs>*,.alertify-logs>.default{background:rgba(0,0,0,.8)}.alertify-logs>.error{background:rgba(244,67,54,.8)}.alertify-logs>.success{background:rgba(76,175,80,.9)}.alertify{position:fixed;background-color:rgba(0,0,0,.3);left:0;right:0;top:0;bottom:0;width:100%;height:100%;z-index:1}.alertify.hide{opacity:0;pointer-events:none}.alertify,.alertify.show{box-sizing:border-box;transition:all .33s cubic-bezier(.25,.8,.25,1)}.alertify,.alertify *{box-sizing:border-box}.alertify .dialog{padding:12px}.alertify .alert,.alertify .dialog{width:100%;margin:0 auto;position:relative;top:50%;transform:translateY(-50%)}.alertify .alert>*,.alertify .dialog>*{width:400px;max-width:95%;margin:0 auto;text-align:center;padding:12px;background:#fff;box-shadow:0 2px 4px -1px rgba(0,0,0,.14),0 4px 5px 0 rgba(0,0,0,.098),0 1px 10px 0 rgba(0,0,0,.084)}.alertify .alert .msg,.alertify .dialog .msg{padding:12px;margin-bottom:12px;margin:0;text-align:left}.alertify .alert input:not(.form-control),.alertify .dialog input:not(.form-control){margin-bottom:15px;width:100%;font-size:100%;padding:12px}.alertify .alert input:not(.form-control):focus,.alertify .dialog input:not(.form-control):focus{outline-offset:-2px}.alertify .alert nav,.alertify .dialog nav{text-align:right}.alertify .alert nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button),.alertify .dialog nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button){background:transparent;box-sizing:border-box;color:rgba(0,0,0,.87);position:relative;outline:0;border:0;display:inline-block;-ms-flex-align:center;-ms-grid-row-align:center;align-items:center;padding:0 6px;margin:6px 8px;line-height:36px;min-height:36px;white-space:nowrap;min-width:88px;text-align:center;text-transform:uppercase;font-size:14px;text-decoration:none;cursor:pointer;border:1px solid transparent;border-radius:2px}.alertify .alert nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button):active,.alertify .alert nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button):hover,.alertify .dialog nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button):active,.alertify .dialog nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button):hover{background-color:rgba(0,0,0,.05)}.alertify .alert nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button):focus,.alertify .dialog nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button):focus{border:1px solid rgba(0,0,0,.1)}.alertify .alert nav button.btn,.alertify .dialog nav button.btn{margin:6px 4px}.alertify-logs{position:fixed;z-index:1}.alertify-logs.bottom,.alertify-logs:not(.top){bottom:16px}.alertify-logs.left,.alertify-logs:not(.right){left:16px}.alertify-logs.left>*,.alertify-logs:not(.right)>*{float:left;transform:translateZ(0);height:auto}.alertify-logs.left>.show,.alertify-logs:not(.right)>.show{left:0}.alertify-logs.left>*,.alertify-logs.left>.hide,.alertify-logs:not(.right)>*,.alertify-logs:not(.right)>.hide{left:-110%}.alertify-logs.right{right:16px}.alertify-logs.right>*{float:right;transform:translateZ(0)}.alertify-logs.right>.show{right:0;opacity:1}.alertify-logs.right>*,.alertify-logs.right>.hide{right:-110%;opacity:0}.alertify-logs.top{top:0}.alertify-logs>*{box-sizing:border-box;transition:all .4s cubic-bezier(.25,.8,.25,1);position:relative;clear:both;backface-visibility:hidden;perspective:1000;max-height:0;margin:0;padding:0;overflow:hidden;opacity:0;pointer-events:none}.alertify-logs>.show{margin-top:12px;opacity:1;max-height:1000px;padding:12px;pointer-events:auto}",t.insertBefore(e,t.firstChild)}},removeCSS:function(){var t=document.querySelector("#alertifyCSS");t&&t.parentNode&&t.parentNode.removeChild(t)}};return t.injectCSS(),{_$$alertify:t,parent:function(e){t.parent=e},reset:function(){return t.reset(),this},alert:function(e,o,n){return t.dialog(e,"alert",o,n)||this},confirm:function(e,o,n){return t.dialog(e,"confirm",o,n)||this},prompt:function(e,o,n){return t.dialog(e,"prompt",o,n)||this},log:function(e,o){return t.log(e,"default",o),this},theme:function(e){return t.theme(e),this},success:function(e,o){return t.log(e,"success",o),this},error:function(e,o){return t.log(e,"error",o),this},cancelBtn:function(e){return t.cancelBtn(e),this},okBtn:function(e){return t.okBtn(e),this},delay:function(e){return t.setDelay(e),this},placeholder:function(e){return t.promptPlaceholder=e,this},defaultValue:function(e){return t.promptValue=e,this},maxLogItems:function(e){return t.setMaxLogItems(e),this},closeLogOnClick:function(e){return t.setCloseLogOnClick(!!e),this},logPosition:function(e){return t.setLogPosition(e||""),this},setLogTemplate:function(e){return t.logTemplateMethod=e,this},clearLogs:function(){return t.setupLogContainer().innerHTML="",this},version:t.version}}var o=function(t){if(t){var o=function(){t&&t.parentNode&&t.parentNode.removeChild(t)};t.classList.remove("show"),t.classList.add("hide"),t.addEventListener("transitionend",o),setTimeout(o,500)}};if(void 0!==module&&module&&module.exports){module.exports=function(){return new t};var n=new t;for(var i in n)module.exports[i]=n[i]}else void 0!==(__WEBPACK_AMD_DEFINE_RESULT__=function(){return new t}.call(exports,__webpack_require__,exports,module))&&(module.exports=__WEBPACK_AMD_DEFINE_RESULT__)}()}).call(exports,__webpack_require__(17)(module))},function(module,exports,__webpack_require__){"use strict";function selectPlaceInForm(uri){document.querySelector("select")&&("current-location"==uri?document.querySelector('select [id="option-coords"]').selected=!0:document.querySelector('select [value="'+uri+'"]').selected=!0)}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=selectPlaceInForm},function(module,exports,__webpack_require__){(function(global){var require;!function(f){module.exports=f()}(function(){return function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a="function"==typeof require&&require;if(!u&&a)return require(o,!0);if(i)return require(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n||e)},l,l.exports,e,t,n,r)}return n[o].exports}for(var i="function"==typeof require&&require,o=0;o0){for(var o=0,a=0,u=0;uh.maxh||t>h.maxw||i<=h.maxh&&t<=h.maxw&&(r=h.maxw*h.maxh-t*i)n.free)){if(i===n.h)return this.allocShelf(f,t,i,s);i>n.h||ic)&&(p=2*Math.max(t,c)),(uu)&&(l=2*Math.max(i,u)),this.resize(p,l),this.packOne(t,i,s)}return null},t.prototype.allocFreebin=function(t,e,i,s){var h=this.freebins.splice(t,1)[0];return h.id=s,h.w=e,h.h=i,h.refcount=0,this.bins[s]=h,this.ref(h),h},t.prototype.allocShelf=function(t,e,i,s){var n=this.shelves[t].alloc(e,i,s);return this.bins[s]=n,this.ref(n),n},t.prototype.getBin=function(t){return this.bins[t]},t.prototype.ref=function(t){if(1==++t.refcount){var e=t.h;this.stats[e]=1+(0|this.stats[e])}return t.refcount},t.prototype.unref=function(t){return 0===t.refcount?0:(0==--t.refcount&&(this.stats[t.h]--,delete this.bins[t.id],this.freebins.push(t)),t.refcount)},t.prototype.clear=function(){this.shelves=[],this.freebins=[],this.stats={},this.bins={},this.maxId=0},t.prototype.resize=function(t,e){this.w=t,this.h=e;for(var i=0;ithis.free||e>this.h)return null;var h=this.x;return this.x+=t,this.free-=t,new i(s,h,this.y,t,e,t,this.h)},e.prototype.resize=function(t){return this.free+=t-this.w,this.w=t,!0},t})},{}],3:[function(_dereq_,module,exports){function UnitBezier(t,i,e,r){this.cx=3*t,this.bx=3*(e-t)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*i,this.by=3*(r-i)-this.cy,this.ay=1-this.cy-this.by,this.p1x=t,this.p1y=r,this.p2x=e,this.p2y=r}module.exports=UnitBezier,UnitBezier.prototype.sampleCurveX=function(t){return((this.ax*t+this.bx)*t+this.cx)*t},UnitBezier.prototype.sampleCurveY=function(t){return((this.ay*t+this.by)*t+this.cy)*t},UnitBezier.prototype.sampleCurveDerivativeX=function(t){return(3*this.ax*t+2*this.bx)*t+this.cx},UnitBezier.prototype.solveCurveX=function(t,i){void 0===i&&(i=1e-6);var e,r,s,h,n;for(s=t,n=0;n<8;n++){if(h=this.sampleCurveX(s)-t,Math.abs(h)r)return r;for(;eh?e=s:r=s,s=.5*(r-e)+e}return s},UnitBezier.prototype.solve=function(t,i){return this.sampleCurveY(this.solveCurveX(t,i))}},{}],4:[function(_dereq_,module,exports){!function(e,t){t("object"==typeof exports&&void 0!==module?exports:e.WhooTS=e.WhooTS||{})}(this,function(e){function t(e,t,r,n,i,s){return s=s||{},e+"?"+["bbox="+o(r,n,i),"format="+(s.format||"image/png"),"service="+(s.service||"WMS"),"version="+(s.version||"1.1.1"),"request="+(s.request||"GetMap"),"srs="+(s.srs||"EPSG:3857"),"width="+(s.width||256),"height="+(s.height||256),"layers="+t].join("&")}function o(e,t,o){var n=r(256*e,256*(t=Math.pow(2,o)-t-1),o),i=r(256*(e+1),256*(t+1),o);return n[0]+","+n[1]+","+i[0]+","+i[1]}function r(e,t,o){var r=2*Math.PI*6378137/256/Math.pow(2,o);return[e*r-2*Math.PI*6378137/2,t*r-2*Math.PI*6378137/2]}e.getURL=t,e.getTileBBox=o,e.getMercCoords=r,Object.defineProperty(e,"__esModule",{value:!0})})},{}],5:[function(_dereq_,module,exports){"use strict";function earcut(e,n,r){r=r||2;var t=n&&n.length,i=t?n[0]*r:e.length,x=linkedList(e,0,i,r,!0),a=[];if(!x)return a;var o,l,u,s,v,f,y;if(t&&(x=eliminateHoles(e,n,x,r)),e.length>80*r){o=u=e[0],l=s=e[1];for(var d=r;du&&(u=v),f>s&&(s=f);y=Math.max(u-o,s-l)}return earcutLinked(x,a,r,o,l,y),a}function linkedList(e,n,r,t,i){var x,a;if(i===signedArea(e,n,r,t)>0)for(x=n;x=n;x-=t)a=insertNode(x,e[x],e[x+1],a);return a&&equals(a,a.next)&&(removeNode(a),a=a.next),a}function filterPoints(e,n){if(!e)return e;n||(n=e);var r,t=e;do{if(r=!1,t.steiner||!equals(t,t.next)&&0!==area(t.prev,t,t.next))t=t.next;else{if(removeNode(t),(t=n=t.prev)===t.next)return null;r=!0}}while(r||t!==n);return n}function earcutLinked(e,n,r,t,i,x,a){if(e){!a&&x&&indexCurve(e,t,i,x);for(var o,l,u=e;e.prev!==e.next;)if(o=e.prev,l=e.next,x?isEarHashed(e,t,i,x):isEar(e))n.push(o.i/r),n.push(e.i/r),n.push(l.i/r),removeNode(e),e=l.next,u=l.next;else if((e=l)===u){a?1===a?(e=cureLocalIntersections(e,n,r),earcutLinked(e,n,r,t,i,x,2)):2===a&&splitEarcut(e,n,r,t,i,x):earcutLinked(filterPoints(e),n,r,t,i,x,1);break}}}function isEar(e){var n=e.prev,r=e,t=e.next;if(area(n,r,t)>=0)return!1;for(var i=e.next.next;i!==e.prev;){if(pointInTriangle(n.x,n.y,r.x,r.y,t.x,t.y,i.x,i.y)&&area(i.prev,i,i.next)>=0)return!1;i=i.next}return!0}function isEarHashed(e,n,r,t){var i=e.prev,x=e,a=e.next;if(area(i,x,a)>=0)return!1;for(var o=i.xx.x?i.x>a.x?i.x:a.x:x.x>a.x?x.x:a.x,s=i.y>x.y?i.y>a.y?i.y:a.y:x.y>a.y?x.y:a.y,v=zOrder(o,l,n,r,t),f=zOrder(u,s,n,r,t),y=e.nextZ;y&&y.z<=f;){if(y!==e.prev&&y!==e.next&&pointInTriangle(i.x,i.y,x.x,x.y,a.x,a.y,y.x,y.y)&&area(y.prev,y,y.next)>=0)return!1;y=y.nextZ}for(y=e.prevZ;y&&y.z>=v;){if(y!==e.prev&&y!==e.next&&pointInTriangle(i.x,i.y,x.x,x.y,a.x,a.y,y.x,y.y)&&area(y.prev,y,y.next)>=0)return!1;y=y.prevZ}return!0}function cureLocalIntersections(e,n,r){var t=e;do{var i=t.prev,x=t.next.next;!equals(i,x)&&intersects(i,t,t.next,x)&&locallyInside(i,x)&&locallyInside(x,i)&&(n.push(i.i/r),n.push(t.i/r),n.push(x.i/r),removeNode(t),removeNode(t.next),t=e=x),t=t.next}while(t!==e);return t}function splitEarcut(e,n,r,t,i,x){var a=e;do{for(var o=a.next.next;o!==a.prev;){if(a.i!==o.i&&isValidDiagonal(a,o)){var l=splitPolygon(a,o);return a=filterPoints(a,a.next),l=filterPoints(l,l.next),earcutLinked(a,n,r,t,i,x),void earcutLinked(l,n,r,t,i,x)}o=o.next}a=a.next}while(a!==e)}function eliminateHoles(e,n,r,t){var i,x,a,o,l,u=[];for(i=0,x=n.length;i=t.next.y){var o=t.x+(x-t.y)*(t.next.x-t.x)/(t.next.y-t.y);if(o<=i&&o>a){if(a=o,o===i){if(x===t.y)return t;if(x===t.next.y)return t.next}r=t.x=t.x&&t.x>=s&&pointInTriangle(xr.x)&&locallyInside(t,e)&&(r=t,f=l),t=t.next;return r}function indexCurve(e,n,r,t){var i=e;do{null===i.z&&(i.z=zOrder(i.x,i.y,n,r,t)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next}while(i!==e);i.prevZ.nextZ=null,i.prevZ=null,sortLinked(i)}function sortLinked(e){var n,r,t,i,x,a,o,l,u=1;do{for(r=e,e=null,x=null,a=0;r;){for(a++,t=r,o=0,n=0;n0||l>0&&t;)0===o?(i=t,t=t.nextZ,l--):0!==l&&t?r.z<=t.z?(i=r,r=r.nextZ,o--):(i=t,t=t.nextZ,l--):(i=r,r=r.nextZ,o--),x?x.nextZ=i:e=i,i.prevZ=x,x=i;r=t}x.nextZ=null,u*=2}while(a>1);return e}function zOrder(e,n,r,t,i){return e=32767*(e-r)/i,n=32767*(n-t)/i,e=16711935&(e|e<<8),e=252645135&(e|e<<4),e=858993459&(e|e<<2),e=1431655765&(e|e<<1),n=16711935&(n|n<<8),n=252645135&(n|n<<4),n=858993459&(n|n<<2),n=1431655765&(n|n<<1),e|n<<1}function getLeftmost(e){var n=e,r=e;do{n.x=0&&(e-a)*(t-o)-(r-a)*(n-o)>=0&&(r-a)*(x-o)-(i-a)*(t-o)>=0}function isValidDiagonal(e,n){return e.next.i!==n.i&&e.prev.i!==n.i&&!intersectsPolygon(e,n)&&locallyInside(e,n)&&locallyInside(n,e)&&middleInside(e,n)}function area(e,n,r){return(n.y-e.y)*(r.x-n.x)-(n.x-e.x)*(r.y-n.y)}function equals(e,n){return e.x===n.x&&e.y===n.y}function intersects(e,n,r,t){return!!(equals(e,n)&&equals(r,t)||equals(e,t)&&equals(r,n))||area(e,n,r)>0!=area(e,n,t)>0&&area(r,t,e)>0!=area(r,t,n)>0}function intersectsPolygon(e,n){var r=e;do{if(r.i!==e.i&&r.next.i!==e.i&&r.i!==n.i&&r.next.i!==n.i&&intersects(r,r.next,e,n))return!0;r=r.next}while(r!==e);return!1}function locallyInside(e,n){return area(e.prev,e,e.next)<0?area(e,n,e.next)>=0&&area(e,e.prev,n)>=0:area(e,n,e.prev)<0||area(e,e.next,n)<0}function middleInside(e,n){var r=e,t=!1,i=(e.x+n.x)/2,x=(e.y+n.y)/2;do{r.y>x!=r.next.y>x&&i<(r.next.x-r.x)*(x-r.y)/(r.next.y-r.y)+r.x&&(t=!t),r=r.next}while(r!==e);return t}function splitPolygon(e,n){var r=new Node(e.i,e.x,e.y),t=new Node(n.i,n.x,n.y),i=e.next,x=n.prev;return e.next=n,n.prev=e,r.next=i,i.prev=r,t.next=r,r.prev=t,x.next=t,t.prev=x,t}function insertNode(e,n,r,t){var i=new Node(e,n,r);return t?(i.next=t.next,i.prev=t,t.next.prev=i,t.next=i):(i.prev=i,i.next=i),i}function removeNode(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function Node(e,n,r){this.i=e,this.x=n,this.y=r,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function signedArea(e,n,r,t){for(var i=0,x=n,a=r-t;x0&&(t+=e[i-1].length,r.holes.push(t))}return r}},{}],6:[function(_dereq_,module,exports){function geometry(r){if("Polygon"===r.type)return polygonArea(r.coordinates);if("MultiPolygon"===r.type){for(var e=0,n=0;n0){e+=Math.abs(ringArea(r[0]));for(var n=1;n2){for(var n,t,o=0;o=0}var geojsonArea=_dereq_("geojson-area");module.exports=rewind},{"geojson-area":6}],8:[function(_dereq_,module,exports){"use strict";function clip(e,r,t,n,u,i,l,s){if(t/=r,n/=r,l>=t&&s<=n)return e;if(l>n||s=t&&c<=n)h.push(o);else if(!(a>n||c=r&&s<=t&&u.push(l)}return u}function clipGeometry(e,r,t,n,u,i){for(var l=[],s=0;st?(d.push(u(h,f,r),u(h,f,t)),i||(d=newSlice(l,d,v,m,w))):o>=r&&d.push(u(h,f,r)):c>t?ot&&(d.push(u(h,f,t)),i||(d=newSlice(l,d,v,m,w))));(c=(h=g[S-1])[n])>=r&&c<=t&&d.push(h),a=d[d.length-1],i&&a&&(d[0][0]!==a[0]||d[0][1]!==a[1])&&d.push(d[0]),newSlice(l,d,v,m,w)}return l}function newSlice(e,r,t,n,u){return r.length&&(r.area=t,r.dist=n,void 0!==u&&(r.outer=u),e.push(r)),[]}module.exports=clip;var createFeature=_dereq_("./feature")},{"./feature":10}],9:[function(_dereq_,module,exports){"use strict";function convert(e,t){var r=[];if("FeatureCollection"===e.type)for(var o=0;o1?1:o,[r,o,0]}function calcSize(e){for(var t,r,o=0,a=0,i=0;i1)return!1;var r=n.geometry[0].length;if(5!==r)return!1;for(var s=0;s1&&console.time("creation"),m=this.tiles[d]=createTile(e,p,i,o,f,t===a.maxZoom),this.tileCoords.push({z:t,x:i,y:o}),u)){u>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",t,i,o,m.numFeatures,m.numPoints,m.numSimplified),console.timeEnd("creation"));var h="z"+t;this.stats[h]=(this.stats[h]||0)+1,this.total++}if(m.source=e,n){if(t===a.maxZoom||t===n)continue;var x=1<1&&console.time("clipping");var g,v,M,T,b,y,S=.5*a.buffer/a.extent,Z=.5-S,q=.5+S,w=1+S;g=v=M=T=null,b=clip(e,p,i-S,i+q,0,intersectX,m.min[0],m.max[0]),y=clip(e,p,i+Z,i+w,0,intersectX,m.min[0],m.max[0]),b&&(g=clip(b,p,o-S,o+q,1,intersectY,m.min[1],m.max[1]),v=clip(b,p,o+Z,o+w,1,intersectY,m.min[1],m.max[1])),y&&(M=clip(y,p,o-S,o+q,1,intersectY,m.min[1],m.max[1]),T=clip(y,p,o+Z,o+w,1,intersectY,m.min[1],m.max[1])),u>1&&console.timeEnd("clipping"),e.length&&(l.push(g||[],t+1,2*i,2*o),l.push(v||[],t+1,2*i,2*o+1),l.push(M||[],t+1,2*i+1,2*o),l.push(T||[],t+1,2*i+1,2*o+1))}else n&&(c=t)}return c},GeoJSONVT.prototype.getTile=function(e,t,i){var o=this.options,n=o.extent,r=o.debug,s=1<1&&console.log("drilling down to z%d-%d-%d",e,t,i);for(var a,u=e,c=t,p=i;!a&&u>0;)u--,c=Math.floor(c/2),p=Math.floor(p/2),a=this.tiles[toID(u,c,p)];if(!a||!a.source)return null;if(r>1&&console.log("found parent tile z%d-%d-%d",u,c,p),isClippedSquare(a,n,o.buffer))return transform.tile(a,n);r>1&&console.time("drilling down");var d=this.splitTile(a.source,u,c,p,e,t,i);if(r>1&&console.timeEnd("drilling down"),null!==d){var m=1<p&&(s=e,p=r);p>o?(t[s][2]=p,g.push(u),g.push(s),u=s):(n=g.pop(),u=g.pop())}}function getSqSegDist(t,i,e){var p=i[0],r=i[1],s=e[0],o=e[1],f=t[0],u=t[1],n=s-p,g=o-r;if(0!==n||0!==g){var l=((f-p)*n+(u-r)*g)/(n*n+g*g);l>1?(p=s,r=o):l>0&&(p+=n*l,r+=g*l)}return n=f-p,g=u-r,n*n+g*g}module.exports=simplify},{}],13:[function(_dereq_,module,exports){"use strict";function createTile(e,n,r,i,t,u){for(var a={features:[],numPoints:0,numSimplified:0,numFeatures:0,source:null,x:r,y:i,z2:n,transformed:!1,min:[2,1],max:[-1,0]},m=0;ma.max[0]&&(a.max[0]=l[0]),l[1]>a.max[1]&&(a.max[1]=l[1])}return a}function addFeature(e,n,r,i){var t,u,a,m,s=n.geometry,l=n.type,o=[],f=r*r;if(1===l)for(t=0;tf)&&(d.push(m),e.numSimplified++),e.numPoints++;3===l&&rewind(d,a.outer),o.push(d)}else e.numPoints+=a.length;if(o.length){var g={geometry:o,type:l,tags:n.tags||null};null!==n.id&&(g.id=n.id),e.features.push(g)}}function rewind(e,n){signedArea(e)<0===n&&e.reverse()}function signedArea(e){for(var n,r,i=0,t=0,u=e.length,a=u-1;t=a[u+0]&&s>=a[u+1]?(n[f]=!0,h.push(l[f])):n[f]=!1}}},GridIndex.prototype._forEachCell=function(t,r,e,s,i,h,n){for(var o=this._convertToCellCoord(t),l=this._convertToCellCoord(r),a=this._convertToCellCoord(e),d=this._convertToCellCoord(s),f=o;f<=a;f++)for(var u=l;u<=d;u++){var y=this.d*u+f;if(i.call(this,t,r,e,s,y,h,n))return}},GridIndex.prototype._convertToCellCoord=function(t){return Math.max(0,Math.min(this.d-1,Math.floor(t*this.scale)+this.padding))},GridIndex.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var t=this.cells,r=NUM_PARAMS+this.cells.length+1+1,e=0,s=0;s>1,i=-7,N=t?h-1:0,n=t?-1:1,s=a[o+N];for(N+=n,M=s&(1<<-i)-1,s>>=-i,i+=w;i>0;M=256*M+a[o+N],N+=n,i-=8);for(p=M&(1<<-i)-1,M>>=-i,i+=r;i>0;p=256*p+a[o+N],N+=n,i-=8);if(0===M)M=1-e;else{if(M===f)return p?NaN:1/0*(s?-1:1);p+=Math.pow(2,r),M-=e}return(s?-1:1)*p*Math.pow(2,M-r)},exports.write=function(a,o,t,r,h,M){var p,w,f,e=8*M-h-1,i=(1<>1,n=23===h?Math.pow(2,-24)-Math.pow(2,-77):0,s=r?0:M-1,u=r?1:-1,l=o<0||0===o&&1/o<0?1:0;for(o=Math.abs(o),isNaN(o)||o===1/0?(w=isNaN(o)?1:0,p=i):(p=Math.floor(Math.log(o)/Math.LN2),o*(f=Math.pow(2,-p))<1&&(p--,f*=2),(o+=p+N>=1?n/f:n*Math.pow(2,1-N))*f>=2&&(p++,f/=2),p+N>=i?(w=0,p=i):p+N>=1?(w=(o*f-1)*Math.pow(2,h),p+=N):(w=o*Math.pow(2,N-1)*Math.pow(2,h),p=0));h>=8;a[t+s]=255&w,s+=u,w/=256,h-=8);for(p=p<0;a[t+s]=255&p,s+=u,p/=256,e-=8);a[t+s-u]|=128*l}},{}],18:[function(_dereq_,module,exports){"use strict";function kdbush(t,i,e,s,n){return new KDBush(t,i,e,s,n)}function KDBush(t,i,e,s,n){i=i||defaultGetX,e=e||defaultGetY,n=n||Array,this.nodeSize=s||64,this.points=t,this.ids=new n(t.length),this.coords=new n(2*t.length);for(var r=0;r=s&&a<=h&&t>=u&&t<=e&&f.push(p[i]);else{var c=Math.floor((g+v)/2);a=r[2*c],t=r[2*c+1],a>=s&&a<=h&&t>=u&&t<=e&&f.push(p[c]);var d=(l+1)%2;(0===l?s<=a:u<=t)&&(n.push(g),n.push(c-1),n.push(d)),(0===l?h>=a:e>=t)&&(n.push(c+1),n.push(v),n.push(d))}}return f}module.exports=range},{}],20:[function(_dereq_,module,exports){"use strict";function sortKD(t,a,o,s,r,e){if(!(r-s<=o)){var f=Math.floor((s+r)/2);select(t,a,f,s,r,e%2),sortKD(t,a,o,s,f-1,e+1),sortKD(t,a,o,f+1,r,e+1)}}function select(t,a,o,s,r,e){for(;r>s;){if(r-s>600){var f=r-s+1,p=o-s+1,w=Math.log(f),m=.5*Math.exp(2*w/3),n=.5*Math.sqrt(w*m*(f-m)/f)*(p-f/2<0?-1:1);select(t,a,o,Math.max(s,Math.floor(o-p*m/f+n)),Math.min(r,Math.floor(o+(f-p)*m/f+n)),e)}var i=a[2*o+e],l=s,M=r;for(swapItem(t,a,s,o),a[2*r+e]>i&&swapItem(t,a,s,r);li;)M--}a[2*s+e]===i?swapItem(t,a,s,M):(M++,swapItem(t,a,M,r)),M<=o&&(s=M+1),o<=M&&(r=M-1)}}function swapItem(t,a,o,s){swap(t,o,s),swap(a,2*o,2*s),swap(a,2*o+1,2*s+1)}function swap(t,a,o){var s=t[a];t[a]=t[o],t[o]=s}module.exports=sortKD},{}],21:[function(_dereq_,module,exports){"use strict";function within(s,p,r,t,u,h){for(var i=[0,s.length-1,0],o=[],n=u*u;i.length;){var e=i.pop(),a=i.pop(),f=i.pop();if(a-f<=h)for(var v=f;v<=a;v++)sqDist(p[2*v],p[2*v+1],r,t)<=n&&o.push(s[v]);else{var l=Math.floor((f+a)/2),c=p[2*l],q=p[2*l+1];sqDist(c,q,r,t)<=n&&o.push(s[l]);var D=(e+1)%2;(0===e?r-u<=c:t-u<=q)&&(i.push(f),i.push(l-1),i.push(D)),(0===e?r+u>=c:t+u>=q)&&(i.push(l+1),i.push(a),i.push(D))}}return o}function sqDist(s,p,r,t){var u=s-r,h=p-t;return u*u+h*h}module.exports=within},{}],22:[function(_dereq_,module,exports){"use strict";function isSupported(e){return!!(isBrowser()&&isArraySupported()&&isFunctionSupported()&&isObjectSupported()&&isJSONSupported()&&isWorkerSupported()&&isUint8ClampedArraySupported()&&isWebGLSupportedCached(e&&e.failIfMajorPerformanceCaveat))}function isBrowser(){return"undefined"!=typeof window&&"undefined"!=typeof document}function isArraySupported(){return Array.prototype&&Array.prototype.every&&Array.prototype.filter&&Array.prototype.forEach&&Array.prototype.indexOf&&Array.prototype.lastIndexOf&&Array.prototype.map&&Array.prototype.some&&Array.prototype.reduce&&Array.prototype.reduceRight&&Array.isArray}function isFunctionSupported(){return Function.prototype&&Function.prototype.bind}function isObjectSupported(){return Object.keys&&Object.create&&Object.getPrototypeOf&&Object.getOwnPropertyNames&&Object.isSealed&&Object.isFrozen&&Object.isExtensible&&Object.getOwnPropertyDescriptor&&Object.defineProperty&&Object.defineProperties&&Object.seal&&Object.freeze&&Object.preventExtensions}function isJSONSupported(){return"JSON"in window&&"parse"in JSON&&"stringify"in JSON}function isWorkerSupported(){return"Worker"in window}function isUint8ClampedArraySupported(){return"Uint8ClampedArray"in window}function isWebGLSupportedCached(e){return void 0===isWebGLSupportedCache[e]&&(isWebGLSupportedCache[e]=isWebGLSupported(e)),isWebGLSupportedCache[e]}function isWebGLSupported(e){var t=document.createElement("canvas"),r=Object.create(isSupported.webGLContextAttributes);return r.failIfMajorPerformanceCaveat=e,t.probablySupportsContext?t.probablySupportsContext("webgl",r)||t.probablySupportsContext("experimental-webgl",r):t.supportsContext?t.supportsContext("webgl",r)||t.supportsContext("experimental-webgl",r):t.getContext("webgl",r)||t.getContext("experimental-webgl",r)}void 0!==module&&module.exports?module.exports=isSupported:window&&(window.mapboxgl=window.mapboxgl||{},window.mapboxgl.supported=isSupported);var isWebGLSupportedCache={};isSupported.webGLContextAttributes={antialias:!1,alpha:!0,stencil:!0,depth:!0}},{}],23:[function(_dereq_,module,exports){(function(process){function normalizeArray(r,t){for(var e=0,n=r.length-1;n>=0;n--){var s=r[n];"."===s?r.splice(n,1):".."===s?(r.splice(n,1),e++):e&&(r.splice(n,1),e--)}if(t)for(;e--;e)r.unshift("..");return r}function filter(r,t){if(r.filter)return r.filter(t);for(var e=[],n=0;n=-1&&!t;e--){var n=e>=0?arguments[e]:process.cwd();if("string"!=typeof n)throw new TypeError("Arguments to path.resolve must be strings");n&&(r=n+"/"+r,t="/"===n.charAt(0))}return r=normalizeArray(filter(r.split("/"),function(r){return!!r}),!t).join("/"),(t?"/":"")+r||"."},exports.normalize=function(r){var t=exports.isAbsolute(r),e="/"===substr(r,-1);return(r=normalizeArray(filter(r.split("/"),function(r){return!!r}),!t).join("/"))||t||(r="."),r&&e&&(r+="/"),(t?"/":"")+r},exports.isAbsolute=function(r){return"/"===r.charAt(0)},exports.join=function(){var r=Array.prototype.slice.call(arguments,0);return exports.normalize(filter(r,function(r,t){if("string"!=typeof r)throw new TypeError("Arguments to path.join must be strings");return r}).join("/"))},exports.relative=function(r,t){function e(r){for(var t=0;t=0&&""===r[e];e--);return t>e?[]:r.slice(t,e-t+1)}r=exports.resolve(r).substr(1),t=exports.resolve(t).substr(1);for(var n=e(r.split("/")),s=e(t.split("/")),i=Math.min(n.length,s.length),o=i,u=0;u55295&&e<57344){if(!r){e>56319||o+1===n?i.push(239,191,189):r=e;continue}if(e<56320){i.push(239,191,189),r=e;continue}e=r-55296<<10|e-56320|65536,r=null}else r&&(i.push(239,191,189),r=null);e<128?i.push(e):e<2048?i.push(e>>6|192,63&e|128):e<65536?i.push(e>>12|224,e>>6&63|128,63&e|128):i.push(e>>18|240,e>>12&63|128,e>>6&63|128,63&e|128)}return i}module.exports=Buffer;var BufferMethods,lastStr,lastStrEncoded,ieee754=_dereq_("ieee754");(BufferMethods={readUInt32LE:function(t){return(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},writeUInt32LE:function(t,e){this[e]=t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24},readInt32LE:function(t){return(this[t]|this[t+1]<<8|this[t+2]<<16)+(this[t+3]<<24)},readFloatLE:function(t){return ieee754.read(this,t,!0,23,4)},readDoubleLE:function(t){return ieee754.read(this,t,!0,52,8)},writeFloatLE:function(t,e){return ieee754.write(this,t,e,!0,23,4)},writeDoubleLE:function(t,e){return ieee754.write(this,t,e,!0,52,8)},toString:function(t,e,r){var n="",i="";e=e||0,r=Math.min(this.length,r||this.length);for(var o=e;o=1;){if(i.pos>=e)throw new Error("Given varint doesn't fit into 10 bytes");var r=255&t;i.buf[i.pos++]=r|(t>=128?128:0),t/=128}}function reallocForRawMessage(t,i,e){var r=i<=16383?1:i<=2097151?2:i<=268435455?3:Math.ceil(Math.log(i)/(7*Math.LN2));e.realloc(r);for(var s=e.pos-1;s>=t;s--)e.buf[s+r]=e.buf[s]}function writePackedVarint(t,i){for(var e=0;e>3,n=this.pos;t(s,i,this),this.pos===n&&this.skip(r)}return i},readMessage:function(t,i){return this.readFields(t,i,this.readVarint()+this.pos)},readFixed32:function(){var t=this.buf.readUInt32LE(this.pos);return this.pos+=4,t},readSFixed32:function(){var t=this.buf.readInt32LE(this.pos);return this.pos+=4,t},readFixed64:function(){var t=this.buf.readUInt32LE(this.pos)+4294967296*this.buf.readUInt32LE(this.pos+4);return this.pos+=8,t},readSFixed64:function(){var t=this.buf.readUInt32LE(this.pos)+4294967296*this.buf.readInt32LE(this.pos+4);return this.pos+=8,t},readFloat:function(){var t=this.buf.readFloatLE(this.pos);return this.pos+=4,t},readDouble:function(){var t=this.buf.readDoubleLE(this.pos);return this.pos+=8,t},readVarint:function(){var t,i,e=this.buf;return i=e[this.pos++],t=127&i,i<128?t:(i=e[this.pos++],t|=(127&i)<<7,i<128?t:(i=e[this.pos++],t|=(127&i)<<14,i<128?t:(i=e[this.pos++],t|=(127&i)<<21,i<128?t:readVarintRemainder(t,this))))},readVarint64:function(){var t=this.pos,i=this.readVarint();if(i127;);else if(i===Pbf.Bytes)this.pos=this.readVarint()+this.pos;else if(i===Pbf.Fixed32)this.pos+=4;else{if(i!==Pbf.Fixed64)throw new Error("Unimplemented type: "+i);this.pos+=8}},writeTag:function(t,i){this.writeVarint(t<<3|i)},realloc:function(t){for(var i=this.length||16;i268435455?void writeBigVarint(t,this):(this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),void(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);var i=Buffer.byteLength(t);this.writeVarint(i),this.realloc(i),this.buf.write(t,this.pos),this.pos+=i},writeFloat:function(t){this.realloc(4),this.buf.writeFloatLE(t,this.pos),this.pos+=4},writeDouble:function(t){this.realloc(8),this.buf.writeDoubleLE(t,this.pos),this.pos+=8},writeBytes:function(t){var i=t.length;this.writeVarint(i),this.realloc(i);for(var e=0;e=128&&reallocForRawMessage(e,r,this),this.pos=e-1,this.writeVarint(r),this.pos+=r},writeMessage:function(t,i,e){this.writeTag(t,Pbf.Bytes),this.writeRawMessage(i,e)},writePackedVarint:function(t,i){this.writeMessage(t,writePackedVarint,i)},writePackedSVarint:function(t,i){this.writeMessage(t,writePackedSVarint,i)},writePackedBoolean:function(t,i){this.writeMessage(t,writePackedBoolean,i)},writePackedFloat:function(t,i){this.writeMessage(t,writePackedFloat,i)},writePackedDouble:function(t,i){this.writeMessage(t,writePackedDouble,i)},writePackedFixed32:function(t,i){this.writeMessage(t,writePackedFixed32,i)},writePackedSFixed32:function(t,i){this.writeMessage(t,writePackedSFixed32,i)},writePackedFixed64:function(t,i){this.writeMessage(t,writePackedFixed64,i)},writePackedSFixed64:function(t,i){this.writeMessage(t,writePackedSFixed64,i)},writeBytesField:function(t,i){this.writeTag(t,Pbf.Bytes),this.writeBytes(i)},writeFixed32Field:function(t,i){this.writeTag(t,Pbf.Fixed32),this.writeFixed32(i)},writeSFixed32Field:function(t,i){this.writeTag(t,Pbf.Fixed32),this.writeSFixed32(i)},writeFixed64Field:function(t,i){this.writeTag(t,Pbf.Fixed64),this.writeFixed64(i)},writeSFixed64Field:function(t,i){this.writeTag(t,Pbf.Fixed64),this.writeSFixed64(i)},writeVarintField:function(t,i){this.writeTag(t,Pbf.Varint),this.writeVarint(i)},writeSVarintField:function(t,i){this.writeTag(t,Pbf.Varint),this.writeSVarint(i)},writeStringField:function(t,i){this.writeTag(t,Pbf.Bytes),this.writeString(i)},writeFloatField:function(t,i){this.writeTag(t,Pbf.Fixed32),this.writeFloat(i)},writeDoubleField:function(t,i){this.writeTag(t,Pbf.Fixed64),this.writeDouble(i)},writeBooleanField:function(t,i){this.writeVarintField(t,Boolean(i))}}}).call(this,void 0!==global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./buffer":24}],26:[function(_dereq_,module,exports){"use strict";function Point(t,n){this.x=t,this.y=n}module.exports=Point,Point.prototype={clone:function(){return new Point(this.x,this.y)},add:function(t){return this.clone()._add(t)},sub:function(t){return this.clone()._sub(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)},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 n=t.x-this.x,i=t.y-this.y;return n*n+i*i},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,n){return Math.atan2(this.x*n-this.y*t,this.x*t+this.y*n)},_matMult:function(t){var n=t[0]*this.x+t[1]*this.y,i=t[2]*this.x+t[3]*this.y;return this.x=n,this.y=i,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},_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 n=Math.cos(t),i=Math.sin(t),s=n*this.x-i*this.y,r=i*this.x+n*this.y;return this.x=s,this.y=r,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},Point.convert=function(t){return t instanceof Point?t:Array.isArray(t)?new Point(t[0],t[1]):t}},{}],27:[function(_dereq_,module,exports){function defaultSetTimout(){throw new Error("setTimeout has not been defined")}function defaultClearTimeout(){throw new Error("clearTimeout has not been defined")}function runTimeout(e){if(cachedSetTimeout===setTimeout)return setTimeout(e,0);if((cachedSetTimeout===defaultSetTimout||!cachedSetTimeout)&&setTimeout)return cachedSetTimeout=setTimeout,setTimeout(e,0);try{return cachedSetTimeout(e,0)}catch(t){try{return cachedSetTimeout.call(null,e,0)}catch(t){return cachedSetTimeout.call(this,e,0)}}}function runClearTimeout(e){if(cachedClearTimeout===clearTimeout)return clearTimeout(e);if((cachedClearTimeout===defaultClearTimeout||!cachedClearTimeout)&&clearTimeout)return cachedClearTimeout=clearTimeout,clearTimeout(e);try{return cachedClearTimeout(e)}catch(t){try{return cachedClearTimeout.call(null,e)}catch(t){return cachedClearTimeout.call(this,e)}}}function cleanUpNextTick(){draining&¤tQueue&&(draining=!1,currentQueue.length?queue=currentQueue.concat(queue):queueIndex=-1,queue.length&&drainQueue())}function drainQueue(){if(!draining){var e=runTimeout(cleanUpNextTick);draining=!0;for(var t=queue.length;t;){for(currentQueue=queue,queue=[];++queueIndex1)for(var u=1;ur;){if(o-r>600){var f=o-r+1,e=t-r+1,l=Math.log(f),s=.5*Math.exp(2*l/3),i=.5*Math.sqrt(l*s*(f-s)/f)*(e-f/2<0?-1:1);partialSort(a,t,Math.max(r,Math.floor(t-e*s/f+i)),Math.min(o,Math.floor(t+(f-e)*s/f+i)),p)}var u=a[t],M=r,w=o;for(swap(a,r,t),p(a[o],u)>0&&swap(a,r,o);M0;)w--}0===p(a[r],u)?swap(a,r,w):(w++,swap(a,w,o)),w<=t&&(r=w+1),t<=w&&(o=w-1)}}function swap(a,t,r){var o=a[t];a[t]=a[r],a[r]=o}function defaultCompare(a,t){return at?1:0}module.exports=partialSort},{}],29:[function(_dereq_,module,exports){"use strict";function supercluster(t){return new SuperCluster(t)}function SuperCluster(t){this.options=extend(Object.create(this.options),t),this.trees=new Array(this.options.maxZoom+1)}function createCluster(t,e,o,n){return{x:t,y:e,zoom:1/0,id:n,numPoints:o}}function createPointCluster(t,e){var o=t.geometry.coordinates;return createCluster(lngX(o[0]),latY(o[1]),1,e)}function getClusterJSON(t){return{type:"Feature",properties:getClusterProperties(t),geometry:{type:"Point",coordinates:[xLng(t.x),yLat(t.y)]}}}function getClusterProperties(t){var e=t.numPoints;return{cluster:!0,point_count:e,point_count_abbreviated:e>=1e4?Math.round(e/1e3)+"k":e>=1e3?Math.round(e/100)/10+"k":e}}function lngX(t){return t/360+.5}function latY(t){var e=Math.sin(t*Math.PI/180),o=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return o<0?0:o>1?1:o}function xLng(t){return 360*(t-.5)}function yLat(t){var e=(180-360*t)*Math.PI/180;return 360*Math.atan(Math.exp(e))/Math.PI-90}function extend(t,e){for(var o in e)t[o]=e[o];return t}function getX(t){return t.x}function getY(t){return t.y}var kdbush=_dereq_("kdbush");module.exports=supercluster,SuperCluster.prototype={options:{minZoom:0,maxZoom:16,radius:40,extent:512,nodeSize:64,log:!1},load:function(t){var e=this.options.log;e&&console.time("total time");var o="prepare "+t.length+" points";e&&console.time(o),this.points=t;var n=t.map(createPointCluster);e&&console.timeEnd(o);for(var r=this.options.maxZoom;r>=this.options.minZoom;r--){var i=+Date.now();this.trees[r+1]=kdbush(n,getX,getY,this.options.nodeSize,Float32Array),n=this._cluster(n,r),e&&console.log("z%d: %d clusters in %dms",r,n.length,+Date.now()-i)}return this.trees[this.options.minZoom]=kdbush(n,getX,getY,this.options.nodeSize,Float32Array),e&&console.timeEnd("total time"),this},getClusters:function(t,e){for(var o=this.trees[this._limitZoom(e)],n=o.range(lngX(t[0]),latY(t[3]),lngX(t[2]),latY(t[1])),r=[],i=0;i=0;a--)this._down(a)}function defaultCompare(t,i){return ti?1:0}function swap(t,i,a){var n=t[i];t[i]=t[a],t[a]=n}module.exports=TinyQueue,TinyQueue.prototype={push:function(t){this.data.push(t),this.length++,this._up(this.length-1)},pop:function(){var t=this.data[0];return this.data[0]=this.data[this.length-1],this.length--,this.data.pop(),this._down(0),t},peek:function(){return this.data[0]},_up:function(t){for(var i=this.data,a=this.compare;t>0;){var n=Math.floor((t-1)/2);if(!(a(i[t],i[n])<0))break;swap(i,n,t),t=n}},_down:function(t){for(var i=this.data,a=this.compare,n=this.length;;){var e=2*t+1,h=e+1,s=t;if(e=3&&(t.depth=arguments[2]),arguments.length>=4&&(t.colors=arguments[3]),isBoolean(r)?t.showHidden=r:r&&exports._extend(t,r),isUndefined(t.showHidden)&&(t.showHidden=!1),isUndefined(t.depth)&&(t.depth=2),isUndefined(t.colors)&&(t.colors=!1),isUndefined(t.customInspect)&&(t.customInspect=!0),t.colors&&(t.stylize=stylizeWithColor),formatValue(t,e,t.depth)}function stylizeWithColor(e,r){var t=inspect.styles[r];return t?"["+inspect.colors[t][0]+"m"+e+"["+inspect.colors[t][1]+"m":e}function stylizeNoColor(e,r){return e}function arrayToHash(e){var r={};return e.forEach(function(e,t){r[e]=!0}),r}function formatValue(e,r,t){if(e.customInspect&&r&&isFunction(r.inspect)&&r.inspect!==exports.inspect&&(!r.constructor||r.constructor.prototype!==r)){var n=r.inspect(t,e);return isString(n)||(n=formatValue(e,n,t)),n}var i=formatPrimitive(e,r);if(i)return i;var o=Object.keys(r),s=arrayToHash(o);if(e.showHidden&&(o=Object.getOwnPropertyNames(r)),isError(r)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return formatError(r);if(0===o.length){if(isFunction(r)){var u=r.name?": "+r.name:"";return e.stylize("[Function"+u+"]","special")}if(isRegExp(r))return e.stylize(RegExp.prototype.toString.call(r),"regexp");if(isDate(r))return e.stylize(Date.prototype.toString.call(r),"date");if(isError(r))return formatError(r)}var c="",a=!1,l=["{","}"];if(isArray(r)&&(a=!0,l=["[","]"]),isFunction(r)&&(c=" [Function"+(r.name?": "+r.name:"")+"]"),isRegExp(r)&&(c=" "+RegExp.prototype.toString.call(r)),isDate(r)&&(c=" "+Date.prototype.toUTCString.call(r)),isError(r)&&(c=" "+formatError(r)),0===o.length&&(!a||0==r.length))return l[0]+c+l[1];if(t<0)return isRegExp(r)?e.stylize(RegExp.prototype.toString.call(r),"regexp"):e.stylize("[Object]","special");e.seen.push(r);var f;return f=a?formatArray(e,r,t,s,o):o.map(function(n){return formatProperty(e,r,t,s,n,a)}),e.seen.pop(),reduceToSingleString(f,c,l)}function formatPrimitive(e,r){if(isUndefined(r))return e.stylize("undefined","undefined");if(isString(r)){var t="'"+JSON.stringify(r).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(t,"string")}return isNumber(r)?e.stylize(""+r,"number"):isBoolean(r)?e.stylize(""+r,"boolean"):isNull(r)?e.stylize("null","null"):void 0}function formatError(e){return"["+Error.prototype.toString.call(e)+"]"}function formatArray(e,r,t,n,i){for(var o=[],s=0,u=r.length;s-1&&(u=o?u.split("\n").map(function(e){return" "+e}).join("\n").substr(2):"\n"+u.split("\n").map(function(e){return" "+e}).join("\n")):u=e.stylize("[Circular]","special")),isUndefined(s)){if(o&&i.match(/^\d+$/))return u;(s=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(s=s.substr(1,s.length-2),s=e.stylize(s,"name")):(s=s.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),s=e.stylize(s,"string"))}return s+": "+u}function reduceToSingleString(e,r,t){var n=0;return e.reduce(function(e,r){return n++,r.indexOf("\n")>=0&&n++,e+r.replace(/\u001b\[\d\d?m/g,"").length+1},0)>60?t[0]+(""===r?"":r+"\n ")+" "+e.join(",\n ")+" "+t[1]:t[0]+r+" "+e.join(", ")+" "+t[1]}function isArray(e){return Array.isArray(e)}function isBoolean(e){return"boolean"==typeof e}function isNull(e){return null===e}function isNullOrUndefined(e){return null==e}function isNumber(e){return"number"==typeof e}function isString(e){return"string"==typeof e}function isSymbol(e){return"symbol"==typeof e}function isUndefined(e){return void 0===e}function isRegExp(e){return isObject(e)&&"[object RegExp]"===objectToString(e)}function isObject(e){return"object"==typeof e&&null!==e}function isDate(e){return isObject(e)&&"[object Date]"===objectToString(e)}function isError(e){return isObject(e)&&("[object Error]"===objectToString(e)||e instanceof Error)}function isFunction(e){return"function"==typeof e}function isPrimitive(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e}function objectToString(e){return Object.prototype.toString.call(e)}function pad(e){return e<10?"0"+e.toString(10):e.toString(10)}function timestamp(){var e=new Date,r=[pad(e.getHours()),pad(e.getMinutes()),pad(e.getSeconds())].join(":");return[e.getDate(),months[e.getMonth()],r].join(" ")}function hasOwnProperty(e,r){return Object.prototype.hasOwnProperty.call(e,r)}var formatRegExp=/%[sdj%]/g;exports.format=function(e){if(!isString(e)){for(var r=[],t=0;t=i)return e;switch(e){case"%s":return String(n[t++]);case"%d":return Number(n[t++]);case"%j":try{return JSON.stringify(n[t++])}catch(e){return"[Circular]"}default:return e}}),s=n[t];t>3}if(a--,1===i||2===i)o+=e.readSVarint(),n+=e.readSVarint(),1===i&&(t&&s.push(t),t=[]),t.push(new Point(o,n));else{if(7!==i)throw new Error("unknown command "+i);t&&t.push(t[0].clone())}}return t&&s.push(t),s},VectorTileFeature.prototype.bbox=function(){var e=this._pbf;e.pos=this._geometry;for(var t=e.readVarint()+e.pos,r=1,i=0,a=0,o=0,n=1/0,s=-1/0,p=1/0,h=-1/0;e.pos>3}if(i--,1===r||2===r)a+=e.readSVarint(),o+=e.readSVarint(),as&&(s=a),oh&&(h=o);else if(7!==r)throw new Error("unknown command "+r)}return[n,p,s,h]},VectorTileFeature.prototype.toGeoJSON=function(e,t,r){function i(e){for(var t=0;t>3;t=1===a?e.readString():2===a?e.readFloat():3===a?e.readDouble():4===a?e.readVarint64():5===a?e.readVarint():6===a?e.readSVarint():7===a?e.readBoolean():null}return t}var VectorTileFeature=_dereq_("./vectortilefeature.js");module.exports=VectorTileLayer,VectorTileLayer.prototype.feature=function(e){if(e<0||e>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[e];var t=this._pbf.readVarint()+this._pbf.pos;return new VectorTileFeature(this._pbf,t,this.extent,this._keys,this._values)}},{"./vectortilefeature.js":36}],38:[function(_dereq_,module,exports){function fromVectorTileJs(e){var r=[];for(var o in e.layers)r.push(prepareLayer(e.layers[o]));var t=new Pbf;return vtpb.tile.write({layers:r},t),t.finish()}function fromGeojsonVt(e){var r={};for(var o in e)r[o]=new GeoJSONWrapper(e[o].features),r[o].name=o;return fromVectorTileJs({layers:r})}function prepareLayer(e){for(var r={name:e.name||"",version:e.version||1,extent:e.extent||4096,keys:[],values:[],features:[]},o={},t={},n=0;n>31}function encodeGeometry(e){for(var r=[],o=0,t=0,n=e.length,a=0;aArrayGroup.MAX_VERTEX_ARRAY_LENGTH)&&(e=new Segment(this.layoutVertexArray.length,this.elementArray.length),this.segments.push(e)),e},ArrayGroup.prototype.prepareSegment2=function(r){var e=this.segments2[this.segments2.length-1];return(!e||e.vertexLength+r>ArrayGroup.MAX_VERTEX_ARRAY_LENGTH)&&(e=new Segment(this.layoutVertexArray.length,this.elementArray2.length),this.segments2.push(e)),e},ArrayGroup.prototype.populatePaintArrays=function(r){var e=this;for(var t in e.layerData){var a=e.layerData[t];0!==a.paintVertexArray.bytesPerElement&&a.programConfiguration.populatePaintArray(a.layer,a.paintVertexArray,a.paintPropertyStatistics,e.layoutVertexArray.length,e.globalProperties,r)}},ArrayGroup.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},ArrayGroup.prototype.serialize=function(r){return{layoutVertexArray:this.layoutVertexArray.serialize(r),elementArray:this.elementArray&&this.elementArray.serialize(r),elementArray2:this.elementArray2&&this.elementArray2.serialize(r),paintVertexArrays:serializePaintVertexArrays(this.layerData,r),segments:this.segments,segments2:this.segments2}},ArrayGroup.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,module.exports=ArrayGroup},{"./program_configuration":58,"./vertex_array_type":60}],45:[function(_dereq_,module,exports){"use strict";var ArrayGroup=_dereq_("./array_group"),BufferGroup=_dereq_("./buffer_group"),util=_dereq_("../util/util"),Bucket=function(r,t){this.zoom=r.zoom,this.overscaling=r.overscaling,this.layers=r.layers,this.index=r.index,r.arrays?this.buffers=new BufferGroup(t,r.layers,r.zoom,r.arrays):this.arrays=new ArrayGroup(t,r.layers,r.zoom)};Bucket.prototype.populate=function(r,t){for(var e=this,i=0,a=r;i=EXTENT||y<0||y>=EXTENT)){var n=r.prepareSegment(4),u=n.vertexLength;addCircleVertex(r.layoutVertexArray,o,y,-1,-1),addCircleVertex(r.layoutVertexArray,o,y,1,-1),addCircleVertex(r.layoutVertexArray,o,y,1,1),addCircleVertex(r.layoutVertexArray,o,y,-1,1),r.elementArray.emplaceBack(u,u+1,u+2),r.elementArray.emplaceBack(u,u+3,u+2),n.vertexLength+=4,n.primitiveLength+=2}}r.populatePaintArrays(e.properties)},r}(Bucket);CircleBucket.programInterface=circleInterface,module.exports=CircleBucket},{"../bucket":45,"../element_array_type":53,"../extent":54,"../load_geometry":56}],47:[function(_dereq_,module,exports){"use strict";var Bucket=_dereq_("../bucket"),createElementArrayType=_dereq_("../element_array_type"),loadGeometry=_dereq_("../load_geometry"),earcut=_dereq_("earcut"),classifyRings=_dereq_("../../util/classify_rings"),fillInterface={layoutAttributes:[{name:"a_pos",components:2,type:"Int16"}],elementArrayType:createElementArrayType(3),elementArrayType2:createElementArrayType(2),paintAttributes:[{property:"fill-color",type:"Uint8"},{property:"fill-outline-color",type:"Uint8"},{property:"fill-opacity",type:"Uint8",multiplier:255}]},FillBucket=function(e){function t(t){e.call(this,t,fillInterface)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.addFeature=function(e){for(var t=this.arrays,r=0,a=classifyRings(loadGeometry(e),500);rEXTENT)||e.y===t.y&&(e.y<0||e.y>EXTENT)}var Bucket=_dereq_("../bucket"),createElementArrayType=_dereq_("../element_array_type"),loadGeometry=_dereq_("../load_geometry"),EXTENT=_dereq_("../extent"),earcut=_dereq_("earcut"),classifyRings=_dereq_("../../util/classify_rings"),fillExtrusionInterface={layoutAttributes:[{name:"a_pos",components:2,type:"Int16"},{name:"a_normal",components:3,type:"Int16"},{name:"a_edgedistance",components:1,type:"Int16"}],elementArrayType:createElementArrayType(3),paintAttributes:[{property:"fill-extrusion-base",type:"Uint16"},{property:"fill-extrusion-height",type:"Uint16"},{property:"fill-extrusion-color",type:"Uint8"}]},FACTOR=Math.pow(2,13),FillExtrusionBucket=function(e){function t(t){e.call(this,t,fillExtrusionInterface)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.addFeature=function(e){for(var t=this.arrays,r=0,a=classifyRings(loadGeometry(e),500);r=1){var A=d[h-1];if(!isBoundaryEdge(g,A)){var E=g.sub(A)._perp()._unit();addVertex(t.layoutVertexArray,g.x,g.y,E.x,E.y,0,0,m),addVertex(t.layoutVertexArray,g.x,g.y,E.x,E.y,0,1,m),m+=A.dist(g),addVertex(t.layoutVertexArray,A.x,A.y,E.x,E.y,0,0,m),addVertex(t.layoutVertexArray,A.x,A.y,E.x,E.y,0,1,m);var v=u.vertexLength;t.elementArray.emplaceBack(v,v+1,v+2),t.elementArray.emplaceBack(v+1,v+2,v+3),u.vertexLength+=4,u.primitiveLength+=2}}p.push(g.x),p.push(g.y)}}}for(var _=earcut(p,s),T=0;T<_.length;T+=3)t.elementArray.emplaceBack(c[_[T]],c[_[T+1]],c[_[T+2]]);u.primitiveLength+=_.length/3}t.populatePaintArrays(e.properties)},t}(Bucket);FillExtrusionBucket.programInterface=fillExtrusionInterface,module.exports=FillExtrusionBucket},{"../../util/classify_rings":198,"../bucket":45,"../element_array_type":53,"../extent":54,"../load_geometry":56,earcut:5}],49:[function(_dereq_,module,exports){"use strict";function addLineVertex(e,t,r,i,a,n,d){e.emplaceBack(t.x<<1|i,t.y<<1|a,Math.round(EXTRUDE_SCALE*r.x)+128,Math.round(EXTRUDE_SCALE*r.y)+128,1+(0===n?0:n<0?-1:1)|(d*LINE_DISTANCE_SCALE&63)<<2,d*LINE_DISTANCE_SCALE>>6)}var Bucket=_dereq_("../bucket"),createElementArrayType=_dereq_("../element_array_type"),loadGeometry=_dereq_("../load_geometry"),EXTENT=_dereq_("../extent"),VectorTileFeature=_dereq_("vector-tile").VectorTileFeature,EXTRUDE_SCALE=63,COS_HALF_SHARP_CORNER=Math.cos(Math.PI/180*37.5),LINE_DISTANCE_SCALE=.5,MAX_LINE_DISTANCE=Math.pow(2,14)/LINE_DISTANCE_SCALE,lineInterface={layoutAttributes:[{name:"a_pos",components:2,type:"Int16"},{name:"a_data",components:4,type:"Uint8"}],paintAttributes:[{property:"line-color",type:"Uint8"},{property:"line-blur",multiplier:10,type:"Uint8"},{property:"line-opacity",multiplier:10,type:"Uint8"},{property:"line-gap-width",multiplier:10,type:"Uint8",name:"a_gapwidth"},{property:"line-offset",multiplier:1,type:"Int8"}],elementArrayType:createElementArrayType()},LineBucket=function(e){function t(t){e.call(this,t,lineInterface)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.addFeature=function(e){for(var t=this,r=this.layers[0].layout,i=r["line-join"],a=r["line-cap"],n=r["line-miter-limit"],d=r["line-round-limit"],s=0,u=loadGeometry(e,15);s=2&&e[l-1].equals(e[l-2]);)l--;for(var o=0;oo){var R=y.dist(m);if(R>2*p){var g=y.sub(y.sub(m)._mult(p/R)._round());d.distance+=g.dist(m),d.addCurrentVertex(g,d.distance,x.mult(1),0,0,!1,h),m=g}}var F=m&&E,B=F?r:E?A:L;if(F&&"round"===B&&(Na&&(B="bevel"),"bevel"===B&&(N>2&&(B="flipbevel"),N100)I=C.clone().mult(-1);else{var k=x.x*C.y-x.y*C.x>0?-1:1,D=N*x.add(C).mag()/x.sub(C).mag();I._perp()._mult(D*k)}d.addCurrentVertex(y,d.distance,I,0,0,!1,h),d.addCurrentVertex(y,d.distance,I.mult(-1),0,0,!1,h)}else if("bevel"===B||"fakeround"===B){var P=x.x*C.y-x.y*C.x>0,U=-Math.sqrt(N*N-1);if(P?(f=0,v=U):(v=0,f=U),S||d.addCurrentVertex(y,d.distance,x,v,f,!1,h),"fakeround"===B){for(var q=Math.floor(8*(.5-(T-.5))),M=void 0,O=0;O=0;X--)M=x.mult((X+1)/(q+1))._add(C)._unit(),d.addPieSliceVertex(y,d.distance,M,P,h)}E&&d.addCurrentVertex(y,d.distance,C,-v,-f,!1,h)}else"butt"===B?(S||d.addCurrentVertex(y,d.distance,x,0,0,!1,h),E&&d.addCurrentVertex(y,d.distance,C,0,0,!1,h)):"square"===B?(S||(d.addCurrentVertex(y,d.distance,x,1,1,!1,h),d.e1=d.e2=-1),E&&d.addCurrentVertex(y,d.distance,C,-1,-1,!1,h)):"round"===B&&(S||(d.addCurrentVertex(y,d.distance,x,0,0,!1,h),d.addCurrentVertex(y,d.distance,x,1,1,!0,h),d.e1=d.e2=-1),E&&(d.addCurrentVertex(y,d.distance,C,-1,-1,!0,h),d.addCurrentVertex(y,d.distance,C,0,0,!1,h)));if(b&&V2*p){var w=y.add(E.sub(y)._mult(p/H)._round());d.distance+=w.dist(y),d.addCurrentVertex(w,d.distance,C.mult(1),0,0,!1,h),y=w}}S=!1}_.populatePaintArrays(s)}},t.prototype.addCurrentVertex=function(e,t,r,i,a,n,d){var s,u=n?1:0,l=this.arrays,o=l.layoutVertexArray,p=l.elementArray;s=r.clone(),i&&s._sub(r.perp()._mult(i)),addLineVertex(o,e,s,u,0,i,t),this.e3=d.vertexLength++,this.e1>=0&&this.e2>=0&&(p.emplaceBack(this.e1,this.e2,this.e3),d.primitiveLength++),this.e1=this.e2,this.e2=this.e3,s=r.mult(-1),a&&s._sub(r.perp()._mult(a)),addLineVertex(o,e,s,u,1,-a,t),this.e3=d.vertexLength++,this.e1>=0&&this.e2>=0&&(p.emplaceBack(this.e1,this.e2,this.e3),d.primitiveLength++),this.e1=this.e2,this.e2=this.e3,t>MAX_LINE_DISTANCE/2&&(this.distance=0,this.addCurrentVertex(e,this.distance,r,i,a,n,d))},t.prototype.addPieSliceVertex=function(e,t,r,i,a){var n=i?1:0;r=r.mult(i?-1:1);var d=this.arrays,s=d.layoutVertexArray,u=d.elementArray;addLineVertex(s,e,r,0,n,0,t),this.e3=a.vertexLength++,this.e1>=0&&this.e2>=0&&(u.emplaceBack(this.e1,this.e2,this.e3),a.primitiveLength++),i?this.e2=this.e3:this.e1=this.e3},t}(Bucket);LineBucket.programInterface=lineInterface,module.exports=LineBucket},{"../bucket":45,"../element_array_type":53,"../extent":54,"../load_geometry":56,"vector-tile":34}],50:[function(_dereq_,module,exports){"use strict";function addVertex(e,t,o,a,i,r,n,s,l,c,u,y){e.emplaceBack(t,o,Math.round(64*a),Math.round(64*i),r/4,n/4,packUint8ToFloat(10*(u||0),y%256),packUint8ToFloat(10*(l||0),10*Math.min(c||25,25)),s?s[0]:void 0,s?s[1]:void 0,s?s[2]:void 0)}function addCollisionBoxVertex(e,t,o,a,i){return e.emplaceBack(t.x,t.y,Math.round(o.x),Math.round(o.y),10*a,10*i)}function getSizeData(e,t,o){var a={isFeatureConstant:t.isLayoutValueFeatureConstant(o),isZoomConstant:t.isLayoutValueZoomConstant(o)};if(a.isFeatureConstant&&(a.layoutSize=t.getLayoutValue(o,{zoom:e+1})),!a.isZoomConstant){for(var i=t.getLayoutValueStopZoomLevels(o),r=0;rEXTENT||r.y<0||r.y>EXTENT);if(!h||n){var s=n||v;a.addSymbolInstance(r,i,t,o,a.layers[0],s,a.collisionBoxArray,e.index,e.sourceLayerIndex,a.index,u,x,f,p,d,b,{zoom:a.zoom},e.properties)}};if("line"===s["symbol-placement"])for(var B=0,M=clipLine(e.geometry,0,0,EXTENT,EXTENT);B=0;r--)if(o.dist(i[r])7*Math.PI/4)continue}else if(i&&r&&d<=3*Math.PI/4||d>5*Math.PI/4)continue}else if(i&&r&&(d<=Math.PI/2||d>3*Math.PI/2))continue;var g=x.tl,f=x.tr,b=x.bl,v=x.br,S=x.tex,I=x.anchorPoint,z=Math.max(y+Math.log(x.minScale)/Math.LN2,p),B=Math.min(y+Math.log(x.maxScale)/Math.LN2,25);if(!(B<=z)){z===p&&(z=0);var M=Math.round(x.glyphAngle/(2*Math.PI)*256),L=e.prepareSegment(4),A=L.vertexLength;addVertex(u,I.x,I.y,g.x,g.y,S.x,S.y,a,z,B,p,M),addVertex(u,I.x,I.y,f.x,f.y,S.x+S.w,S.y,a,z,B,p,M),addVertex(u,I.x,I.y,b.x,b.y,S.x,S.y+S.h,a,z,B,p,M),addVertex(u,I.x,I.y,v.x,v.y,S.x+S.w,S.y+S.h,a,z,B,p,M),c.emplaceBack(A,A+1,A+2),c.emplaceBack(A+1,A+2,A+3),L.vertexLength+=4,L.primitiveLength+=2}}e.populatePaintArrays(s)},SymbolBucket.prototype.addToDebugBuffers=function(e){for(var t=this,o=this.arrays.collisionBox,a=o.layoutVertexArray,i=o.elementArray,r=-e.angle,n=e.yStretch,s=0,l=t.symbolInstances;sSymbolBucket.MAX_INSTANCES&&util.warnOnce("Too many symbols being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),A>SymbolBucket.MAX_INSTANCES&&util.warnOnce("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907");var T=(o[WritingMode.vertical]?WritingMode.vertical:0)|(o[WritingMode.horizontal]?WritingMode.horizontal:0);this.symbolInstances.push({textBoxStartIndex:B,textBoxEndIndex:M,iconBoxStartIndex:L,iconBoxEndIndex:A,glyphQuads:S,iconQuads:v,anchor:e,featureIndex:s,featureProperties:g,writingModes:T})},SymbolBucket.programInterfaces=symbolInterfaces,SymbolBucket.MAX_INSTANCES=65535,module.exports=SymbolBucket},{"../../shaders/encode_attribute":81,"../../symbol/anchor":160,"../../symbol/clip_line":162,"../../symbol/collision_feature":164,"../../symbol/get_anchors":166,"../../symbol/mergelines":169,"../../symbol/quads":170,"../../symbol/shaping":171,"../../symbol/transform_text":173,"../../util/classify_rings":198,"../../util/find_pole_of_inaccessibility":204,"../../util/script_detection":211,"../../util/token":214,"../../util/util":215,"../array_group":44,"../buffer_group":52,"../element_array_type":53,"../extent":54,"../load_geometry":56,"point-geometry":26,"vector-tile":34}],51:[function(_dereq_,module,exports){"use strict";var AttributeType={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT"},Buffer=function(t,e,r){this.arrayBuffer=t.arrayBuffer,this.length=t.length,this.attributes=e.members,this.itemSize=e.bytesPerElement,this.type=r,this.arrayType=e};Buffer.fromStructArray=function(t,e){return new Buffer(t.serialize(),t.constructor.serialize(),e)},Buffer.prototype.bind=function(t){var e=t[this.type];this.buffer?t.bindBuffer(e,this.buffer):(this.gl=t,this.buffer=t.createBuffer(),t.bindBuffer(e,this.buffer),t.bufferData(e,this.arrayBuffer,t.STATIC_DRAW),this.arrayBuffer=null)},Buffer.prototype.enableAttributes=function(t,e){for(var r=this,f=0;f0?t+2*e:e}function translate(e,t,r,i,a){if(!t[0]&&!t[1])return e;t=Point.convert(t),"viewport"===r&&t._rotate(-i);for(var n=[],s=0;sr.max||d.yr.max)&&util.warnOnce("Geometry exceeds allowed extent, reduce your vector tile buffer size")}return u}},{"../util/util":215,"./extent":54}],57:[function(_dereq_,module,exports){"use strict";var PosArray=_dereq_("../util/struct_array")({members:[{name:"a_pos",type:"Int16",components:2}]});module.exports=PosArray},{"../util/struct_array":213}],58:[function(_dereq_,module,exports){"use strict";function getPaintAttributeValue(t,r,e,i){if(!t.zoomStops)return r.getPaintValue(t.property,e,i);var a=t.zoomStops.map(function(a){return r.getPaintValue(t.property,util.extend({},e,{zoom:a}),i)});return 1===a.length?a[0]:a}function normalizePaintAttribute(t,r){var e=t.name;e||(e=t.property.replace(r.type+"-","").replace(/-/g,"_"));var i="color"===r._paintSpecifications[t.property].type;return util.extend({name:"a_"+e,components:i?4:1,multiplier:i?255:1,dimensions:i?4:1},t)}var createVertexArrayType=_dereq_("./vertex_array_type"),util=_dereq_("../util/util"),ProgramConfiguration=function(){this.attributes=[],this.uniforms=[],this.interpolationUniforms=[],this.pragmas={vertex:{},fragment:{}},this.cacheKey=""};ProgramConfiguration.createDynamic=function(t,r,e){for(var i=new ProgramConfiguration,a=0,n=t;a4)for(;p90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};LngLat.prototype.wrap=function(){return new LngLat(wrap(this.lng,-180,180),this.lat)},LngLat.prototype.toArray=function(){return[this.lng,this.lat]},LngLat.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},LngLat.convert=function(t){if(t instanceof LngLat)return t;if(Array.isArray(t)&&2===t.length)return new LngLat(Number(t[0]),Number(t[1]));if(!Array.isArray(t)&&"object"==typeof t&&null!==t)return new LngLat(Number(t.lng),Number(t.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, or an array of [, ]")},module.exports=LngLat},{"../util/util":215}],63:[function(_dereq_,module,exports){"use strict";var LngLat=_dereq_("./lng_lat"),LngLatBounds=function(t,n){t&&(n?this.setSouthWest(t).setNorthEast(n):4===t.length?this.setSouthWest([t[0],t[1]]).setNorthEast([t[2],t[3]]):this.setSouthWest(t[0]).setNorthEast(t[1]))};LngLatBounds.prototype.setNorthEast=function(t){return this._ne=LngLat.convert(t),this},LngLatBounds.prototype.setSouthWest=function(t){return this._sw=LngLat.convert(t),this},LngLatBounds.prototype.extend=function(t){var n,e,s=this._sw,o=this._ne;if(t instanceof LngLat)n=t,e=t;else{if(!(t instanceof LngLatBounds))return Array.isArray(t)?t.every(Array.isArray)?this.extend(LngLatBounds.convert(t)):this.extend(LngLat.convert(t)):this;if(n=t._sw,e=t._ne,!n||!e)return this}return s||o?(s.lng=Math.min(n.lng,s.lng),s.lat=Math.min(n.lat,s.lat),o.lng=Math.max(e.lng,o.lng),o.lat=Math.max(e.lat,o.lat)):(this._sw=new LngLat(n.lng,n.lat),this._ne=new LngLat(e.lng,e.lat)),this},LngLatBounds.prototype.getCenter=function(){return new LngLat((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},LngLatBounds.prototype.getSouthWest=function(){return this._sw},LngLatBounds.prototype.getNorthEast=function(){return this._ne},LngLatBounds.prototype.getNorthWest=function(){return new LngLat(this.getWest(),this.getNorth())},LngLatBounds.prototype.getSouthEast=function(){return new LngLat(this.getEast(),this.getSouth())},LngLatBounds.prototype.getWest=function(){return this._sw.lng},LngLatBounds.prototype.getSouth=function(){return this._sw.lat},LngLatBounds.prototype.getEast=function(){return this._ne.lng},LngLatBounds.prototype.getNorth=function(){return this._ne.lat},LngLatBounds.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},LngLatBounds.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},LngLatBounds.convert=function(t){return!t||t instanceof LngLatBounds?t:new LngLatBounds(t)},module.exports=LngLatBounds},{"./lng_lat":62}],64:[function(_dereq_,module,exports){"use strict";var LngLat=_dereq_("./lng_lat"),Point=_dereq_("point-geometry"),Coordinate=_dereq_("./coordinate"),util=_dereq_("../util/util"),interp=_dereq_("../style-spec/util/interpolate"),TileCoord=_dereq_("../source/tile_coord"),EXTENT=_dereq_("../data/extent"),glmatrix=_dereq_("@mapbox/gl-matrix"),vec4=glmatrix.vec4,mat4=glmatrix.mat4,mat2=glmatrix.mat2,Transform=function(t,i,o){this.tileSize=512,this._renderWorldCopies=void 0===o||o,this._minZoom=t||0,this._maxZoom=i||22,this.latRange=[-85.05113,85.05113],this.width=0,this.height=0,this._center=new LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0},prototypeAccessors={minZoom:{},maxZoom:{},renderWorldCopies:{},worldSize:{},centerPoint:{},size:{},bearing:{},pitch:{},fov:{},zoom:{},center:{},unmodified:{},x:{},y:{},point:{}};prototypeAccessors.minZoom.get=function(){return this._minZoom},prototypeAccessors.minZoom.set=function(t){this._minZoom!==t&&(this._minZoom=t,this.zoom=Math.max(this.zoom,t))},prototypeAccessors.maxZoom.get=function(){return this._maxZoom},prototypeAccessors.maxZoom.set=function(t){this._maxZoom!==t&&(this._maxZoom=t,this.zoom=Math.min(this.zoom,t))},prototypeAccessors.renderWorldCopies.get=function(){return this._renderWorldCopies},prototypeAccessors.worldSize.get=function(){return this.tileSize*this.scale},prototypeAccessors.centerPoint.get=function(){return this.size._div(2)},prototypeAccessors.size.get=function(){return new Point(this.width,this.height)},prototypeAccessors.bearing.get=function(){return-this.angle/Math.PI*180},prototypeAccessors.bearing.set=function(t){var i=-util.wrap(t,-180,180)*Math.PI/180;this.angle!==i&&(this._unmodified=!1,this.angle=i,this._calcMatrices(),this.rotationMatrix=mat2.create(),mat2.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},prototypeAccessors.pitch.get=function(){return this._pitch/Math.PI*180},prototypeAccessors.pitch.set=function(t){var i=util.clamp(t,0,60)/180*Math.PI;this._pitch!==i&&(this._unmodified=!1,this._pitch=i,this._calcMatrices())},prototypeAccessors.fov.get=function(){return this._fov/Math.PI*180},prototypeAccessors.fov.set=function(t){t=Math.max(.01,Math.min(60,t)),this._fov!==t&&(this._unmodified=!1,this._fov=t/180*Math.PI,this._calcMatrices())},prototypeAccessors.zoom.get=function(){return this._zoom},prototypeAccessors.zoom.set=function(t){var i=Math.min(Math.max(t,this.minZoom),this.maxZoom);this._zoom!==i&&(this._unmodified=!1,this._zoom=i,this.scale=this.zoomScale(i),this.tileZoom=Math.floor(i),this.zoomFraction=i-this.tileZoom,this._constrain(),this._calcMatrices())},prototypeAccessors.center.get=function(){return this._center},prototypeAccessors.center.set=function(t){t.lat===this._center.lat&&t.lng===this._center.lng||(this._unmodified=!1,this._center=t,this._constrain(),this._calcMatrices())},Transform.prototype.coveringZoomLevel=function(t){return(t.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/t.tileSize))},Transform.prototype.getVisibleWrappedCoordinates=function(t){for(var i=this.pointCoordinate(new Point(0,0),0),o=this.pointCoordinate(new Point(this.width,0),0),e=Math.floor(i.column),r=Math.floor(o.column),n=[t],s=e;s<=r;s++)0!==s&&n.push(new TileCoord(t.z,t.x,t.y,s));return n},Transform.prototype.coveringTiles=function(t){var i=this.coveringZoomLevel(t),o=i;if(it.maxzoom&&(i=t.maxzoom);var e=this.pointCoordinate(this.centerPoint,i),r=new Point(e.column-.5,e.row-.5),n=[this.pointCoordinate(new Point(0,0),i),this.pointCoordinate(new Point(this.width,0),i),this.pointCoordinate(new Point(this.width,this.height),i),this.pointCoordinate(new Point(0,this.height),i)];return TileCoord.cover(i,n,t.reparseOverscaled?o:i,this._renderWorldCopies).sort(function(t,i){return r.dist(t)-r.dist(i)})},Transform.prototype.resize=function(t,i){this.width=t,this.height=i,this.pixelsToGLUnits=[2/t,-2/i],this._constrain(),this._calcMatrices()},prototypeAccessors.unmodified.get=function(){return this._unmodified},Transform.prototype.zoomScale=function(t){return Math.pow(2,t)},Transform.prototype.scaleZoom=function(t){return Math.log(t)/Math.LN2},Transform.prototype.project=function(t){return new Point(this.lngX(t.lng),this.latY(t.lat))},Transform.prototype.unproject=function(t){return new LngLat(this.xLng(t.x),this.yLat(t.y))},prototypeAccessors.x.get=function(){return this.lngX(this.center.lng)},prototypeAccessors.y.get=function(){return this.latY(this.center.lat)},prototypeAccessors.point.get=function(){return new Point(this.x,this.y)},Transform.prototype.lngX=function(t){return(180+t)*this.worldSize/360},Transform.prototype.latY=function(t){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360)))*this.worldSize/360},Transform.prototype.xLng=function(t){return 360*t/this.worldSize-180},Transform.prototype.yLat=function(t){var i=180-360*t/this.worldSize;return 360/Math.PI*Math.atan(Math.exp(i*Math.PI/180))-90},Transform.prototype.setLocationAtPoint=function(t,i){var o=this.pointCoordinate(i)._sub(this.pointCoordinate(this.centerPoint));this.center=this.coordinateLocation(this.locationCoordinate(t)._sub(o)),this._renderWorldCopies&&(this.center=this.center.wrap())},Transform.prototype.locationPoint=function(t){return this.coordinatePoint(this.locationCoordinate(t))},Transform.prototype.pointLocation=function(t){return this.coordinateLocation(this.pointCoordinate(t))},Transform.prototype.locationCoordinate=function(t){return new Coordinate(this.lngX(t.lng)/this.tileSize,this.latY(t.lat)/this.tileSize,this.zoom).zoomTo(this.tileZoom)},Transform.prototype.coordinateLocation=function(t){var i=t.zoomTo(this.zoom);return new LngLat(this.xLng(i.column*this.tileSize),this.yLat(i.row*this.tileSize))},Transform.prototype.pointCoordinate=function(t,i){void 0===i&&(i=this.tileZoom);var e=[t.x,t.y,0,1],r=[t.x,t.y,1,1];vec4.transformMat4(e,e,this.pixelMatrixInverse),vec4.transformMat4(r,r,this.pixelMatrixInverse);var n=e[3],s=r[3],a=e[0]/n,h=r[0]/s,c=e[1]/n,m=r[1]/s,p=e[2]/n,l=r[2]/s,u=p===l?0:(0-p)/(l-p);return new Coordinate(interp(a,h,u)/this.tileSize,interp(c,m,u)/this.tileSize,this.zoom)._zoomTo(i)},Transform.prototype.coordinatePoint=function(t){var i=t.zoomTo(this.zoom),o=[i.column*this.tileSize,i.row*this.tileSize,0,1];return vec4.transformMat4(o,o,this.pixelMatrix),new Point(o[0]/o[3],o[1]/o[3])},Transform.prototype.calculatePosMatrix=function(t,i){var o=t.toCoordinate(i),e=this.worldSize/this.zoomScale(o.zoom),r=mat4.identity(new Float64Array(16));return mat4.translate(r,r,[o.column*e,o.row*e,0]),mat4.scale(r,r,[e/EXTENT,e/EXTENT,1]),mat4.multiply(r,this.projMatrix,r),new Float32Array(r)},Transform.prototype._constrain=function(){if(this.center&&this.width&&this.height&&!this._constraining){this._constraining=!0;var t,i,o,e,r=-90,n=90,s=-180,a=180,h=this.size,c=this._unmodified;if(this.latRange){var m=this.latRange;r=this.latY(m[1]),t=(n=this.latY(m[0]))-rn&&(e=n-f)}if(this.lngRange){var d=this.x,g=h.x/2;d-ga&&(o=a-g)}void 0===o&&void 0===e||(this.center=this.unproject(new Point(void 0!==o?o:this.x,void 0!==e?e:this.y))),this._unmodified=c,this._constraining=!1}},Transform.prototype._calcMatrices=function(){if(this.height){this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height;var t=this._fov/2,i=Math.PI/2+this._pitch,o=Math.sin(t)*this.cameraToCenterDistance/Math.sin(Math.PI-i-t),r=1.01*(Math.cos(Math.PI/2-this._pitch)*o+this.cameraToCenterDistance),n=new Float64Array(16);mat4.perspective(n,this._fov,this.width/this.height,1,r),mat4.scale(n,n,[1,-1,1]),mat4.translate(n,n,[0,0,-this.cameraToCenterDistance]),mat4.rotateX(n,n,this._pitch),mat4.rotateZ(n,n,this.angle),mat4.translate(n,n,[-this.x,-this.y,0]);var s=this.worldSize/(2*Math.PI*6378137*Math.abs(Math.cos(this.center.lat*(Math.PI/180))));if(mat4.scale(n,n,[1,1,s,1]),this.projMatrix=n,n=mat4.create(),mat4.scale(n,n,[this.width/2,-this.height/2,1]),mat4.translate(n,n,[1,-1,0]),this.pixelMatrix=mat4.multiply(new Float64Array(16),n,this.projMatrix),!(n=mat4.invert(new Float64Array(16),this.pixelMatrix)))throw new Error("failed to invert matrix");this.pixelMatrixInverse=n}},Object.defineProperties(Transform.prototype,prototypeAccessors),module.exports=Transform},{"../data/extent":54,"../source/tile_coord":96,"../style-spec/util/interpolate":123,"../util/util":215,"./coordinate":61,"./lng_lat":62,"@mapbox/gl-matrix":1,"point-geometry":26}],65:[function(_dereq_,module,exports){"use strict";var browser=_dereq_("./util/browser"),mapboxgl=module.exports={};mapboxgl.version=_dereq_("../package.json").version,mapboxgl.workerCount=Math.max(Math.floor(browser.hardwareConcurrency/2),1),mapboxgl.Map=_dereq_("./ui/map"),mapboxgl.NavigationControl=_dereq_("./ui/control/navigation_control"),mapboxgl.GeolocateControl=_dereq_("./ui/control/geolocate_control"),mapboxgl.AttributionControl=_dereq_("./ui/control/attribution_control"),mapboxgl.ScaleControl=_dereq_("./ui/control/scale_control"),mapboxgl.FullscreenControl=_dereq_("./ui/control/fullscreen_control"),mapboxgl.Popup=_dereq_("./ui/popup"),mapboxgl.Marker=_dereq_("./ui/marker"),mapboxgl.Style=_dereq_("./style/style"),mapboxgl.LngLat=_dereq_("./geo/lng_lat"),mapboxgl.LngLatBounds=_dereq_("./geo/lng_lat_bounds"),mapboxgl.Point=_dereq_("point-geometry"),mapboxgl.Evented=_dereq_("./util/evented"),mapboxgl.supported=_dereq_("./util/browser").supported;var config=_dereq_("./util/config");mapboxgl.config=config;var rtlTextPlugin=_dereq_("./source/rtl_text_plugin");mapboxgl.setRTLTextPlugin=rtlTextPlugin.setRTLTextPlugin,Object.defineProperty(mapboxgl,"accessToken",{get:function(){return config.ACCESS_TOKEN},set:function(o){config.ACCESS_TOKEN=o}})},{"../package.json":43,"./geo/lng_lat":62,"./geo/lng_lat_bounds":63,"./source/rtl_text_plugin":91,"./style/style":149,"./ui/control/attribution_control":176,"./ui/control/fullscreen_control":177,"./ui/control/geolocate_control":178,"./ui/control/navigation_control":180,"./ui/control/scale_control":181,"./ui/map":190,"./ui/marker":191,"./ui/popup":192,"./util/browser":195,"./util/config":199,"./util/evented":203,"point-geometry":26}],66:[function(_dereq_,module,exports){"use strict";function drawBackground(r,t,e){var a=r.gl,i=r.transform,n=i.tileSize,o=e.paint["background-color"],l=e.paint["background-pattern"],u=e.paint["background-opacity"],f=!l&&1===o[3]&&1===u;if(r.isOpaquePass===f){a.disable(a.STENCIL_TEST),r.setDepthSublayer(0);var s;l?(s=r.useProgram("fillPattern",r.basicFillProgramConfiguration),pattern.prepare(l,r,s),r.tileExtentPatternVAO.bind(a,s,r.tileExtentBuffer)):(s=r.useProgram("fill",r.basicFillProgramConfiguration),a.uniform4fv(s.u_color,o),r.tileExtentVAO.bind(a,s,r.tileExtentBuffer)),a.uniform1f(s.u_opacity,u);for(var g=0,p=i.coveringTiles({tileSize:n});g":[24,[4,18,20,9,4,0]],"?":[18,[3,16,3,17,4,19,5,20,7,21,11,21,13,20,14,19,15,17,15,15,14,13,13,12,9,10,9,7,-1,-1,9,2,8,1,9,0,10,1,9,2]],"@":[27,[18,13,17,15,15,16,12,16,10,15,9,14,8,11,8,8,9,6,11,5,14,5,16,6,17,8,-1,-1,12,16,10,14,9,11,9,8,10,6,11,5,-1,-1,18,16,17,8,17,6,19,5,21,5,23,7,24,10,24,12,23,15,22,17,20,19,18,20,15,21,12,21,9,20,7,19,5,17,4,15,3,12,3,9,4,6,5,4,7,2,9,1,12,0,15,0,18,1,20,2,21,3,-1,-1,19,16,18,8,18,6,19,5]],A:[18,[9,21,1,0,-1,-1,9,21,17,0,-1,-1,4,7,14,7]],B:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,15,17,13,16,12,13,11,-1,-1,4,11,13,11,16,10,17,9,18,7,18,4,17,2,16,1,13,0,4,0]],C:[21,[18,16,17,18,15,20,13,21,9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5]],D:[21,[4,21,4,0,-1,-1,4,21,11,21,14,20,16,18,17,16,18,13,18,8,17,5,16,3,14,1,11,0,4,0]],E:[19,[4,21,4,0,-1,-1,4,21,17,21,-1,-1,4,11,12,11,-1,-1,4,0,17,0]],F:[18,[4,21,4,0,-1,-1,4,21,17,21,-1,-1,4,11,12,11]],G:[21,[18,16,17,18,15,20,13,21,9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,18,8,-1,-1,13,8,18,8]],H:[22,[4,21,4,0,-1,-1,18,21,18,0,-1,-1,4,11,18,11]],I:[8,[4,21,4,0]],J:[16,[12,21,12,5,11,2,10,1,8,0,6,0,4,1,3,2,2,5,2,7]],K:[21,[4,21,4,0,-1,-1,18,21,4,7,-1,-1,9,12,18,0]],L:[17,[4,21,4,0,-1,-1,4,0,16,0]],M:[24,[4,21,4,0,-1,-1,4,21,12,0,-1,-1,20,21,12,0,-1,-1,20,21,20,0]],N:[22,[4,21,4,0,-1,-1,4,21,18,0,-1,-1,18,21,18,0]],O:[22,[9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,19,8,19,13,18,16,17,18,15,20,13,21,9,21]],P:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,14,17,12,16,11,13,10,4,10]],Q:[22,[9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,19,8,19,13,18,16,17,18,15,20,13,21,9,21,-1,-1,12,4,18,-2]],R:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,15,17,13,16,12,13,11,4,11,-1,-1,11,11,18,0]],S:[20,[17,18,15,20,12,21,8,21,5,20,3,18,3,16,4,14,5,13,7,12,13,10,15,9,16,8,17,6,17,3,15,1,12,0,8,0,5,1,3,3]],T:[16,[8,21,8,0,-1,-1,1,21,15,21]],U:[22,[4,21,4,6,5,3,7,1,10,0,12,0,15,1,17,3,18,6,18,21]],V:[18,[1,21,9,0,-1,-1,17,21,9,0]],W:[24,[2,21,7,0,-1,-1,12,21,7,0,-1,-1,12,21,17,0,-1,-1,22,21,17,0]],X:[20,[3,21,17,0,-1,-1,17,21,3,0]],Y:[18,[1,21,9,11,9,0,-1,-1,17,21,9,11]],Z:[20,[17,21,3,0,-1,-1,3,21,17,21,-1,-1,3,0,17,0]],"[":[14,[4,25,4,-7,-1,-1,5,25,5,-7,-1,-1,4,25,11,25,-1,-1,4,-7,11,-7]],"\\":[14,[0,21,14,-3]],"]":[14,[9,25,9,-7,-1,-1,10,25,10,-7,-1,-1,3,25,10,25,-1,-1,3,-7,10,-7]],"^":[16,[6,15,8,18,10,15,-1,-1,3,12,8,17,13,12,-1,-1,8,17,8,0]],_:[16,[0,-2,16,-2]],"`":[10,[6,21,5,20,4,18,4,16,5,15,6,16,5,17]],a:[19,[15,14,15,0,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],b:[19,[4,21,4,0,-1,-1,4,11,6,13,8,14,11,14,13,13,15,11,16,8,16,6,15,3,13,1,11,0,8,0,6,1,4,3]],c:[18,[15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],d:[19,[15,21,15,0,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],e:[18,[3,8,15,8,15,10,14,12,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],f:[12,[10,21,8,21,6,20,5,17,5,0,-1,-1,2,14,9,14]],g:[19,[15,14,15,-2,14,-5,13,-6,11,-7,8,-7,6,-6,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],h:[19,[4,21,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0]],i:[8,[3,21,4,20,5,21,4,22,3,21,-1,-1,4,14,4,0]],j:[10,[5,21,6,20,7,21,6,22,5,21,-1,-1,6,14,6,-3,5,-6,3,-7,1,-7]],k:[17,[4,21,4,0,-1,-1,14,14,4,4,-1,-1,8,8,15,0]],l:[8,[4,21,4,0]],m:[30,[4,14,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0,-1,-1,15,10,18,13,20,14,23,14,25,13,26,10,26,0]],n:[19,[4,14,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0]],o:[19,[8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3,16,6,16,8,15,11,13,13,11,14,8,14]],p:[19,[4,14,4,-7,-1,-1,4,11,6,13,8,14,11,14,13,13,15,11,16,8,16,6,15,3,13,1,11,0,8,0,6,1,4,3]],q:[19,[15,14,15,-7,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],r:[13,[4,14,4,0,-1,-1,4,8,5,11,7,13,9,14,12,14]],s:[17,[14,11,13,13,10,14,7,14,4,13,3,11,4,9,6,8,11,7,13,6,14,4,14,3,13,1,10,0,7,0,4,1,3,3]],t:[12,[5,21,5,4,6,1,8,0,10,0,-1,-1,2,14,9,14]],u:[19,[4,14,4,4,5,1,7,0,10,0,12,1,15,4,-1,-1,15,14,15,0]],v:[16,[2,14,8,0,-1,-1,14,14,8,0]],w:[22,[3,14,7,0,-1,-1,11,14,7,0,-1,-1,11,14,15,0,-1,-1,19,14,15,0]],x:[17,[3,14,14,0,-1,-1,14,14,3,0]],y:[16,[2,14,8,0,-1,-1,14,14,8,0,6,-4,4,-6,2,-7,1,-7]],z:[17,[14,14,3,0,-1,-1,3,14,14,14,-1,-1,3,0,14,0]],"{":[14,[9,25,7,24,6,23,5,21,5,19,6,17,7,16,8,14,8,12,6,10,-1,-1,7,24,6,22,6,20,7,18,8,17,9,15,9,13,8,11,4,9,8,7,9,5,9,3,8,1,7,0,6,-2,6,-4,7,-6,-1,-1,6,8,8,6,8,4,7,2,6,1,5,-1,5,-3,6,-5,7,-6,9,-7]],"|":[8,[4,25,4,-7]],"}":[14,[5,25,7,24,8,23,9,21,9,19,8,17,7,16,6,14,6,12,8,10,-1,-1,7,24,8,22,8,20,7,18,6,17,5,15,5,13,6,11,10,9,6,7,5,5,5,3,6,1,7,0,8,-2,8,-4,7,-6,-1,-1,8,8,6,6,6,4,7,2,8,1,9,-1,9,-3,8,-5,7,-6,5,-7]],"~":[24,[3,6,3,8,4,11,6,12,8,12,10,11,14,8,16,7,18,7,20,8,21,10,-1,-1,3,8,4,10,6,11,8,11,10,10,14,7,16,6,18,6,20,7,21,10,21,12]]}},{"../data/buffer":51,"../data/extent":54,"../data/pos_array":57,"../util/browser":195,"./vertex_array_object":80,"@mapbox/gl-matrix":1}],70:[function(_dereq_,module,exports){"use strict";function drawFill(t,e,r,i){var a=t.gl;a.enable(a.STENCIL_TEST);var l=!r.paint["fill-pattern"]&&r.isPaintValueFeatureConstant("fill-color")&&r.isPaintValueFeatureConstant("fill-opacity")&&1===r.paint["fill-color"][3]&&1===r.paint["fill-opacity"];t.isOpaquePass===l&&(t.setDepthSublayer(1),drawFillTiles(t,e,r,i,drawFillTile)),!t.isOpaquePass&&r.paint["fill-antialias"]&&(t.lineWidth(2),t.depthMask(!1),t.setDepthSublayer(r.getPaintProperty("fill-outline-color")?2:0),drawFillTiles(t,e,r,i,drawStrokeTile))}function drawFillTiles(t,e,r,i,a){for(var l=!0,n=0,o=i;n0?1/(1-r):1+r}function saturationFactor(r){return r>0?1-1/(1.001-r):-r}function getFadeValues(r,t,e,a){var i=e.paint["raster-fade-duration"];if(r.sourceCache&&i>0){var o=Date.now(),n=(o-r.timeAdded)/i,u=t?(o-t.timeAdded)/i:-1,s=r.sourceCache.getSource(),c=a.coveringZoomLevel({tileSize:s.tileSize,roundZoom:s.roundZoom}),f=!t||Math.abs(t.coord.z-c)>Math.abs(r.coord.z-c),d=f&&r.refreshedUponExpiration?1:util.clamp(f?n:1-u,0,1);return r.refreshedUponExpiration&&n>=1&&(r.refreshedUponExpiration=!1),t?{opacity:1,mix:1-d}:{opacity:d,mix:0}}return{opacity:1,mix:0}}var util=_dereq_("../util/util");module.exports=drawRaster},{"../util/util":215}],74:[function(_dereq_,module,exports){"use strict";function drawSymbols(t,e,i,o){if(!t.isOpaquePass){var a=!(i.layout["text-allow-overlap"]||i.layout["icon-allow-overlap"]||i.layout["text-ignore-placement"]||i.layout["icon-ignore-placement"]),n=t.gl;a?n.disable(n.STENCIL_TEST):n.enable(n.STENCIL_TEST),t.setDepthSublayer(0),t.depthMask(!1),drawLayerSymbols(t,e,i,o,!1,i.paint["icon-translate"],i.paint["icon-translate-anchor"],i.layout["icon-rotation-alignment"],i.layout["icon-rotation-alignment"]),drawLayerSymbols(t,e,i,o,!0,i.paint["text-translate"],i.paint["text-translate-anchor"],i.layout["text-rotation-alignment"],i.layout["text-pitch-alignment"]),e.map.showCollisionBoxes&&drawCollisionDebug(t,e,i,o)}}function drawLayerSymbols(t,e,i,o,a,n,r,s,l){if(a||!t.style.sprite||t.style.sprite.loaded()){var u=t.gl,m="map"===s,f="map"===l,c=f;c?u.enable(u.DEPTH_TEST):u.disable(u.DEPTH_TEST);for(var p,_,g=0,y=o;gthis.previousZoom;a--)r.changeTimes[a]=e,r.changeOpacities[a]=r.opacities[a];for(a=0;a<256;a++){var s=e-r.changeTimes[a],o=255*(i?s/i:1);r.opacities[a]=a<=t?r.changeOpacities[a]+o:r.changeOpacities[a]-o}this.changed=!0,this.previousZoom=t},FrameHistory.prototype.bind=function(e){this.texture?(e.bindTexture(e.TEXTURE_2D,this.texture),this.changed&&(e.texSubImage2D(e.TEXTURE_2D,0,0,0,256,1,e.ALPHA,e.UNSIGNED_BYTE,this.array),this.changed=!1)):(this.texture=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.texture),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.NEAREST),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.NEAREST),e.texImage2D(e.TEXTURE_2D,0,e.ALPHA,256,1,0,e.ALPHA,e.UNSIGNED_BYTE,this.array))},module.exports=FrameHistory},{}],76:[function(_dereq_,module,exports){"use strict";var util=_dereq_("../util/util"),LineAtlas=function(t,i){this.width=t,this.height=i,this.nextRow=0,this.bytes=4,this.data=new Uint8Array(this.width*this.height*this.bytes),this.positions={}};LineAtlas.prototype.setSprite=function(t){this.sprite=t},LineAtlas.prototype.getDash=function(t,i){var e=t.join(",")+i;return this.positions[e]||(this.positions[e]=this.addDash(t,i)),this.positions[e]},LineAtlas.prototype.addDash=function(t,i){var e=this,h=i?7:0,s=2*h+1;if(this.nextRow+s>this.height)return util.warnOnce("LineAtlas out of space"),null;for(var r=0,n=0;n0?r.pop():null},Painter.prototype.getViewportTexture=function(e,r){var t=this.reusableTextures.viewport;if(t)return t.width===e&&t.height===r?t:(this.gl.deleteTexture(t),void(this.reusableTextures.viewport=null))},Painter.prototype.lineWidth=function(e){this.gl.lineWidth(util.clamp(e,this.lineWidthRange[0],this.lineWidthRange[1]))},Painter.prototype.showOverdrawInspector=function(e){if(e||this._showOverdrawInspector){this._showOverdrawInspector=e;var r=this.gl;if(e){r.blendFunc(r.CONSTANT_COLOR,r.ONE);r.blendColor(1/8,1/8,1/8,0),r.clearColor(0,0,0,1),r.clear(r.COLOR_BUFFER_BIT)}else r.blendFunc(r.ONE,r.ONE_MINUS_SRC_ALPHA)}},Painter.prototype.createProgram=function(e,r){var t=this.gl,i=t.createProgram(),a=shaders[e],s="#define MAPBOX_GL_JS\n#define DEVICE_PIXEL_RATIO "+browser.devicePixelRatio.toFixed(1)+"\n";this._showOverdrawInspector&&(s+="#define OVERDRAW_INSPECTOR;\n");var o=r.applyPragmas(s+shaders.prelude.fragmentSource+a.fragmentSource,"fragment"),n=r.applyPragmas(s+shaders.prelude.vertexSource+a.vertexSource,"vertex"),l=t.createShader(t.FRAGMENT_SHADER);t.shaderSource(l,o),t.compileShader(l),t.attachShader(i,l);var h=t.createShader(t.VERTEX_SHADER);t.shaderSource(h,n),t.compileShader(h),t.attachShader(i,h),t.linkProgram(i);for(var u=t.getProgramParameter(i,t.ACTIVE_ATTRIBUTES),c={program:i,numAttributes:u},p=0;p>16,n>>16),o.uniform2f(i.u_pixel_coord_lower,65535&u,65535&n)}},{"../source/pixels_to_tile_units":88}],79:[function(_dereq_,module,exports){"use strict";_dereq_("path");module.exports={prelude:{fragmentSource:"#ifdef GL_ES\nprecision mediump float;\n#else\n\n#if !defined(lowp)\n#define lowp\n#endif\n\n#if !defined(mediump)\n#define mediump\n#endif\n\n#if !defined(highp)\n#define highp\n#endif\n\n#endif\n",vertexSource:"#ifdef GL_ES\nprecision highp float;\n#else\n\n#if !defined(lowp)\n#define lowp\n#endif\n\n#if !defined(mediump)\n#define mediump\n#endif\n\n#if !defined(highp)\n#define highp\n#endif\n\n#endif\n\nfloat evaluate_zoom_function_1(const vec4 values, const float t) {\n if (t < 1.0) {\n return mix(values[0], values[1], t);\n } else if (t < 2.0) {\n return mix(values[1], values[2], t - 1.0);\n } else {\n return mix(values[2], values[3], t - 2.0);\n }\n}\nvec4 evaluate_zoom_function_4(const vec4 value0, const vec4 value1, const vec4 value2, const vec4 value3, const float t) {\n if (t < 1.0) {\n return mix(value0, value1, t);\n } else if (t < 2.0) {\n return mix(value1, value2, t - 1.0);\n } else {\n return mix(value2, value3, t - 2.0);\n }\n}\n\n// Unpack a pair of values that have been packed into a single float.\n// The packed values are assumed to be 8-bit unsigned integers, and are\n// packed like so:\n// packedValue = floor(input[0]) * 256 + input[1],\nvec2 unpack_float(const float packedValue) {\n int packedIntValue = int(packedValue);\n int v0 = packedIntValue / 256;\n return vec2(v0, packedIntValue - v0 * 256);\n}\n\n\n// To minimize the number of attributes needed in the mapbox-gl-native shaders,\n// we encode a 4-component color into a pair of floats (i.e. a vec2) as follows:\n// [ floor(color.r * 255) * 256 + color.g * 255,\n// floor(color.b * 255) * 256 + color.g * 255 ]\nvec4 decode_color(const vec2 encodedColor) {\n return vec4(\n unpack_float(encodedColor[0]) / 255.0,\n unpack_float(encodedColor[1]) / 255.0\n );\n}\n\n// Unpack a pair of paint values and interpolate between them.\nfloat unpack_mix_vec2(const vec2 packedValue, const float t) {\n return mix(packedValue[0], packedValue[1], t);\n}\n\n// Unpack a pair of paint values and interpolate between them.\nvec4 unpack_mix_vec4(const vec4 packedColors, const float t) {\n vec4 minColor = decode_color(vec2(packedColors[0], packedColors[1]));\n vec4 maxColor = decode_color(vec2(packedColors[2], packedColors[3]));\n return mix(minColor, maxColor, t);\n}\n\n// The offset depends on how many pixels are between the world origin and the edge of the tile:\n// vec2 offset = mod(pixel_coord, size)\n//\n// At high zoom levels there are a ton of pixels between the world origin and the edge of the tile.\n// The glsl spec only guarantees 16 bits of precision for highp floats. We need more than that.\n//\n// The pixel_coord is passed in as two 16 bit values:\n// pixel_coord_upper = floor(pixel_coord / 2^16)\n// pixel_coord_lower = mod(pixel_coord, 2^16)\n//\n// The offset is calculated in a series of steps that should preserve this precision:\nvec2 get_pattern_pos(const vec2 pixel_coord_upper, const vec2 pixel_coord_lower,\n const vec2 pattern_size, const float tile_units_to_pixels, const vec2 pos) {\n\n vec2 offset = mod(mod(mod(pixel_coord_upper, pattern_size) * 256.0, pattern_size) * 256.0 + pixel_coord_lower, pattern_size);\n return (tile_units_to_pixels * pos + offset) / pattern_size;\n}\n"},circle:{fragmentSource:"#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\n\nvarying vec2 v_extrude;\nvarying lowp float v_antialiasblur;\n\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\n\n float extrude_length = length(v_extrude);\n float antialiased_blur = -max(blur, v_antialiasblur);\n\n float opacity_t = smoothstep(0.0, antialiased_blur, extrude_length - 1.0);\n\n float color_t = stroke_width < 0.01 ? 0.0 : smoothstep(\n antialiased_blur,\n 0.0,\n extrude_length - radius / (radius + stroke_width)\n );\n\n gl_FragColor = opacity_t * mix(color * opacity, stroke_color * stroke_opacity, color_t);\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform bool u_scale_with_map;\nuniform vec2 u_extrude_scale;\n\nattribute vec2 a_pos;\n\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\n\nvarying vec2 v_extrude;\nvarying lowp float v_antialiasblur;\n\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\n\n // unencode the extrusion vector that we snuck into the a_pos vector\n v_extrude = vec2(mod(a_pos, 2.0) * 2.0 - 1.0);\n\n vec2 extrude = v_extrude * (radius + stroke_width) * u_extrude_scale;\n // multiply a_pos by 0.5, since we had it * 2 in order to sneak\n // in extrusion data\n gl_Position = u_matrix * vec4(floor(a_pos * 0.5), 0, 1);\n\n if (u_scale_with_map) {\n gl_Position.xy += extrude;\n } else {\n gl_Position.xy += extrude * gl_Position.w;\n }\n\n // This is a minimum blur distance that serves as a faux-antialiasing for\n // the circle. since blur is a ratio of the circle's size and the intent is\n // to keep the blur at roughly 1px, the two are inversely related.\n v_antialiasblur = 1.0 / DEVICE_PIXEL_RATIO / (radius + stroke_width);\n}\n"},collisionBox:{fragmentSource:"uniform float u_zoom;\nuniform float u_maxzoom;\n\nvarying float v_max_zoom;\nvarying float v_placement_zoom;\n\nvoid main() {\n\n float alpha = 0.5;\n\n gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0) * alpha;\n\n if (v_placement_zoom > u_zoom) {\n gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0) * alpha;\n }\n\n if (u_zoom >= v_max_zoom) {\n gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0) * alpha * 0.25;\n }\n\n if (v_placement_zoom >= u_maxzoom) {\n gl_FragColor = vec4(0.0, 0.0, 1.0, 1.0) * alpha * 0.2;\n }\n}\n",vertexSource:"attribute vec2 a_pos;\nattribute vec2 a_extrude;\nattribute vec2 a_data;\n\nuniform mat4 u_matrix;\nuniform float u_scale;\n\nvarying float v_max_zoom;\nvarying float v_placement_zoom;\n\nvoid main() {\n gl_Position = u_matrix * vec4(a_pos + a_extrude / u_scale, 0.0, 1.0);\n\n v_max_zoom = a_data.x;\n v_placement_zoom = a_data.y;\n}\n"},debug:{fragmentSource:"uniform highp vec4 u_color;\n\nvoid main() {\n gl_FragColor = u_color;\n}\n",vertexSource:"attribute vec2 a_pos;\n\nuniform mat4 u_matrix;\n\nvoid main() {\n gl_Position = u_matrix * vec4(a_pos, step(32767.0, a_pos.x), 1);\n}\n"},fill:{fragmentSource:"#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize highp vec4 color\n #pragma mapbox: initialize lowp float opacity\n\n gl_FragColor = color * opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"attribute vec2 a_pos;\n\nuniform mat4 u_matrix;\n\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize highp vec4 color\n #pragma mapbox: initialize lowp float opacity\n\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\n}\n"},fillOutline:{fragmentSource:"#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\n\nvarying vec2 v_pos;\n\nvoid main() {\n #pragma mapbox: initialize highp vec4 outline_color\n #pragma mapbox: initialize lowp float opacity\n\n float dist = length(v_pos - gl_FragCoord.xy);\n float alpha = 1.0 - smoothstep(0.0, 1.0, dist);\n gl_FragColor = outline_color * (alpha * opacity);\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"attribute vec2 a_pos;\n\nuniform mat4 u_matrix;\nuniform vec2 u_world;\n\nvarying vec2 v_pos;\n\n#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize highp vec4 outline_color\n #pragma mapbox: initialize lowp float opacity\n\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\n v_pos = (gl_Position.xy / gl_Position.w + 1.0) / 2.0 * u_world;\n}\n"},fillOutlinePattern:{fragmentSource:"uniform vec2 u_pattern_tl_a;\nuniform vec2 u_pattern_br_a;\nuniform vec2 u_pattern_tl_b;\nuniform vec2 u_pattern_br_b;\nuniform float u_mix;\n\nuniform sampler2D u_image;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\nvarying vec2 v_pos;\n\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp float opacity\n\n vec2 imagecoord = mod(v_pos_a, 1.0);\n vec2 pos = mix(u_pattern_tl_a, u_pattern_br_a, imagecoord);\n vec4 color1 = texture2D(u_image, pos);\n\n vec2 imagecoord_b = mod(v_pos_b, 1.0);\n vec2 pos2 = mix(u_pattern_tl_b, u_pattern_br_b, imagecoord_b);\n vec4 color2 = texture2D(u_image, pos2);\n\n // find distance to outline for alpha interpolation\n\n float dist = length(v_pos - gl_FragCoord.xy);\n float alpha = 1.0 - smoothstep(0.0, 1.0, dist);\n\n\n gl_FragColor = mix(color1, color2, u_mix) * alpha * opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec2 u_world;\nuniform vec2 u_pattern_size_a;\nuniform vec2 u_pattern_size_b;\nuniform vec2 u_pixel_coord_upper;\nuniform vec2 u_pixel_coord_lower;\nuniform float u_scale_a;\nuniform float u_scale_b;\nuniform float u_tile_units_to_pixels;\n\nattribute vec2 a_pos;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\nvarying vec2 v_pos;\n\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp float opacity\n\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\n\n 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);\n 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);\n\n v_pos = (gl_Position.xy / gl_Position.w + 1.0) / 2.0 * u_world;\n}\n"},fillPattern:{fragmentSource:"uniform vec2 u_pattern_tl_a;\nuniform vec2 u_pattern_br_a;\nuniform vec2 u_pattern_tl_b;\nuniform vec2 u_pattern_br_b;\nuniform float u_mix;\n\nuniform sampler2D u_image;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\n\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp float opacity\n\n vec2 imagecoord = mod(v_pos_a, 1.0);\n vec2 pos = mix(u_pattern_tl_a, u_pattern_br_a, imagecoord);\n vec4 color1 = texture2D(u_image, pos);\n\n vec2 imagecoord_b = mod(v_pos_b, 1.0);\n vec2 pos2 = mix(u_pattern_tl_b, u_pattern_br_b, imagecoord_b);\n vec4 color2 = texture2D(u_image, pos2);\n\n gl_FragColor = mix(color1, color2, u_mix) * opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec2 u_pattern_size_a;\nuniform vec2 u_pattern_size_b;\nuniform vec2 u_pixel_coord_upper;\nuniform vec2 u_pixel_coord_lower;\nuniform float u_scale_a;\nuniform float u_scale_b;\nuniform float u_tile_units_to_pixels;\n\nattribute vec2 a_pos;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\n\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp float opacity\n\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\n\n 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);\n 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);\n}\n"},fillExtrusion:{fragmentSource:"varying vec4 v_color;\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n#pragma mapbox: define highp vec4 color\n\nvoid main() {\n #pragma mapbox: initialize lowp float base\n #pragma mapbox: initialize lowp float height\n #pragma mapbox: initialize highp vec4 color\n\n gl_FragColor = v_color;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec3 u_lightcolor;\nuniform lowp vec3 u_lightpos;\nuniform lowp float u_lightintensity;\n\nattribute vec2 a_pos;\nattribute vec3 a_normal;\nattribute float a_edgedistance;\n\nvarying vec4 v_color;\n\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n\n#pragma mapbox: define highp vec4 color\n\nvoid main() {\n #pragma mapbox: initialize lowp float base\n #pragma mapbox: initialize lowp float height\n #pragma mapbox: initialize highp vec4 color\n\n base = max(0.0, base);\n height = max(0.0, height);\n\n float ed = a_edgedistance; // use each attrib in order to not trip a VAO assert\n float t = mod(a_normal.x, 2.0);\n\n gl_Position = u_matrix * vec4(a_pos, t > 0.0 ? height : base, 1);\n\n // Relative luminance (how dark/bright is the surface color?)\n float colorvalue = color.r * 0.2126 + color.g * 0.7152 + color.b * 0.0722;\n\n v_color = vec4(0.0, 0.0, 0.0, 1.0);\n\n // Add slight ambient lighting so no extrusions are totally black\n vec4 ambientlight = vec4(0.03, 0.03, 0.03, 1.0);\n color += ambientlight;\n\n // Calculate cos(theta), where theta is the angle between surface normal and diffuse light ray\n float directional = clamp(dot(a_normal / 16384.0, u_lightpos), 0.0, 1.0);\n\n // Adjust directional so that\n // the range of values for highlight/shading is narrower\n // with lower light intensity\n // and with lighter/brighter surface colors\n directional = mix((1.0 - u_lightintensity), max((1.0 - colorvalue + u_lightintensity), 1.0), directional);\n\n // Add gradient along z axis of side surfaces\n if (a_normal.y != 0.0) {\n directional *= clamp((t + base) * pow(height / 150.0, 0.5), mix(0.7, 0.98, 1.0 - u_lightintensity), 1.0);\n }\n\n // Assign final color based on surface + ambient light color, diffuse light directional, and light color\n // with lower bounds adjusted to hue of light\n // so that shading is tinted with the complementary (opposite) color to the light color\n v_color.r += clamp(color.r * directional * u_lightcolor.r, mix(0.0, 0.3, 1.0 - u_lightcolor.r), 1.0);\n v_color.g += clamp(color.g * directional * u_lightcolor.g, mix(0.0, 0.3, 1.0 - u_lightcolor.g), 1.0);\n v_color.b += clamp(color.b * directional * u_lightcolor.b, mix(0.0, 0.3, 1.0 - u_lightcolor.b), 1.0);\n}\n"},fillExtrusionPattern:{fragmentSource:"uniform vec2 u_pattern_tl_a;\nuniform vec2 u_pattern_br_a;\nuniform vec2 u_pattern_tl_b;\nuniform vec2 u_pattern_br_b;\nuniform float u_mix;\n\nuniform sampler2D u_image;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\nvarying vec4 v_lighting;\n\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n\nvoid main() {\n #pragma mapbox: initialize lowp float base\n #pragma mapbox: initialize lowp float height\n\n vec2 imagecoord = mod(v_pos_a, 1.0);\n vec2 pos = mix(u_pattern_tl_a, u_pattern_br_a, imagecoord);\n vec4 color1 = texture2D(u_image, pos);\n\n vec2 imagecoord_b = mod(v_pos_b, 1.0);\n vec2 pos2 = mix(u_pattern_tl_b, u_pattern_br_b, imagecoord_b);\n vec4 color2 = texture2D(u_image, pos2);\n\n vec4 mixedColor = mix(color1, color2, u_mix);\n\n gl_FragColor = mixedColor * v_lighting;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec2 u_pattern_size_a;\nuniform vec2 u_pattern_size_b;\nuniform vec2 u_pixel_coord_upper;\nuniform vec2 u_pixel_coord_lower;\nuniform float u_scale_a;\nuniform float u_scale_b;\nuniform float u_tile_units_to_pixels;\nuniform float u_height_factor;\n\nuniform vec3 u_lightcolor;\nuniform lowp vec3 u_lightpos;\nuniform lowp float u_lightintensity;\n\nattribute vec2 a_pos;\nattribute vec3 a_normal;\nattribute float a_edgedistance;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\nvarying vec4 v_lighting;\nvarying float v_directional;\n\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n\nvoid main() {\n #pragma mapbox: initialize lowp float base\n #pragma mapbox: initialize lowp float height\n\n base = max(0.0, base);\n height = max(0.0, height);\n\n float t = mod(a_normal.x, 2.0);\n float z = t > 0.0 ? height : base;\n\n gl_Position = u_matrix * vec4(a_pos, z, 1);\n\n vec2 pos = a_normal.x == 1.0 && a_normal.y == 0.0 && a_normal.z == 16384.0\n ? a_pos // extrusion top\n : vec2(a_edgedistance, z * u_height_factor); // extrusion side\n\n 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, pos);\n 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, pos);\n\n v_lighting = vec4(0.0, 0.0, 0.0, 1.0);\n float directional = clamp(dot(a_normal / 16383.0, u_lightpos), 0.0, 1.0);\n directional = mix((1.0 - u_lightintensity), max((0.5 + u_lightintensity), 1.0), directional);\n\n if (a_normal.y != 0.0) {\n directional *= clamp((t + base) * pow(height / 150.0, 0.5), mix(0.7, 0.98, 1.0 - u_lightintensity), 1.0);\n }\n\n v_lighting.rgb += clamp(directional * u_lightcolor, mix(vec3(0.0), vec3(0.3), 1.0 - u_lightcolor), vec3(1.0));\n}\n"},extrusionTexture:{fragmentSource:"uniform sampler2D u_image;\nuniform float u_opacity;\nvarying vec2 v_pos;\n\nvoid main() {\n gl_FragColor = texture2D(u_image, v_pos) * u_opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(0.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec2 u_world;\nattribute vec2 a_pos;\nvarying vec2 v_pos;\n\nvoid main() {\n gl_Position = u_matrix * vec4(a_pos * u_world, 0, 1);\n\n v_pos.x = a_pos.x;\n v_pos.y = 1.0 - a_pos.y;\n}\n"},line:{fragmentSource:"#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n\nvarying vec2 v_width2;\nvarying vec2 v_normal;\nvarying float v_gamma_scale;\n\nvoid main() {\n #pragma mapbox: initialize highp vec4 color\n #pragma mapbox: initialize lowp float blur\n #pragma mapbox: initialize lowp float opacity\n\n // Calculate the distance of the pixel from the line in pixels.\n float dist = length(v_normal) * v_width2.s;\n\n // Calculate the antialiasing fade factor. This is either when fading in\n // the line in case of an offset line (v_width2.t) or when fading out\n // (v_width2.s)\n float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\n float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\n\n gl_FragColor = color * (alpha * opacity);\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"\n\n// the distance over which the line edge fades out.\n// Retina devices need a smaller distance to avoid aliasing.\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\n\n// floor(127 / 2) == 63.0\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\n// there are also \"special\" normals that have a bigger length (of up to 126 in\n// this case).\n// #define scale 63.0\n#define scale 0.015873016\n\nattribute vec2 a_pos;\nattribute vec4 a_data;\n\nuniform mat4 u_matrix;\nuniform mediump float u_ratio;\nuniform mediump float u_width;\nuniform vec2 u_gl_units_to_pixels;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying float v_gamma_scale;\n\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\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\n vec2 a_extrude = a_data.xy - 128.0;\n float a_direction = mod(a_data.z, 4.0) - 1.0;\n\n // We store the texture normals in the most insignificant bit\n // transform y so that 0 => -1 and 1 => 1\n // In the texture normal, x is 0 if the normal points straight up/down and 1 if it's a round cap\n // y is 1 if the normal points up, and -1 if it points down\n mediump vec2 normal = mod(a_pos, 2.0);\n normal.y = sign(normal.y - 0.5);\n v_normal = normal;\n\n\n // these transformations used to be applied in the JS and native code bases. \n // moved them into the shader for clarity and simplicity. \n gapwidth = gapwidth / 2.0;\n float width = u_width / 2.0;\n offset = -1.0 * offset; \n\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\n float outset = gapwidth + width * (gapwidth > 0.0 ? 2.0 : 1.0) + ANTIALIASING;\n\n // Scale the extrusion vector down to a normal and then up by the line width\n // of this vertex.\n mediump vec2 dist = outset * a_extrude * scale;\n\n // Calculate the offset when drawing a line that is to the side of the actual line.\n // We do this by creating a vector that points towards the extrude, but rotate\n // it when we're drawing round end points (a_direction = -1 or 1) since their\n // extrude vector points in another direction.\n mediump float u = 0.5 * a_direction;\n mediump float t = 1.0 - abs(u);\n mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\n\n // Remove the texture normal bit to get the position\n vec2 pos = floor(a_pos * 0.5);\n\n vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\n gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\n\n // calculate how much the perspective view squishes or stretches the extrude\n float extrude_length_without_perspective = length(dist);\n float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\n v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\n\n v_width2 = vec2(outset, inset);\n}\n"},linePattern:{fragmentSource:"uniform vec2 u_pattern_size_a;\nuniform vec2 u_pattern_size_b;\nuniform vec2 u_pattern_tl_a;\nuniform vec2 u_pattern_br_a;\nuniform vec2 u_pattern_tl_b;\nuniform vec2 u_pattern_br_b;\nuniform float u_fade;\n\nuniform sampler2D u_image;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying float v_linesofar;\nvarying float v_gamma_scale;\n\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize lowp float blur\n #pragma mapbox: initialize lowp float opacity\n\n // Calculate the distance of the pixel from the line in pixels.\n float dist = length(v_normal) * v_width2.s;\n\n // Calculate the antialiasing fade factor. This is either when fading in\n // the line in case of an offset line (v_width2.t) or when fading out\n // (v_width2.s)\n float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\n float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\n\n float x_a = mod(v_linesofar / u_pattern_size_a.x, 1.0);\n float x_b = mod(v_linesofar / u_pattern_size_b.x, 1.0);\n float y_a = 0.5 + (v_normal.y * v_width2.s / u_pattern_size_a.y);\n float y_b = 0.5 + (v_normal.y * v_width2.s / u_pattern_size_b.y);\n vec2 pos_a = mix(u_pattern_tl_a, u_pattern_br_a, vec2(x_a, y_a));\n vec2 pos_b = mix(u_pattern_tl_b, u_pattern_br_b, vec2(x_b, y_b));\n\n vec4 color = mix(texture2D(u_image, pos_a), texture2D(u_image, pos_b), u_fade);\n\n gl_FragColor = color * alpha * opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"// floor(127 / 2) == 63.0\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\n// there are also \"special\" normals that have a bigger length (of up to 126 in\n// this case).\n// #define scale 63.0\n#define scale 0.015873016\n\n// We scale the distance before adding it to the buffers so that we can store\n// long distances for long segments. Use this value to unscale the distance.\n#define LINE_DISTANCE_SCALE 2.0\n\n// the distance over which the line edge fades out.\n// Retina devices need a smaller distance to avoid aliasing.\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\n\nattribute vec2 a_pos;\nattribute vec4 a_data;\n\nuniform mat4 u_matrix;\nuniform mediump float u_ratio;\nuniform mediump float u_width;\nuniform vec2 u_gl_units_to_pixels;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying float v_linesofar;\nvarying float v_gamma_scale;\n\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\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\n vec2 a_extrude = a_data.xy - 128.0;\n float a_direction = mod(a_data.z, 4.0) - 1.0;\n float a_linesofar = (floor(a_data.z / 4.0) + a_data.w * 64.0) * LINE_DISTANCE_SCALE;\n\n // We store the texture normals in the most insignificant bit\n // transform y so that 0 => -1 and 1 => 1\n // In the texture normal, x is 0 if the normal points straight up/down and 1 if it's a round cap\n // y is 1 if the normal points up, and -1 if it points down\n mediump vec2 normal = mod(a_pos, 2.0);\n normal.y = sign(normal.y - 0.5);\n v_normal = normal;\n\n // these transformations used to be applied in the JS and native code bases. \n // moved them into the shader for clarity and simplicity. \n gapwidth = gapwidth / 2.0;\n float width = u_width / 2.0;\n offset = -1.0 * offset; \n\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\n float outset = gapwidth + width * (gapwidth > 0.0 ? 2.0 : 1.0) + ANTIALIASING;\n\n // Scale the extrusion vector down to a normal and then up by the line width\n // of this vertex.\n mediump vec2 dist = outset * a_extrude * scale;\n\n // Calculate the offset when drawing a line that is to the side of the actual line.\n // We do this by creating a vector that points towards the extrude, but rotate\n // it when we're drawing round end points (a_direction = -1 or 1) since their\n // extrude vector points in another direction.\n mediump float u = 0.5 * a_direction;\n mediump float t = 1.0 - abs(u);\n mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\n\n // Remove the texture normal bit to get the position\n vec2 pos = floor(a_pos * 0.5);\n\n vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\n gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\n\n // calculate how much the perspective view squishes or stretches the extrude\n float extrude_length_without_perspective = length(dist);\n float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\n v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\n\n v_linesofar = a_linesofar;\n v_width2 = vec2(outset, inset);\n}\n"},lineSDF:{fragmentSource:"\nuniform sampler2D u_image;\nuniform float u_sdfgamma;\nuniform float u_mix;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying vec2 v_tex_a;\nvarying vec2 v_tex_b;\nvarying float v_gamma_scale;\n\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n #pragma mapbox: initialize highp vec4 color\n #pragma mapbox: initialize lowp float blur\n #pragma mapbox: initialize lowp float opacity\n\n // Calculate the distance of the pixel from the line in pixels.\n float dist = length(v_normal) * v_width2.s;\n\n // Calculate the antialiasing fade factor. This is either when fading in\n // the line in case of an offset line (v_width2.t) or when fading out\n // (v_width2.s)\n float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\n float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\n\n float sdfdist_a = texture2D(u_image, v_tex_a).a;\n float sdfdist_b = texture2D(u_image, v_tex_b).a;\n float sdfdist = mix(sdfdist_a, sdfdist_b, u_mix);\n alpha *= smoothstep(0.5 - u_sdfgamma, 0.5 + u_sdfgamma, sdfdist);\n\n gl_FragColor = color * (alpha * opacity);\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"// floor(127 / 2) == 63.0\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\n// there are also \"special\" normals that have a bigger length (of up to 126 in\n// this case).\n// #define scale 63.0\n#define scale 0.015873016\n\n// We scale the distance before adding it to the buffers so that we can store\n// long distances for long segments. Use this value to unscale the distance.\n#define LINE_DISTANCE_SCALE 2.0\n\n// the distance over which the line edge fades out.\n// Retina devices need a smaller distance to avoid aliasing.\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\n\nattribute vec2 a_pos;\nattribute vec4 a_data;\n\nuniform mat4 u_matrix;\nuniform mediump float u_ratio;\nuniform vec2 u_patternscale_a;\nuniform float u_tex_y_a;\nuniform vec2 u_patternscale_b;\nuniform float u_tex_y_b;\nuniform vec2 u_gl_units_to_pixels;\nuniform mediump float u_width;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying vec2 v_tex_a;\nvarying vec2 v_tex_b;\nvarying float v_gamma_scale;\n\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\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\n vec2 a_extrude = a_data.xy - 128.0;\n float a_direction = mod(a_data.z, 4.0) - 1.0;\n float a_linesofar = (floor(a_data.z / 4.0) + a_data.w * 64.0) * LINE_DISTANCE_SCALE;\n\n // We store the texture normals in the most insignificant bit\n // transform y so that 0 => -1 and 1 => 1\n // In the texture normal, x is 0 if the normal points straight up/down and 1 if it's a round cap\n // y is 1 if the normal points up, and -1 if it points down\n mediump vec2 normal = mod(a_pos, 2.0);\n normal.y = sign(normal.y - 0.5);\n v_normal = normal;\n\n // these transformations used to be applied in the JS and native code bases. \n // moved them into the shader for clarity and simplicity. \n gapwidth = gapwidth / 2.0;\n float width = u_width / 2.0;\n offset = -1.0 * offset;\n \n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\n float outset = gapwidth + width * (gapwidth > 0.0 ? 2.0 : 1.0) + ANTIALIASING;\n\n // Scale the extrusion vector down to a normal and then up by the line width\n // of this vertex.\n mediump vec2 dist =outset * a_extrude * scale;\n\n // Calculate the offset when drawing a line that is to the side of the actual line.\n // We do this by creating a vector that points towards the extrude, but rotate\n // it when we're drawing round end points (a_direction = -1 or 1) since their\n // extrude vector points in another direction.\n mediump float u = 0.5 * a_direction;\n mediump float t = 1.0 - abs(u);\n mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\n\n // Remove the texture normal bit to get the position\n vec2 pos = floor(a_pos * 0.5);\n\n vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\n gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\n\n // calculate how much the perspective view squishes or stretches the extrude\n float extrude_length_without_perspective = length(dist);\n float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\n v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\n\n v_tex_a = vec2(a_linesofar * u_patternscale_a.x, normal.y * u_patternscale_a.y + u_tex_y_a);\n v_tex_b = vec2(a_linesofar * u_patternscale_b.x, normal.y * u_patternscale_b.y + u_tex_y_b);\n\n v_width2 = vec2(outset, inset);\n}\n"},raster:{fragmentSource:"uniform float u_fade_t;\nuniform float u_opacity;\nuniform sampler2D u_image0;\nuniform sampler2D u_image1;\nvarying vec2 v_pos0;\nvarying vec2 v_pos1;\n\nuniform float u_brightness_low;\nuniform float u_brightness_high;\n\nuniform float u_saturation_factor;\nuniform float u_contrast_factor;\nuniform vec3 u_spin_weights;\n\nvoid main() {\n\n // read and cross-fade colors from the main and parent tiles\n vec4 color0 = texture2D(u_image0, v_pos0);\n vec4 color1 = texture2D(u_image1, v_pos1);\n vec4 color = mix(color0, color1, u_fade_t);\n color.a *= u_opacity;\n vec3 rgb = color.rgb;\n\n // spin\n rgb = vec3(\n dot(rgb, u_spin_weights.xyz),\n dot(rgb, u_spin_weights.zxy),\n dot(rgb, u_spin_weights.yzx));\n\n // saturation\n float average = (color.r + color.g + color.b) / 3.0;\n rgb += (average - rgb) * u_saturation_factor;\n\n // contrast\n rgb = (rgb - 0.5) * u_contrast_factor + 0.5;\n\n // brightness\n vec3 u_high_vec = vec3(u_brightness_low, u_brightness_low, u_brightness_low);\n vec3 u_low_vec = vec3(u_brightness_high, u_brightness_high, u_brightness_high);\n\n gl_FragColor = vec4(mix(u_high_vec, u_low_vec, rgb) * color.a, color.a);\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec2 u_tl_parent;\nuniform float u_scale_parent;\nuniform float u_buffer_scale;\n\nattribute vec2 a_pos;\nattribute vec2 a_texture_pos;\n\nvarying vec2 v_pos0;\nvarying vec2 v_pos1;\n\nvoid main() {\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\n v_pos0 = (((a_texture_pos / 32767.0) - 0.5) / u_buffer_scale ) + 0.5;\n v_pos1 = (v_pos0 * u_scale_parent) + u_tl_parent;\n}\n"},symbolIcon:{fragmentSource:"uniform sampler2D u_texture;\nuniform sampler2D u_fadetexture;\n\n#pragma mapbox: define lowp float opacity\n\nvarying vec2 v_tex;\nvarying vec2 v_fade_tex;\n\nvoid main() {\n #pragma mapbox: initialize lowp float opacity\n\n lowp float alpha = texture2D(u_fadetexture, v_fade_tex).a * opacity;\n gl_FragColor = texture2D(u_texture, v_tex) * alpha;\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:'\nattribute vec4 a_pos_offset;\nattribute vec4 a_data;\n\n// icon-size data (see symbol_sdf.vertex.glsl for more)\nattribute vec3 a_size;\nuniform bool u_is_size_zoom_constant;\nuniform bool u_is_size_feature_constant;\nuniform mediump float u_size_t; // used to interpolate between zoom stops when size is a composite function\nuniform mediump float u_size; // used when size is both zoom and feature constant\nuniform mediump float u_layout_size; // used when size is feature constant\n\n#pragma mapbox: define lowp float opacity\n\n// matrix is for the vertex position.\nuniform mat4 u_matrix;\n\nuniform bool u_is_text;\nuniform mediump float u_zoom;\nuniform bool u_rotate_with_map;\nuniform vec2 u_extrude_scale;\n\nuniform vec2 u_texsize;\n\nvarying vec2 v_tex;\nvarying vec2 v_fade_tex;\n\nvoid main() {\n #pragma mapbox: initialize lowp float opacity\n\n vec2 a_pos = a_pos_offset.xy;\n vec2 a_offset = a_pos_offset.zw;\n\n vec2 a_tex = a_data.xy;\n mediump vec2 label_data = unpack_float(a_data[2]);\n mediump float a_labelminzoom = label_data[0];\n mediump vec2 a_zoom = unpack_float(a_data[3]);\n mediump float a_minzoom = a_zoom[0];\n mediump float a_maxzoom = a_zoom[1];\n\n float size;\n // In order to accommodate placing labels around corners in\n // symbol-placement: line, each glyph in a label could have multiple\n // "quad"s only one of which should be shown at a given zoom level.\n // The min/max zoom assigned to each quad is based on the font size at\n // the vector tile\'s zoom level, which might be different than at the\n // currently rendered zoom level if text-size is zoom-dependent.\n // Thus, we compensate for this difference by calculating an adjustment\n // based on the scale of rendered text size relative to layout text size.\n mediump float layoutSize;\n if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {\n size = mix(a_size[0], a_size[1], u_size_t) / 10.0;\n layoutSize = a_size[2] / 10.0;\n } else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {\n size = a_size[0] / 10.0;\n layoutSize = size;\n } else if (!u_is_size_zoom_constant && u_is_size_feature_constant) {\n size = u_size;\n layoutSize = u_layout_size;\n } else {\n size = u_size;\n layoutSize = u_size;\n }\n\n float fontScale = u_is_text ? size / 24.0 : size;\n\n mediump float zoomAdjust = log2(size / layoutSize);\n mediump float adjustedZoom = (u_zoom - zoomAdjust) * 10.0;\n // result: z = 0 if a_minzoom <= adjustedZoom < a_maxzoom, and 1 otherwise\n mediump float z = 2.0 - step(a_minzoom, adjustedZoom) - (1.0 - step(a_maxzoom, adjustedZoom));\n\n vec2 extrude = fontScale * u_extrude_scale * (a_offset / 64.0);\n if (u_rotate_with_map) {\n gl_Position = u_matrix * vec4(a_pos + extrude, 0, 1);\n gl_Position.z += z * gl_Position.w;\n } else {\n gl_Position = u_matrix * vec4(a_pos, 0, 1) + vec4(extrude, 0, 0);\n }\n\n v_tex = a_tex / u_texsize;\n v_fade_tex = vec2(a_labelminzoom / 255.0, 0.0);\n}\n'},symbolSDF:{fragmentSource:"#define SDF_PX 8.0\n#define EDGE_GAMMA 0.105/DEVICE_PIXEL_RATIO\n\nuniform bool u_is_halo;\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\n\nuniform sampler2D u_texture;\nuniform sampler2D u_fadetexture;\nuniform highp float u_gamma_scale;\nuniform bool u_is_text;\n\nvarying vec2 v_tex;\nvarying vec2 v_fade_tex;\nvarying float v_gamma_scale;\nvarying float v_size;\n\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\n\n float fontScale = u_is_text ? v_size / 24.0 : v_size;\n\n lowp vec4 color = fill_color;\n highp float gamma = EDGE_GAMMA / (fontScale * u_gamma_scale);\n lowp float buff = (256.0 - 64.0) / 256.0;\n if (u_is_halo) {\n color = halo_color;\n gamma = (halo_blur * 1.19 / SDF_PX + EDGE_GAMMA) / (fontScale * u_gamma_scale);\n buff = (6.0 - halo_width / fontScale) / SDF_PX;\n }\n\n lowp float dist = texture2D(u_texture, v_tex).a;\n lowp float fade_alpha = texture2D(u_fadetexture, v_fade_tex).a;\n highp float gamma_scaled = gamma * v_gamma_scale;\n highp float alpha = smoothstep(buff - gamma_scaled, buff + gamma_scaled, dist) * fade_alpha;\n\n gl_FragColor = color * (alpha * opacity);\n\n#ifdef OVERDRAW_INSPECTOR\n gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"const float PI = 3.141592653589793;\n\nattribute vec4 a_pos_offset;\nattribute vec4 a_data;\n\n// contents of a_size vary based on the type of property value\n// used for {text,icon}-size.\n// For constants, a_size is disabled.\n// For source functions, we bind only one value per vertex: the value of {text,icon}-size evaluated for the current feature.\n// For composite functions:\n// [ text-size(lowerZoomStop, feature),\n// text-size(upperZoomStop, feature),\n// layoutSize == text-size(layoutZoomLevel, feature) ]\nattribute vec3 a_size;\nuniform bool u_is_size_zoom_constant;\nuniform bool u_is_size_feature_constant;\nuniform mediump float u_size_t; // used to interpolate between zoom stops when size is a composite function\nuniform mediump float u_size; // used when size is both zoom and feature constant\nuniform mediump float u_layout_size; // used when size is feature constant\n\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\n\n// matrix is for the vertex position.\nuniform mat4 u_matrix;\n\nuniform bool u_is_text;\nuniform mediump float u_zoom;\nuniform bool u_rotate_with_map;\nuniform bool u_pitch_with_map;\nuniform mediump float u_pitch;\nuniform mediump float u_bearing;\nuniform mediump float u_aspect_ratio;\nuniform vec2 u_extrude_scale;\n\nuniform vec2 u_texsize;\n\nvarying vec2 v_tex;\nvarying vec2 v_fade_tex;\nvarying float v_gamma_scale;\nvarying float v_size;\n\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\n\n vec2 a_pos = a_pos_offset.xy;\n vec2 a_offset = a_pos_offset.zw;\n\n vec2 a_tex = a_data.xy;\n\n mediump vec2 label_data = unpack_float(a_data[2]);\n mediump float a_labelminzoom = label_data[0];\n mediump float a_labelangle = label_data[1];\n\n mediump vec2 a_zoom = unpack_float(a_data[3]);\n mediump float a_minzoom = a_zoom[0];\n mediump float a_maxzoom = a_zoom[1];\n\n // In order to accommodate placing labels around corners in\n // symbol-placement: line, each glyph in a label could have multiple\n // \"quad\"s only one of which should be shown at a given zoom level.\n // The min/max zoom assigned to each quad is based on the font size at\n // the vector tile's zoom level, which might be different than at the\n // currently rendered zoom level if text-size is zoom-dependent.\n // Thus, we compensate for this difference by calculating an adjustment\n // based on the scale of rendered text size relative to layout text size.\n mediump float layoutSize;\n if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {\n v_size = mix(a_size[0], a_size[1], u_size_t) / 10.0;\n layoutSize = a_size[2] / 10.0;\n } else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {\n v_size = a_size[0] / 10.0;\n layoutSize = v_size;\n } else if (!u_is_size_zoom_constant && u_is_size_feature_constant) {\n v_size = u_size;\n layoutSize = u_layout_size;\n } else {\n v_size = u_size;\n layoutSize = u_size;\n }\n\n float fontScale = u_is_text ? v_size / 24.0 : v_size;\n\n mediump float zoomAdjust = log2(v_size / layoutSize);\n mediump float adjustedZoom = (u_zoom - zoomAdjust) * 10.0;\n // result: z = 0 if a_minzoom <= adjustedZoom < a_maxzoom, and 1 otherwise\n // Used below to move the vertex out of the clip space for when the current\n // zoom is out of the glyph's zoom range.\n mediump float z = 2.0 - step(a_minzoom, adjustedZoom) - (1.0 - step(a_maxzoom, adjustedZoom));\n\n // pitch-alignment: map\n // rotation-alignment: map | viewport\n if (u_pitch_with_map) {\n lowp float angle = u_rotate_with_map ? (a_labelangle / 256.0 * 2.0 * PI) : u_bearing;\n lowp float asin = sin(angle);\n lowp float acos = cos(angle);\n mat2 RotationMatrix = mat2(acos, asin, -1.0 * asin, acos);\n vec2 offset = RotationMatrix * a_offset;\n vec2 extrude = fontScale * u_extrude_scale * (offset / 64.0);\n gl_Position = u_matrix * vec4(a_pos + extrude, 0, 1);\n gl_Position.z += z * gl_Position.w;\n // pitch-alignment: viewport\n // rotation-alignment: map\n } else if (u_rotate_with_map) {\n // foreshortening factor to apply on pitched maps\n // as a label goes from horizontal <=> vertical in angle\n // it goes from 0% foreshortening to up to around 70% foreshortening\n lowp float pitchfactor = 1.0 - cos(u_pitch * sin(u_pitch * 0.75));\n\n lowp float lineangle = a_labelangle / 256.0 * 2.0 * PI;\n\n // use the lineangle to position points a,b along the line\n // project the points and calculate the label angle in projected space\n // this calculation allows labels to be rendered unskewed on pitched maps\n vec4 a = u_matrix * vec4(a_pos, 0, 1);\n vec4 b = u_matrix * vec4(a_pos + vec2(cos(lineangle),sin(lineangle)), 0, 1);\n lowp float angle = atan((b[1]/b[3] - a[1]/a[3])/u_aspect_ratio, b[0]/b[3] - a[0]/a[3]);\n lowp float asin = sin(angle);\n lowp float acos = cos(angle);\n mat2 RotationMatrix = mat2(acos, -1.0 * asin, asin, acos);\n\n vec2 offset = RotationMatrix * (vec2((1.0-pitchfactor)+(pitchfactor*cos(angle*2.0)), 1.0) * a_offset);\n vec2 extrude = fontScale * u_extrude_scale * (offset / 64.0);\n gl_Position = u_matrix * vec4(a_pos, 0, 1) + vec4(extrude, 0, 0);\n gl_Position.z += z * gl_Position.w;\n // pitch-alignment: viewport\n // rotation-alignment: viewport\n } else {\n vec2 extrude = fontScale * u_extrude_scale * (a_offset / 64.0);\n gl_Position = u_matrix * vec4(a_pos, 0, 1) + vec4(extrude, 0, 0);\n }\n\n v_gamma_scale = gl_Position.w;\n\n v_tex = a_tex / u_texsize;\n v_fade_tex = vec2(a_labelminzoom / 255.0, 0.0);\n}\n"}}},{path:23}],80:[function(_dereq_,module,exports){"use strict";var VertexArrayObject=function(){this.boundProgram=null,this.boundVertexBuffer=null,this.boundVertexBuffer2=null,this.boundElementBuffer=null,this.boundVertexOffset=null,this.vao=null};VertexArrayObject.prototype.bind=function(e,t,r,i,n,s){void 0===e.extVertexArrayObject&&(e.extVertexArrayObject=e.getExtension("OES_vertex_array_object"));var o=!this.vao||this.boundProgram!==t||this.boundVertexBuffer!==r||this.boundVertexBuffer2!==n||this.boundElementBuffer!==i||this.boundVertexOffset!==s;!e.extVertexArrayObject||o?(this.freshBind(e,t,r,i,n,s),this.gl=e):e.extVertexArrayObject.bindVertexArrayOES(this.vao)},VertexArrayObject.prototype.freshBind=function(e,t,r,i,n,s){var o,u=t.numAttributes;if(e.extVertexArrayObject)this.vao&&this.destroy(),this.vao=e.extVertexArrayObject.createVertexArrayOES(),e.extVertexArrayObject.bindVertexArrayOES(this.vao),o=0,this.boundProgram=t,this.boundVertexBuffer=r,this.boundVertexBuffer2=n,this.boundElementBuffer=i,this.boundVertexOffset=s;else{o=e.currentNumAttributes||0;for(var b=u;bthis.maxzoom?Math.pow(2,t.coord.z-this.maxzoom):1,r={type:this.type,uid:t.uid,coord:t.coord,zoom:t.coord.z,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,overscaling:i,angle:this.map.transform.angle,pitch:this.map.transform.pitch,showCollisionBoxes:this.map.showCollisionBoxes};t.workerID=this.dispatcher.send("loadTile",r,function(i,r){if(t.unloadVectorData(),!t.aborted)return i?e(i):(t.loadVectorData(r,o.map.painter),t.redoWhenDone&&(t.redoWhenDone=!1,t.redoPlacement(o)),e(null))},this.workerID)},e.prototype.abortTile=function(t){t.aborted=!0},e.prototype.unloadTile=function(t){t.unloadVectorData(),this.dispatcher.send("removeTile",{uid:t.uid,type:this.type,source:this.id},function(){},t.workerID)},e.prototype.onRemove=function(){this.dispatcher.broadcast("removeSource",{type:this.type,source:this.id},function(){})},e.prototype.serialize=function(){return{type:this.type,data:this._data}},e}(Evented);module.exports=GeoJSONSource},{"../data/extent":54,"../util/evented":203,"../util/util":215,"../util/window":197}],84:[function(_dereq_,module,exports){"use strict";var ajax=_dereq_("../util/ajax"),rewind=_dereq_("geojson-rewind"),GeoJSONWrapper=_dereq_("./geojson_wrapper"),vtpbf=_dereq_("vt-pbf"),supercluster=_dereq_("supercluster"),geojsonvt=_dereq_("geojson-vt"),GeoJSONWorkerSource=function(e){function r(r,t,o){e.call(this,r,t),o&&(this.loadGeoJSON=o),this._geoJSONIndexes={}}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.loadVectorData=function(e,r){var t=e.source,o=e.coord;if(!this._geoJSONIndexes[t])return r(null,null);var n=this._geoJSONIndexes[t].getTile(Math.min(o.z,e.maxZoom),o.x,o.y);if(!n)return r(null,null);var u=new GeoJSONWrapper(n.features);u.name="_geojsonTileLayer";var a=vtpbf({layers:{_geojsonTileLayer:u}});0===a.byteOffset&&a.byteLength===a.buffer.byteLength||(a=new Uint8Array(a)),u.rawData=a.buffer,r(null,u)},r.prototype.loadData=function(e,r){var t=function(t,o){var n=this;return t?r(t):"object"!=typeof o?r(new Error("Input data is not a valid GeoJSON object.")):(rewind(o,!0),void this._indexData(o,e,function(t,o){return t?r(t):(n._geoJSONIndexes[e.source]=o,void r(null))}))}.bind(this);this.loadGeoJSON(e,t)},r.prototype.loadGeoJSON=function(e,r){if(e.url)ajax.getJSON(e.url,r);else{if("string"!=typeof e.data)return r(new Error("Input data is not a valid GeoJSON object."));try{return r(null,JSON.parse(e.data))}catch(e){return r(new Error("Input data is not a valid GeoJSON object."))}}},r.prototype.removeSource=function(e){this._geoJSONIndexes[e.source]&&delete this._geoJSONIndexes[e.source]},r.prototype._indexData=function(e,r,t){try{r.cluster?t(null,supercluster(r.superclusterOptions).load(e.features)):t(null,geojsonvt(e,r.geojsonVtOptions))}catch(e){return t(e)}},r}(_dereq_("./vector_tile_worker_source"));module.exports=GeoJSONWorkerSource},{"../util/ajax":194,"./geojson_wrapper":85,"./vector_tile_worker_source":98,"geojson-rewind":7,"geojson-vt":11,supercluster:29,"vt-pbf":38}],85:[function(_dereq_,module,exports){"use strict";var Point=_dereq_("point-geometry"),VectorTileFeature=_dereq_("vector-tile").VectorTileFeature,EXTENT=_dereq_("../data/extent"),FeatureWrapper=function(e){var t=this;if(this.type=e.type,1===e.type){this.rawGeometry=[];for(var r=0;rt)){var n=Math.pow(2,Math.min(a.coord.z,i._source.maxzoom)-Math.min(e.z,i._source.maxzoom));if(Math.floor(a.coord.x/n)===e.x&&Math.floor(a.coord.y/n)===e.y)for(o[s]=!0,r=!0;a&&a.coord.z-1>e.z;){var d=a.coord.parent(i._source.maxzoom).id;(a=i._tiles[d])&&a.hasData()&&(delete o[s],o[d]=!0)}}}return r},t.prototype.findLoadedParent=function(e,t,o){for(var i=this,r=e.z-1;r>=t;r--){e=e.parent(i._source.maxzoom);var s=i._tiles[e.id];if(s&&s.hasData())return o[e.id]=!0,s;if(i._cache.has(e.id))return o[e.id]=!0,i._cache.getWithoutRemoving(e.id)}},t.prototype.updateCacheSize=function(e){var i=(Math.ceil(e.width/e.tileSize)+1)*(Math.ceil(e.height/e.tileSize)+1);this._cache.setMaxSize(Math.floor(5*i))},t.prototype.update=function(e){var o=this;if(this.transform=e,this._sourceLoaded){var i,r,s,a;this.updateCacheSize(e);var n=(this._source.roundZoom?Math.round:Math.floor)(this.getZoom(e)),d=Math.max(n-t.maxOverzooming,this._source.minzoom),c=Math.max(n+t.maxUnderzooming,this._source.minzoom),h={};this._coveredTiles={};var u;for(this.used?this._source.coord?u=e.getVisibleWrappedCoordinates(this._source.coord):(u=e.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(u=u.filter(function(e){return o._source.hasTile(e)}))):u=[],i=0;i=Date.now())&&(o.findLoadedChildren(r,c,h)&&(h[_]=!0),(a=o.findLoadedParent(r,d,l))&&o.addTile(a.coord))}var f;for(f in l)h[f]||(o._coveredTiles[f]=!0);for(f in l)h[f]=!0;var T=util.keysDifference(this._tiles,h);for(i=0;ithis._source.maxzoom?Math.pow(2,r-this._source.maxzoom):1;t=new Tile(o,this._source.tileSize*s,this._source.maxzoom),this.loadTile(t,this._tileLoaded.bind(this,t,e.id,t.state))}return t.uses++,this._tiles[e.id]=t,i||this._source.fire("dataloading",{tile:t,coord:t.coord,dataType:"source"}),t},t.prototype._setTileReloadTimer=function(e,t){var o=this,i=t.getExpiryTimeout();i&&(this._timers[e]=setTimeout(function(){o.reloadTile(e,"expired"),o._timers[e]=void 0},i))},t.prototype._setCacheInvalidationTimer=function(e,t){var o=this,i=t.getExpiryTimeout();i&&(this._cacheTimers[e]=setTimeout(function(){o._cache.remove(e),o._cacheTimers[e]=void 0},i))},t.prototype.removeTile=function(e){var t=this._tiles[e];if(t&&(t.uses--,delete this._tiles[e],this._timers[e]&&(clearTimeout(this._timers[e]),this._timers[e]=void 0),!(t.uses>0)))if(t.hasData()){var o=t.coord.wrapped().id;this._cache.add(o,t),this._setCacheInvalidationTimer(o,t)}else t.aborted=!0,this.abortTile(t),this.unloadTile(t)},t.prototype.clearTiles=function(){var e=this;for(var t in e._tiles)e.removeTile(t);this._cache.reset()},t.prototype.tilesIn=function(e){for(var t=this,o={},i=this.getIds(),r=1/0,s=1/0,a=-1/0,n=-1/0,d=e[0].zoom,c=0;c=0&&p[1].y>=0){for(var _=[],f=0;fo)r=!1;else if(t)if(this.expirationTime=a.minX&&t.x=a.minY&&t.yi.row){var o=t;t=i,i=o}return{x0:t.column,y0:t.row,x1:i.column,y1:i.row,dx:i.column-t.column,dy:i.row-t.row}}function scanSpans(t,i,o,r,e){var n=Math.max(o,Math.floor(i.y0)),h=Math.min(r,Math.ceil(i.y1));if(t.x0===i.x0&&t.y0===i.y0?t.x0+i.dy/t.dy*t.dx0,l=i.dx<0,u=n;ua.dy&&(h=s,s=a,a=h),s.dy>d.dy&&(h=s,s=d,d=h),a.dy>d.dy&&(h=a,a=d,d=h),s.dy&&scanSpans(d,s,r,e,n),a.dy&&scanSpans(d,a,r,e,n)}function getQuadkey(t,i,o){for(var r,e="",n=t;n>0;n--)r=1<t?new TileCoord(this.z-1,this.x,this.y,this.w):new TileCoord(this.z-1,Math.floor(this.x/2),Math.floor(this.y/2),this.w)},TileCoord.prototype.wrapped=function(){return new TileCoord(this.z,this.x,this.y,0)},TileCoord.prototype.children=function(t){if(this.z>=t)return[new TileCoord(this.z+1,this.x,this.y,this.w)];var i=this.z+1,o=2*this.x,r=2*this.y;return[new TileCoord(i,o,r,this.w),new TileCoord(i,o+1,r,this.w),new TileCoord(i,o,r+1,this.w),new TileCoord(i,o+1,r+1,this.w)]},TileCoord.cover=function(t,i,o,r){function e(t,i,e){var s,a,d,y;if(e>=0&&e<=n)for(s=t;sthis.maxzoom?Math.pow(2,e.coord.z-this.maxzoom):1,r={url:normalizeURL(e.coord.url(this.tiles,this.maxzoom,this.scheme),this.url),uid:e.uid,coord:e.coord,zoom:e.coord.z,tileSize:this.tileSize*o,type:this.type,source:this.id,overscaling:o,angle:this.map.transform.angle,pitch:this.map.transform.pitch,showCollisionBoxes:this.map.showCollisionBoxes};e.workerID&&"expired"!==e.state?"loading"===e.state?e.reloadCallback=t:this.dispatcher.send("reloadTile",r,i.bind(this),e.workerID):e.workerID=this.dispatcher.send("loadTile",r,i.bind(this))},t.prototype.abortTile=function(e){this.dispatcher.send("abortTile",{uid:e.uid,type:this.type,source:this.id},null,e.workerID)},t.prototype.unloadTile=function(e){e.unloadVectorData(),this.dispatcher.send("removeTile",{uid:e.uid,type:this.type,source:this.id},null,e.workerID)},t}(Evented);module.exports=VectorTileSource},{"../util/evented":203,"../util/mapbox":210,"../util/util":215,"./load_tilejson":87,"./tile_bounds":95}],98:[function(_dereq_,module,exports){"use strict";var ajax=_dereq_("../util/ajax"),vt=_dereq_("vector-tile"),Protobuf=_dereq_("pbf"),WorkerTile=_dereq_("./worker_tile"),util=_dereq_("../util/util"),VectorTileWorkerSource=function(e,r,t){this.actor=e,this.layerIndex=r,t&&(this.loadVectorData=t),this.loading={},this.loaded={}};VectorTileWorkerSource.prototype.loadTile=function(e,r){function t(e,t){return delete this.loading[o][i],e?r(e):t?(a.vectorTile=t,a.parse(t,this.layerIndex,this.actor,function(e,o,i){if(e)return r(e);var a={};t.expires&&(a.expires=t.expires),t.cacheControl&&(a.cacheControl=t.cacheControl),r(null,util.extend({rawTileData:t.rawData},o,a),i)}),this.loaded[o]=this.loaded[o]||{},void(this.loaded[o][i]=a)):r(null,null)}var o=e.source,i=e.uid;this.loading[o]||(this.loading[o]={});var a=this.loading[o][i]=new WorkerTile(e);a.abort=this.loadVectorData(e,t.bind(this))},VectorTileWorkerSource.prototype.reloadTile=function(e,r){function t(e,t){if(this.reloadCallback){var o=this.reloadCallback;delete this.reloadCallback,this.parse(this.vectorTile,a.layerIndex,a.actor,o)}r(e,t)}var o=this.loaded[e.source],i=e.uid,a=this;if(o&&o[i]){var l=o[i];"parsing"===l.status?l.reloadCallback=r:"done"===l.status&&l.parse(l.vectorTile,this.layerIndex,this.actor,t.bind(l))}},VectorTileWorkerSource.prototype.abortTile=function(e){var r=this.loading[e.source],t=e.uid;r&&r[t]&&r[t].abort&&(r[t].abort(),delete r[t])},VectorTileWorkerSource.prototype.removeTile=function(e){var r=this.loaded[e.source],t=e.uid;r&&r[t]&&delete r[t]},VectorTileWorkerSource.prototype.loadVectorData=function(e,r){function t(e,t){if(e)return r(e);var o=new vt.VectorTile(new Protobuf(t.data));o.rawData=t.data,o.cacheControl=t.cacheControl,o.expires=t.expires,r(e,o)}var o=ajax.getArrayBuffer(e.url,t.bind(this));return function(){o.abort()}},VectorTileWorkerSource.prototype.redoPlacement=function(e,r){var t=this.loaded[e.source],o=this.loading[e.source],i=e.uid;if(t&&t[i]){var l=t[i].redoPlacement(e.angle,e.pitch,e.showCollisionBoxes);l.result&&r(null,l.result,l.transferables)}else o&&o[i]&&(o[i].angle=e.angle)},module.exports=VectorTileWorkerSource},{"../util/ajax":194,"../util/util":215,"./worker_tile":101,pbf:25,"vector-tile":34}],99:[function(_dereq_,module,exports){"use strict";var ajax=_dereq_("../util/ajax"),VideoSource=function(t){function e(e,o,i,r){t.call(this,e,o,i,r),this.roundZoom=!0,this.type="video",this.options=o}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.load=function(){var t=this,e=this.options;this.urls=e.urls,ajax.getVideo(e.urls,function(e,o){if(e)return t.fire("error",{error:e});t.video=o,t.video.loop=!0;var i;t.video.addEventListener("playing",function(){i=t.map.style.animationLoop.set(1/0),t.map._rerender()}),t.video.addEventListener("pause",function(){t.map.style.animationLoop.cancel(i)}),t.map&&t.video.play(),t._finishLoading()})},e.prototype.getVideo=function(){return this.video},e.prototype.onAdd=function(t){this.map||(this.load(),this.map=t,this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},e.prototype.prepare=function(){!this.tile||this.video.readyState<2||this._prepareImage(this.map.painter.gl,this.video)},e.prototype.serialize=function(){return{type:"video",urls:this.urls,coordinates:this.coordinates}},e}(_dereq_("./image_source"));module.exports=VideoSource},{"../util/ajax":194,"./image_source":86}],100:[function(_dereq_,module,exports){"use strict";var Actor=_dereq_("../util/actor"),StyleLayerIndex=_dereq_("../style/style_layer_index"),VectorTileWorkerSource=_dereq_("./vector_tile_worker_source"),GeoJSONWorkerSource=_dereq_("./geojson_worker_source"),globalRTLTextPlugin=_dereq_("./rtl_text_plugin"),Worker=function(e){var r=this;this.self=e,this.actor=new Actor(e,this),this.layerIndexes={},this.workerSourceTypes={vector:VectorTileWorkerSource,geojson:GeoJSONWorkerSource},this.workerSources={},this.self.registerWorkerSource=function(e,o){if(r.workerSourceTypes[e])throw new Error('Worker source with name "'+e+'" already registered.');r.workerSourceTypes[e]=o},this.self.registerRTLTextPlugin=function(e){if(globalRTLTextPlugin.applyArabicShaping||globalRTLTextPlugin.processBidirectionalText)throw new Error("RTL text plugin already registered.");globalRTLTextPlugin.applyArabicShaping=e.applyArabicShaping,globalRTLTextPlugin.processBidirectionalText=e.processBidirectionalText}};Worker.prototype.setLayers=function(e,r){this.getLayerIndex(e).replace(r)},Worker.prototype.updateLayers=function(e,r){this.getLayerIndex(e).update(r.layers,r.removedIds,r.symbolOrder)},Worker.prototype.loadTile=function(e,r,o){this.getWorkerSource(e,r.type).loadTile(r,o)},Worker.prototype.reloadTile=function(e,r,o){this.getWorkerSource(e,r.type).reloadTile(r,o)},Worker.prototype.abortTile=function(e,r){this.getWorkerSource(e,r.type).abortTile(r)},Worker.prototype.removeTile=function(e,r){this.getWorkerSource(e,r.type).removeTile(r)},Worker.prototype.removeSource=function(e,r){var o=this.getWorkerSource(e,r.type);void 0!==o.removeSource&&o.removeSource(r)},Worker.prototype.redoPlacement=function(e,r,o){this.getWorkerSource(e,r.type).redoPlacement(r,o)},Worker.prototype.loadWorkerSource=function(e,r,o){try{this.self.importScripts(r.url),o()}catch(e){o(e)}},Worker.prototype.loadRTLTextPlugin=function(e,r,o){try{globalRTLTextPlugin.applyArabicShaping||globalRTLTextPlugin.processBidirectionalText||this.self.importScripts(r)}catch(e){o(e)}},Worker.prototype.getLayerIndex=function(e){var r=this.layerIndexes[e];return r||(r=this.layerIndexes[e]=new StyleLayerIndex),r},Worker.prototype.getWorkerSource=function(e,r){var o=this;if(this.workerSources[e]||(this.workerSources[e]={}),!this.workerSources[e][r]){var t={send:function(r,t,i,n){o.actor.send(r,t,i,n,e)}};this.workerSources[e][r]=new this.workerSourceTypes[r](t,this.getLayerIndex(e))}return this.workerSources[e][r]},module.exports=function(e){return new Worker(e)}},{"../style/style_layer_index":157,"../util/actor":193,"./geojson_worker_source":84,"./rtl_text_plugin":91,"./vector_tile_worker_source":98}],101:[function(_dereq_,module,exports){"use strict";function recalculateLayers(e,i){for(var r=0,o=e.layers;r=B.maxzoom||B.layout&&"none"===B.layout.visibility)){for(var b=0,k=x;b=0;w--){var A=n[i.symbolOrder[w]];A&&t.symbolBuckets.push(A)}if(0===this.symbolBuckets.length)return T(new CollisionTile(this.angle,this.pitch,this.collisionBoxArray));var D=0,I=Object.keys(c.iconDependencies),O=util.mapObject(c.glyphDependencies,function(e){return Object.keys(e).map(Number)}),L=function(e){if(e)return o(e);if(2===++D){for(var i=new CollisionTile(t.angle,t.pitch,t.collisionBoxArray),r=0,s=t.symbolBuckets;r"===i||"<="===i||">="===i?compileComparisonOp(e[1],e[2],i,!0):"any"===i?compileLogicalOp(e.slice(1),"||"):"all"===i?compileLogicalOp(e.slice(1),"&&"):"none"===i?compileNegation(compileLogicalOp(e.slice(1),"||")):"in"===i?compileInOp(e[1],e.slice(2)):"!in"===i?compileNegation(compileInOp(e[1],e.slice(2))):"has"===i?compileHasOp(e[1]):"!has"===i?compileNegation(compileHasOp(e[1])):"true")+")"}function compilePropertyReference(e){return"$type"===e?"f.type":"$id"===e?"f.id":"p["+JSON.stringify(e)+"]"}function compileComparisonOp(e,i,n,r){var o=compilePropertyReference(e),t="$type"===e?types.indexOf(i):JSON.stringify(i);return(r?"typeof "+o+"=== typeof "+t+"&&":"")+o+n+t}function compileLogicalOp(e,i){return e.map(compile).join(i)}function compileInOp(e,i){"$type"===e&&(i=i.map(function(e){return types.indexOf(e)}));var n=JSON.stringify(i.sort(compare)),r=compilePropertyReference(e);return i.length<=200?n+".indexOf("+r+") !== -1":"function(v, a, i, j) {while (i <= j) { var m = (i + j) >> 1; if (a[m] === v) return true; if (a[m] > v) j = m - 1; else i = m + 1;}return false; }("+r+", "+n+",0,"+(i.length-1)+")"}function compileHasOp(e){return"$id"===e?'"id" in f':JSON.stringify(e)+" in p"}function compileNegation(e){return"!("+e+")"}function compare(e,i){return ei?1:0}module.exports=createFilter;var types=["Unknown","Point","LineString","Polygon"]},{}],106:[function(_dereq_,module,exports){"use strict";function xyz2lab(r){return r>t3?Math.pow(r,1/3):r/t2+t0}function lab2xyz(r){return r>t1?r*r*r:t2*(r-t0)}function xyz2rgb(r){return 255*(r<=.0031308?12.92*r:1.055*Math.pow(r,1/2.4)-.055)}function rgb2xyz(r){return r/=255,r<=.04045?r/12.92:Math.pow((r+.055)/1.055,2.4)}function rgbToLab(r){var t=rgb2xyz(r[0]),a=rgb2xyz(r[1]),n=rgb2xyz(r[2]),b=xyz2lab((.4124564*t+.3575761*a+.1804375*n)/Xn),o=xyz2lab((.2126729*t+.7151522*a+.072175*n)/Yn);return[116*o-16,500*(b-o),200*(o-xyz2lab((.0193339*t+.119192*a+.9503041*n)/Zn)),r[3]]}function labToRgb(r){var t=(r[0]+16)/116,a=isNaN(r[1])?t:t+r[1]/500,n=isNaN(r[2])?t:t-r[2]/200;return t=Yn*lab2xyz(t),a=Xn*lab2xyz(a),n=Zn*lab2xyz(n),[xyz2rgb(3.2404542*a-1.5371385*t-.4985314*n),xyz2rgb(-.969266*a+1.8760108*t+.041556*n),xyz2rgb(.0556434*a-.2040259*t+1.0572252*n),r[3]]}function rgbToHcl(r){var t=rgbToLab(r),a=t[0],n=t[1],b=t[2],o=Math.atan2(b,n)*rad2deg;return[o<0?o+360:o,Math.sqrt(n*n+b*b),a,r[3]]}function hclToRgb(r){var t=r[0]*deg2rad,a=r[1];return labToRgb([r[2],Math.cos(t)*a,Math.sin(t)*a,r[3]])}var Xn=.95047,Yn=1,Zn=1.08883,t0=4/29,t1=6/29,t2=3*t1*t1,t3=t1*t1*t1,deg2rad=Math.PI/180,rad2deg=180/Math.PI;module.exports={lab:{forward:rgbToLab,reverse:labToRgb},hcl:{forward:rgbToHcl,reverse:hclToRgb}}},{}],107:[function(_dereq_,module,exports){"use strict";function identityFunction(t){return t}function createFunction(t,e){var o,n="color"===e.type;if(isFunctionDefinition(t)){var r=t.stops&&"object"==typeof t.stops[0][0],a=r||void 0!==t.property,i=r||!a,s=t.type||("interpolated"===e.function?"exponential":"interval");n&&((t=extend({},t)).stops&&(t.stops=t.stops.map(function(t){return[t[0],parseColor(t[1])]})),t.default?t.default=parseColor(t.default):t.default=parseColor(e.default));var u,p,l;if("exponential"===s)u=evaluateExponentialFunction;else if("interval"===s)u=evaluateIntervalFunction;else if("categorical"===s){u=evaluateCategoricalFunction,p=Object.create(null);for(var c=0,f=t.stops;c=t.stops[n-1][0])return t.stops[n-1][1];var r=findStopLessThanOrEqualTo(t.stops,o);return t.stops[r][1]}function evaluateExponentialFunction(t,e,o){var n=void 0!==t.base?t.base:1;if("number"!==getType(o))return coalesce(t.default,e.default);var r=t.stops.length;if(1===r)return t.stops[0][1];if(o<=t.stops[0][0])return t.stops[0][1];if(o>=t.stops[r-1][0])return t.stops[r-1][1];var a=findStopLessThanOrEqualTo(t.stops,o),i=interpolationFactor(o,n,t.stops[a][0],t.stops[a+1][0]),s=t.stops[a][1],u=t.stops[a+1][1],p=interpolate[e.type]||identityFunction;return"function"==typeof s?function(){var t=s.apply(void 0,arguments),e=u.apply(void 0,arguments);if(void 0!==t&&void 0!==e)return p(t,e,i)}:p(s,u,i)}function evaluateIdentityFunction(t,e,o){return"color"===e.type?o=parseColor(o):getType(o)!==e.type&&(o=void 0),coalesce(o,t.default,e.default)}function findStopLessThanOrEqualTo(t,e){for(var o,n,a=0,i=t.length-1,s=0;a<=i;){if(s=Math.floor((a+i)/2),o=t[s][0],n=t[s+1][0],e===o||e>o&&ee&&(i=s-1)}return Math.max(s-1,0)}function isFunctionDefinition(t){return"object"==typeof t&&(t.stops||"identity"===t.type)}function interpolationFactor(t,e,o,n){var r=n-o,a=t-o;return 1===e?a/r:(Math.pow(e,a)-1)/(Math.pow(e,r)-1)}var colorSpaces=_dereq_("./color_spaces"),parseColor=_dereq_("../util/parse_color"),extend=_dereq_("../util/extend"),getType=_dereq_("../util/get_type"),interpolate=_dereq_("../util/interpolate");module.exports=createFunction,module.exports.isFunctionDefinition=isFunctionDefinition,module.exports.interpolationFactor=interpolationFactor,module.exports.findStopLessThanOrEqualTo=findStopLessThanOrEqualTo},{"../util/extend":121,"../util/get_type":122,"../util/interpolate":123,"../util/parse_color":124,"./color_spaces":106}],108:[function(_dereq_,module,exports){"use strict";function key(r){return stringify(refProperties.map(function(e){return r[e]}))}function groupByLayout(r){for(var e={},t=0;t255?255:e}function clamp_css_float(e){return e<0?0:e>1?1:e}function parse_css_int(e){return clamp_css_byte("%"===e[e.length-1]?parseFloat(e)/100*255:parseInt(e))}function parse_css_float(e){return clamp_css_float("%"===e[e.length-1]?parseFloat(e)/100:parseFloat(e))}function css_hue_to_rgb(e,r,l){return l<0?l+=1:l>1&&(l-=1),6*l<1?e+(r-e)*l*6:2*l<1?r:3*l<2?e+(r-e)*(2/3-l)*6:e}function parseCSSColor(e){var r=e.replace(/ /g,"").toLowerCase();if(r in kCSSColorTable)return kCSSColorTable[r].slice();if("#"===r[0]){if(4===r.length)return(l=parseInt(r.substr(1),16))>=0&&l<=4095?[(3840&l)>>4|(3840&l)>>8,240&l|(240&l)>>4,15&l|(15&l)<<4,1]:null;if(7===r.length){var l=parseInt(r.substr(1),16);return l>=0&&l<=16777215?[(16711680&l)>>16,(65280&l)>>8,255&l,1]:null}return null}var a=r.indexOf("("),t=r.indexOf(")");if(-1!==a&&t+1===r.length){var n=r.substr(0,a),s=r.substr(a+1,t-(a+1)).split(","),o=1;switch(n){case"rgba":if(4!==s.length)return null;o=parse_css_float(s.pop());case"rgb":return 3!==s.length?null:[parse_css_int(s[0]),parse_css_int(s[1]),parse_css_int(s[2]),o];case"hsla":if(4!==s.length)return null;o=parse_css_float(s.pop());case"hsl":if(3!==s.length)return null;var i=(parseFloat(s[0])%360+360)%360/360,u=parse_css_float(s[1]),g=parse_css_float(s[2]),d=g<=.5?g*(u+1):g+u-g*u,c=2*g-d;return[clamp_css_byte(255*css_hue_to_rgb(c,d,i+1/3)),clamp_css_byte(255*css_hue_to_rgb(c,d,i)),clamp_css_byte(255*css_hue_to_rgb(c,d,i-1/3)),o];default:return null}}return null}var kCSSColorTable={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],rebeccapurple:[102,51,153,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};try{exports.parseCSSColor=parseCSSColor}catch(e){}},{}],110:[function(_dereq_,module,exports){function sss(r){var e,t,s,n,u,a;switch(typeof r){case"object":if(null===r)return null;if(isArray(r)){for(s="[",t=r.length-1,e=0;e-1&&(s+=sss(r[e])),s+"]"}for(t=(n=objKeys(r).sort()).length,s="{",u=n[e=0],a=t>0&&void 0!==r[u];e15?"\\u00"+e.toString(16):"\\u000"+e.toString(16)}};module.exports=function(r){if(void 0!==r)return""+sss(r)},module.exports.stringSearch=strReg,module.exports.stringReplace=strReplace},{}],111:[function(_dereq_,module,exports){function isObjectLike(r){return!!r&&"object"==typeof r}function arraySome(r,e){for(var a=-1,t=r.length;++as))return!1;for(;++c-1&&t%1==0&&t<=MAX_SAFE_INTEGER}function isObject(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function isObjectLike(t){return!!t&&"object"==typeof t}var MAX_SAFE_INTEGER=9007199254740991,argsTag="[object Arguments]",funcTag="[object Function]",genTag="[object GeneratorFunction]",objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,objectToString=objectProto.toString,propertyIsEnumerable=objectProto.propertyIsEnumerable;module.exports=isArguments},{}],115:[function(_dereq_,module,exports){function isObjectLike(t){return!!t&&"object"==typeof t}function isLength(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=MAX_SAFE_INTEGER}function isFunction(t){return isObject(t)&&objToString.call(t)==funcTag}function isObject(t){var r=typeof t;return!!t&&("object"==r||"function"==r)}function isNative(t){return null!=t&&(isFunction(t)?reIsNative.test(fnToString.call(t)):isObjectLike(t)&&reIsHostCtor.test(t))}var funcTag="[object Function]",reIsHostCtor=/^\[object .+?Constructor\]$/,objectProto=Object.prototype,fnToString=Function.prototype.toString,hasOwnProperty=objectProto.hasOwnProperty,objToString=objectProto.toString,reIsNative=RegExp("^"+fnToString.call(hasOwnProperty).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),MAX_SAFE_INTEGER=9007199254740991,isArray=function(t,r){var e=null==t?void 0:t[r];return isNative(e)?e:void 0}(Array,"isArray")||function(t){return isObjectLike(t)&&isLength(t.length)&&"[object Array]"==objToString.call(t)};module.exports=isArray},{}],116:[function(_dereq_,module,exports){function isEqual(a,l,i,e){var s=(i="function"==typeof i?bindCallback(i,e,3):void 0)?i(a,l):void 0;return void 0===s?baseIsEqual(a,l,i):!!s}var baseIsEqual=_dereq_("lodash._baseisequal"),bindCallback=_dereq_("lodash._bindcallback");module.exports=isEqual},{"lodash._baseisequal":111,"lodash._bindcallback":112}],117:[function(_dereq_,module,exports){function isLength(a){return"number"==typeof a&&a>-1&&a%1==0&&a<=MAX_SAFE_INTEGER}function isObjectLike(a){return!!a&&"object"==typeof a}function isTypedArray(a){return isObjectLike(a)&&isLength(a.length)&&!!typedArrayTags[objectToString.call(a)]}var MAX_SAFE_INTEGER=9007199254740991,typedArrayTags={};typedArrayTags["[object Float32Array]"]=typedArrayTags["[object Float64Array]"]=typedArrayTags["[object Int8Array]"]=typedArrayTags["[object Int16Array]"]=typedArrayTags["[object Int32Array]"]=typedArrayTags["[object Uint8Array]"]=typedArrayTags["[object Uint8ClampedArray]"]=typedArrayTags["[object Uint16Array]"]=typedArrayTags["[object Uint32Array]"]=!0,typedArrayTags["[object Arguments]"]=typedArrayTags["[object Array]"]=typedArrayTags["[object ArrayBuffer]"]=typedArrayTags["[object Boolean]"]=typedArrayTags["[object DataView]"]=typedArrayTags["[object Date]"]=typedArrayTags["[object Error]"]=typedArrayTags["[object Function]"]=typedArrayTags["[object Map]"]=typedArrayTags["[object Number]"]=typedArrayTags["[object Object]"]=typedArrayTags["[object RegExp]"]=typedArrayTags["[object Set]"]=typedArrayTags["[object String]"]=typedArrayTags["[object WeakMap]"]=!1;var objectToString=Object.prototype.toString;module.exports=isTypedArray},{}],118:[function(_dereq_,module,exports){function isArrayLike(e){return null!=e&&isLength(getLength(e))}function isIndex(e,t){return e="number"==typeof e||reIsUint.test(e)?+e:-1,t=null==t?MAX_SAFE_INTEGER:t,e>-1&&e%1==0&&e-1&&e%1==0&&e<=MAX_SAFE_INTEGER}function shimKeys(e){for(var t=keysIn(e),r=t.length,n=r&&e.length,s=!!n&&isLength(n)&&(isArray(e)||isArguments(e)),o=-1,i=[];++o0;++n":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{}}},geometry_type:{type:"enum",values:{Point:{},LineString:{},Polygon:{}}},function:{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:22,value:["number","color"],length:2},light:{anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},transition:!1},position:{type:"array",default:[1.15,210,30],length:3,value:"number",transition:!0,function:"interpolated","zoom-function":!0,"property-function":!1},color:{type:"color",default:"#ffffff",function:"interpolated","zoom-function":!0,"property-function":!1,transition:!0},intensity:{type:"number",default:.5,minimum:0,maximum:1,function:"interpolated","zoom-function":!0,"property-function":!1,transition:!0}},paint:["paint_fill","paint_line","paint_circle","paint_fill-extrusion","paint_symbol","paint_raster","paint_background"],paint_fill:{"fill-antialias":{type:"boolean",function:"piecewise-constant","zoom-function":!0,default:!0},"fill-opacity":{type:"number",function:"interpolated","zoom-function":!0,"property-function":!0,default:1,minimum:0,maximum:1,transition:!0},"fill-color":{type:"color",default:"#000000",function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,requires:[{"!":"fill-pattern"}]},"fill-outline-color":{type:"color",function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}]},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],function:"interpolated","zoom-function":!0,transition:!0,units:"pixels"},"fill-translate-anchor":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{map:{},viewport:{}},default:"map",requires:["fill-translate"]},"fill-pattern":{type:"string",function:"piecewise-constant","zoom-function":!0,transition:!0}},"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",function:"interpolated","zoom-function":!0,"property-function":!1,default:1,minimum:0,maximum:1,transition:!0},"fill-extrusion-color":{type:"color",default:"#000000",function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,requires:[{"!":"fill-extrusion-pattern"}]},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],function:"interpolated","zoom-function":!0,transition:!0,units:"pixels"},"fill-extrusion-translate-anchor":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"]},"fill-extrusion-pattern":{type:"string",function:"piecewise-constant","zoom-function":!0,transition:!0},"fill-extrusion-height":{type:"number",function:"interpolated","zoom-function":!0,"property-function":!0,default:0,minimum:0,maximum:65535,units:"meters",transition:!0},"fill-extrusion-base":{type:"number",function:"interpolated","zoom-function":!0,"property-function":!0,default:0,minimum:0,maximum:65535,units:"meters",transition:!0,requires:["fill-extrusion-height"]}},paint_line:{"line-opacity":{type:"number",function:"interpolated","zoom-function":!0,"property-function":!0,default:1,minimum:0,maximum:1,transition:!0},"line-color":{type:"color",default:"#000000",function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,requires:[{"!":"line-pattern"}]},"line-translate":{type:"array",value:"number",length:2,default:[0,0],function:"interpolated","zoom-function":!0,transition:!0,units:"pixels"},"line-translate-anchor":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{map:{},viewport:{}},default:"map",requires:["line-translate"]},"line-width":{type:"number",default:1,minimum:0,function:"interpolated","zoom-function":!0,transition:!0,units:"pixels"},"line-gap-width":{type:"number",default:0,minimum:0,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,units:"pixels"},"line-offset":{type:"number",default:0,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,units:"pixels"},"line-blur":{type:"number",default:0,minimum:0,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,units:"pixels"},"line-dasharray":{type:"array",value:"number",function:"piecewise-constant","zoom-function":!0,minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}]},"line-pattern":{type:"string",function:"piecewise-constant","zoom-function":!0,transition:!0}},paint_circle:{"circle-radius":{type:"number",default:5,minimum:0,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,units:"pixels"},"circle-color":{type:"color",default:"#000000",function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0},"circle-blur":{type:"number",default:0,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],function:"interpolated","zoom-function":!0,transition:!0,units:"pixels"},"circle-translate-anchor":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{map:{},viewport:{}},default:"map",requires:["circle-translate"]},"circle-pitch-scale":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{map:{},viewport:{}},default:"map"},"circle-stroke-width":{type:"number",default:0,minimum:0,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,units:"pixels"},"circle-stroke-color":{type:"color",default:"#000000",function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0}},paint_symbol:{"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,requires:["icon-image"]},"icon-color":{type:"color",default:"#000000",function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,requires:["icon-image"]},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,requires:["icon-image"]},"icon-halo-width":{type:"number",default:0,minimum:0,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,units:"pixels",requires:["icon-image"]},"icon-halo-blur":{type:"number",default:0,minimum:0,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,units:"pixels",requires:["icon-image"]},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],function:"interpolated","zoom-function":!0,transition:!0,units:"pixels",requires:["icon-image"]},"icon-translate-anchor":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"]},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,requires:["text-field"]},"text-color":{type:"color",default:"#000000",function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,requires:["text-field"]},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,requires:["text-field"]},"text-halo-width":{type:"number",default:0,minimum:0,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,units:"pixels",requires:["text-field"]},"text-halo-blur":{type:"number",default:0,minimum:0,function:"interpolated","zoom-function":!0,"property-function":!0,transition:!0,units:"pixels",requires:["text-field"]},"text-translate":{type:"array",value:"number",length:2,default:[0,0],function:"interpolated","zoom-function":!0,transition:!0,units:"pixels",requires:["text-field"]},"text-translate-anchor":{type:"enum",function:"piecewise-constant","zoom-function":!0,values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"]}},paint_raster:{"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,function:"interpolated","zoom-function":!0,transition:!0},"raster-hue-rotate":{type:"number",default:0,period:360,function:"interpolated","zoom-function":!0,transition:!0,units:"degrees"},"raster-brightness-min":{type:"number",function:"interpolated","zoom-function":!0,default:0,minimum:0,maximum:1,transition:!0},"raster-brightness-max":{type:"number",function:"interpolated","zoom-function":!0,default:1,minimum:0,maximum:1,transition:!0},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,function:"interpolated","zoom-function":!0,transition:!0},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,function:"interpolated","zoom-function":!0,transition:!0},"raster-fade-duration":{type:"number",default:300,minimum:0,function:"interpolated","zoom-function":!0,transition:!0,units:"milliseconds"}},paint_background:{"background-color":{type:"color",default:"#000000",function:"interpolated","zoom-function":!0,transition:!0,requires:[{"!":"background-pattern"}]},"background-pattern":{type:"string",function:"piecewise-constant","zoom-function":!0,transition:!0},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,function:"interpolated","zoom-function":!0,transition:!0}},transition:{duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}}}},{}],121:[function(_dereq_,module,exports){"use strict";module.exports=function(r){for(var t=arguments,e=1;e7)return[new ValidationError(u,a,"constants have been deprecated as of v8")];if(!(a in l.constants))return[new ValidationError(u,a,'constant "%s" not found',a)];e=extend({},e,{value:l.constants[a]})}return n.function&&"object"===getType(a)?r(e):n.type&&i[n.type]?i[n.type](e):t(extend({},e,{valueSpec:n.type?o[n.type]:n}))}},{"../error/validation_error":104,"../util/extend":121,"../util/get_type":122,"./validate_array":128,"./validate_boolean":129,"./validate_color":130,"./validate_constants":131,"./validate_enum":132,"./validate_filter":133,"./validate_function":134,"./validate_layer":136,"./validate_light":138,"./validate_number":139,"./validate_object":140,"./validate_source":143,"./validate_string":144}],128:[function(_dereq_,module,exports){"use strict";var getType=_dereq_("../util/get_type"),validate=_dereq_("./validate"),ValidationError=_dereq_("../error/validation_error");module.exports=function(e){var r=e.value,t=e.valueSpec,a=e.style,n=e.styleSpec,l=e.key,i=e.arrayElementValidator||validate;if("array"!==getType(r))return[new ValidationError(l,r,"array expected, %s found",getType(r))];if(t.length&&r.length!==t.length)return[new ValidationError(l,r,"array length %d expected, length %d found",t.length,r.length)];if(t["min-length"]&&r.length7)return t?[new ValidationError(e,t,"constants have been deprecated as of v8")]:[];var o=getType(t);if("object"!==o)return[new ValidationError(e,t,"object expected, %s found",o)];var n=[];for(var i in t)"@"!==i[0]&&n.push(new ValidationError(e+"."+i,t[i],'constants must start with "@"'));return n}},{"../error/validation_error":104,"../util/get_type":122}],132:[function(_dereq_,module,exports){"use strict";var ValidationError=_dereq_("../error/validation_error"),unbundle=_dereq_("../util/unbundle_jsonlint");module.exports=function(e){var r=e.key,n=e.value,u=e.valueSpec,o=[];return Array.isArray(u.values)?-1===u.values.indexOf(unbundle(n))&&o.push(new ValidationError(r,n,"expected one of [%s], %s found",u.values.join(", "),n)):-1===Object.keys(u.values).indexOf(unbundle(n))&&o.push(new ValidationError(r,n,"expected one of [%s], %s found",Object.keys(u.values).join(", "),n)),o}},{"../error/validation_error":104,"../util/unbundle_jsonlint":126}],133:[function(_dereq_,module,exports){"use strict";var ValidationError=_dereq_("../error/validation_error"),validateEnum=_dereq_("./validate_enum"),getType=_dereq_("../util/get_type"),unbundle=_dereq_("../util/unbundle_jsonlint");module.exports=function e(r){var t,a=r.value,n=r.key,l=r.styleSpec,s=[];if("array"!==getType(a))return[new ValidationError(n,a,"array expected, %s found",getType(a))];if(a.length<1)return[new ValidationError(n,a,"filter array must have at least 1 element")];switch(s=s.concat(validateEnum({key:n+"[0]",value:a[0],valueSpec:l.filter_operator,style:r.style,styleSpec:r.styleSpec})),unbundle(a[0])){case"<":case"<=":case">":case">=":a.length>=2&&"$type"===unbundle(a[1])&&s.push(new ValidationError(n,a,'"$type" cannot be use with operator "%s"',a[0]));case"==":case"!=":3!==a.length&&s.push(new ValidationError(n,a,'filter array for operator "%s" must have 3 elements',a[0]));case"in":case"!in":a.length>=2&&"string"!==(t=getType(a[1]))&&s.push(new ValidationError(n+"[1]",a[1],"string expected, %s found",t));for(var o=2;ounbundle(r[0].zoom))return[new ValidationError(o,r[0].zoom,"stop zoom values must appear in ascending order")];unbundle(r[0].zoom)!==l&&(l=unbundle(r[0].zoom),i=void 0,s={}),t=t.concat(validateObject({key:o+"[0]",value:r[0],valueSpec:{zoom:{}},style:e.style,styleSpec:e.styleSpec,objectElementValidators:{zoom:validateNumber,value:a}}))}else t=t.concat(a({key:o+"[0]",value:r[0],valueSpec:{},style:e.style,styleSpec:e.styleSpec}));return t.concat(validate({key:o+"[1]",value:r[1],valueSpec:u,style:e.style,styleSpec:e.styleSpec}))}function a(e){var t=getType(e.value),r=unbundle(e.value);if(n){if(t!==n)return[new ValidationError(e.key,e.value,"%s stop domain type must match previous stop domain type %s",t,n)]}else n=t;if("number"!==t&&"string"!==t&&"boolean"!==t)return[new ValidationError(e.key,e.value,"stop domain value must be a number, string, or boolean")];if("number"!==t&&"categorical"!==p){var a="number expected, %s found";return u["property-function"]&&void 0===p&&(a+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new ValidationError(e.key,e.value,a,t)]}return"categorical"!==p||"number"!==t||isFinite(r)&&Math.floor(r)===r?"number"===t&&void 0!==i&&r=8&&(d&&!e.valueSpec["property-function"]?v.push(new ValidationError(e.key,e.value,"property functions not supported")):y&&!e.valueSpec["zoom-function"]&&v.push(new ValidationError(e.key,e.value,"zoom functions not supported"))),"categorical"!==p&&!c||void 0!==e.value.property||v.push(new ValidationError(e.key,e.value,'"property" property is required')),v}},{"../error/validation_error":104,"../util/get_type":122,"../util/unbundle_jsonlint":126,"./validate":127,"./validate_array":128,"./validate_number":139,"./validate_object":140}],135:[function(_dereq_,module,exports){"use strict";var ValidationError=_dereq_("../error/validation_error"),validateString=_dereq_("./validate_string");module.exports=function(r){var e=r.value,t=r.key,a=validateString(r);return a.length?a:(-1===e.indexOf("{fontstack}")&&a.push(new ValidationError(t,e,'"glyphs" url must include a "{fontstack}" token')),-1===e.indexOf("{range}")&&a.push(new ValidationError(t,e,'"glyphs" url must include a "{range}" token')),a)}},{"../error/validation_error":104,"./validate_string":144}],136:[function(_dereq_,module,exports){"use strict";var ValidationError=_dereq_("../error/validation_error"),unbundle=_dereq_("../util/unbundle_jsonlint"),validateObject=_dereq_("./validate_object"),validateFilter=_dereq_("./validate_filter"),validatePaintProperty=_dereq_("./validate_paint_property"),validateLayoutProperty=_dereq_("./validate_layout_property"),extend=_dereq_("../util/extend");module.exports=function(e){var r=[],t=e.value,a=e.key,i=e.style,l=e.styleSpec;t.type||t.ref||r.push(new ValidationError(a,t,'either "type" or "ref" is required'));var u=unbundle(t.type),n=unbundle(t.ref);if(t.id)for(var o=unbundle(t.id),s=0;sm.maximum?[new ValidationError(r,i,"%s is greater than the maximum value %s",i,m.maximum)]:[]}},{"../error/validation_error":104,"../util/get_type":122}],140:[function(_dereq_,module,exports){"use strict";var ValidationError=_dereq_("../error/validation_error"),getType=_dereq_("../util/get_type"),validateSpec=_dereq_("./validate");module.exports=function(e){var r=e.key,t=e.value,i=e.valueSpec||{},a=e.objectElementValidators||{},o=e.style,l=e.styleSpec,n=[],u=getType(t);if("object"!==u)return[new ValidationError(r,t,"object expected, %s found",u)];for(var d in t){var p=d.split(".")[0],s=i[p]||i["*"],c=void 0;if(a[p])c=a[p];else if(i[p])c=validateSpec;else if(a["*"])c=a["*"];else{if(!i["*"]){n.push(new ValidationError(r,t[d],'unknown property "%s"',d));continue}c=validateSpec}n=n.concat(c({key:(r?r+".":r)+d,value:t[d],valueSpec:s,style:o,styleSpec:l,object:t,objectKey:d}))}for(var v in i)i[v].required&&void 0===i[v].default&&void 0===t[v]&&n.push(new ValidationError(r,t,'missing required property "%s"',v));return n}},{"../error/validation_error":104,"../util/get_type":122,"./validate":127}],141:[function(_dereq_,module,exports){"use strict";var validateProperty=_dereq_("./validate_property");module.exports=function(r){return validateProperty(r,"paint")}},{"./validate_property":142}],142:[function(_dereq_,module,exports){"use strict";var validate=_dereq_("./validate"),ValidationError=_dereq_("../error/validation_error"),getType=_dereq_("../util/get_type");module.exports=function(e,t){var r=e.key,i=e.style,a=e.styleSpec,n=e.value,o=e.objectKey,l=a[t+"_"+e.layerType];if(!l)return[];var y=o.match(/^(.*)-transition$/);if("paint"===t&&y&&l[y[1]]&&l[y[1]].transition)return validate({key:r,value:n,valueSpec:a.transition,style:i,styleSpec:a});var p=e.valueSpec||l[o];if(!p)return[new ValidationError(r,n,'unknown property "%s"',o)];var s;if("string"===getType(n)&&p["property-function"]&&!p.tokens&&(s=/^{([^}]+)}$/.exec(n)))return[new ValidationError(r,n,'"%s" does not support interpolation syntax\nUse an identity property function instead: `{ "type": "identity", "property": %s` }`.',o,JSON.stringify(s[1]))];var u=[];return"symbol"===e.layerType&&"text-field"===o&&i&&!i.glyphs&&u.push(new ValidationError(r,n,'use of "text-field" requires a style "glyphs" property')),u.concat(validate({key:e.key,value:n,valueSpec:p,style:i,styleSpec:a}))}},{"../error/validation_error":104,"../util/get_type":122,"./validate":127}],143:[function(_dereq_,module,exports){"use strict";var ValidationError=_dereq_("../error/validation_error"),unbundle=_dereq_("../util/unbundle_jsonlint"),validateObject=_dereq_("./validate_object"),validateEnum=_dereq_("./validate_enum");module.exports=function(e){var a=e.value,t=e.key,r=e.styleSpec,l=e.style;if(!a.type)return[new ValidationError(t,a,'"type" is required')];var i=[];switch(unbundle(a.type)){case"vector":case"raster":if(i=i.concat(validateObject({key:t,value:a,valueSpec:r.source_tile,style:e.style,styleSpec:r})),"url"in a)for(var s in a)["type","url","tileSize"].indexOf(s)<0&&i.push(new ValidationError(t+"."+s,a[s],'a source with a "url" property may not include a "%s" property',s));return i;case"geojson":return validateObject({key:t,value:a,valueSpec:r.source_geojson,style:l,styleSpec:r});case"video":return validateObject({key:t,value:a,valueSpec:r.source_video,style:l,styleSpec:r});case"image":return validateObject({key:t,value:a,valueSpec:r.source_image,style:l,styleSpec:r});case"canvas":return validateObject({key:t,value:a,valueSpec:r.source_canvas,style:l,styleSpec:r});default:return validateEnum({key:t+".type",value:a.type,valueSpec:{values:["vector","raster","geojson","video","image","canvas"]},style:l,styleSpec:r})}}},{"../error/validation_error":104,"../util/unbundle_jsonlint":126,"./validate_enum":132,"./validate_object":140}],144:[function(_dereq_,module,exports){"use strict";var getType=_dereq_("../util/get_type"),ValidationError=_dereq_("../error/validation_error");module.exports=function(r){var e=r.value,t=r.key,i=getType(e);return"string"!==i?[new ValidationError(t,e,"string expected, %s found",i)]:[]}},{"../error/validation_error":104,"../util/get_type":122}],145:[function(_dereq_,module,exports){"use strict";function validateStyleMin(e,a){a=a||latestStyleSpec;var t=[];return t=t.concat(validate({key:"",value:e,valueSpec:a.$root,styleSpec:a,style:e,objectElementValidators:{glyphs:validateGlyphsURL,"*":function(){return[]}}})),a.$version>7&&e.constants&&(t=t.concat(validateConstants({key:"constants",value:e.constants,style:e,styleSpec:a}))),sortErrors(t)}function sortErrors(e){return[].concat(e).sort(function(e,a){return e.line-a.line})}function wrapCleanErrors(e){return function(){return sortErrors(e.apply(this,arguments))}}var validateConstants=_dereq_("./validate/validate_constants"),validate=_dereq_("./validate/validate"),latestStyleSpec=_dereq_("./reference/latest"),validateGlyphsURL=_dereq_("./validate/validate_glyphs_url");validateStyleMin.source=wrapCleanErrors(_dereq_("./validate/validate_source")),validateStyleMin.light=wrapCleanErrors(_dereq_("./validate/validate_light")),validateStyleMin.layer=wrapCleanErrors(_dereq_("./validate/validate_layer")),validateStyleMin.filter=wrapCleanErrors(_dereq_("./validate/validate_filter")),validateStyleMin.paintProperty=wrapCleanErrors(_dereq_("./validate/validate_paint_property")),validateStyleMin.layoutProperty=wrapCleanErrors(_dereq_("./validate/validate_layout_property")),module.exports=validateStyleMin},{"./reference/latest":119,"./validate/validate":127,"./validate/validate_constants":131,"./validate/validate_filter":133,"./validate/validate_glyphs_url":135,"./validate/validate_layer":136,"./validate/validate_layout_property":137,"./validate/validate_light":138,"./validate/validate_paint_property":141,"./validate/validate_source":143}],146:[function(_dereq_,module,exports){"use strict";var AnimationLoop=function(){this.n=0,this.times=[]};AnimationLoop.prototype.stopped=function(){return this.times=this.times.filter(function(t){return t.time>=(new Date).getTime()}),!this.times.length},AnimationLoop.prototype.set=function(t){return this.times.push({id:this.n,time:t+(new Date).getTime()}),this.n++},AnimationLoop.prototype.cancel=function(t){this.times=this.times.filter(function(i){return i.id!==t})},module.exports=AnimationLoop},{}],147:[function(_dereq_,module,exports){"use strict";var Evented=_dereq_("../util/evented"),ajax=_dereq_("../util/ajax"),browser=_dereq_("../util/browser"),normalizeURL=_dereq_("../util/mapbox").normalizeSpriteURL,SpritePosition=function(){this.x=0,this.y=0,this.width=0,this.height=0,this.pixelRatio=1,this.sdf=!1},ImageSprite=function(t){function e(e,i){var r=this;t.call(this),this.base=e,this.retina=browser.devicePixelRatio>1,this.setEventedParent(i);var a=this.retina?"@2x":"";ajax.getJSON(normalizeURL(e,a,".json"),function(t,e){return t?void r.fire("error",{error:t}):(r.data=e,void(r.imgData&&r.fire("data",{dataType:"style"})))}),ajax.getImage(normalizeURL(e,a,".png"),function(t,e){return t?void r.fire("error",{error:t}):(r.imgData=browser.getImageData(e),r.width=e.width,void(r.data&&r.fire("data",{dataType:"style"})))})}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.toJSON=function(){return this.base},e.prototype.loaded=function(){return!(!this.data||!this.imgData)},e.prototype.resize=function(){var t=this;if(browser.devicePixelRatio>1!==this.retina){var i=new e(this.base);i.on("data",function(){t.data=i.data,t.imgData=i.imgData,t.width=i.width,t.retina=i.retina})}},e.prototype.getSpritePosition=function(t){if(!this.loaded())return new SpritePosition;var e=this.data&&this.data[t];return e&&this.imgData?e:new SpritePosition},e}(Evented);module.exports=ImageSprite},{"../util/ajax":194,"../util/browser":195,"../util/evented":203,"../util/mapbox":210}],148:[function(_dereq_,module,exports){"use strict";var styleSpec=_dereq_("../style-spec/reference/latest"),util=_dereq_("../util/util"),Evented=_dereq_("../util/evented"),validateStyle=_dereq_("./validate_style"),StyleDeclaration=_dereq_("./style_declaration"),StyleTransition=_dereq_("./style_transition"),Light=function(t){function i(i){t.call(this),this.properties=["anchor","color","position","intensity"],this._specifications=styleSpec.light,this.set(i)}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.set=function(t){var i=this;if(!this._validate(validateStyle.light,t)){this._declarations={},this._transitions={},this._transitionOptions={},this.calculated={},t=util.extend({anchor:this._specifications.anchor.default,color:this._specifications.color.default,position:this._specifications.position.default,intensity:this._specifications.intensity.default},t);for(var e=0,o=i.properties;eMath.floor(e)&&(t.lastIntegerZoom=Math.floor(e+1),t.lastIntegerZoomTime=Date.now()),t.lastZoom=e},t.prototype._checkLoaded=function(){if(!this._loaded)throw new Error("Style is not done loading")},t.prototype.update=function(e,t){var r=this;if(this._changed){var i=Object.keys(this._updatedLayers),o=Object.keys(this._removedLayers);(i.length||o.length||this._updatedSymbolOrder)&&this._updateWorkerLayers(i,o);for(var s in r._updatedSources){var a=r._updatedSources[s];"reload"===a?r._reloadSource(s):"clear"===a&&r._clearSource(s)}this._applyClasses(e,t),this._resetUpdates(),this.fire("data",{dataType:"style"})}},t.prototype._updateWorkerLayers=function(e,t){var r=this,i=this._updatedSymbolOrder?this._order.filter(function(e){return"symbol"===r._layers[e].type}):null;this.dispatcher.broadcast("updateLayers",{layers:this._serializeLayers(e),removedIds:t,symbolOrder:i})},t.prototype._resetUpdates=function(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSymbolOrder=!1,this._updatedSources={},this._updatedPaintProps={},this._updatedAllPaintProps=!1},t.prototype.setState=function(e){var t=this;if(this._checkLoaded(),validateStyle.emitErrors(this,validateStyle(e)))return!1;(e=util.extend({},e)).layers=deref(e.layers);var r=diff(this.serialize(),e).filter(function(e){return!(e.command in ignoredDiffOperations)});if(0===r.length)return!1;var i=r.filter(function(e){return!(e.command in supportedDiffOperations)});if(i.length>0)throw new Error("Unimplemented: "+i.map(function(e){return e.command}).join(", ")+".");return r.forEach(function(e){"setTransition"!==e.command&&t[e.command].apply(t,e.args)}),this.stylesheet=e,!0},t.prototype.addSource=function(e,t,r){var i=this;if(this._checkLoaded(),void 0!==this.sourceCaches[e])throw new Error("There is already a source with this ID");if(!t.type)throw new Error("The type property must be defined, but the only the following properties were given: "+Object.keys(t)+".");if(!(["vector","raster","geojson","video","image","canvas"].indexOf(t.type)>=0)||!this._validate(validateStyle.source,"sources."+e,t,null,r)){var a=this.sourceCaches[e]=new SourceCache(e,t,this.dispatcher);a.style=this,a.setEventedParent(this,function(){return{isSourceLoaded:i.loaded(),source:a.serialize(),sourceId:e}}),a.onAdd(this.map),this._changed=!0}},t.prototype.removeSource=function(e){if(this._checkLoaded(),void 0===this.sourceCaches[e])throw new Error("There is no source with this ID");var t=this.sourceCaches[e];delete this.sourceCaches[e],delete this._updatedSources[e],t.setEventedParent(null),t.clearTiles(),t.onRemove&&t.onRemove(this.map),this._changed=!0},t.prototype.getSource=function(e){return this.sourceCaches[e]&&this.sourceCaches[e].getSource()},t.prototype.addLayer=function(e,t,r){this._checkLoaded();var i=e.id;if("object"==typeof e.source&&(this.addSource(i,e.source),e=util.extend(e,{source:i})),!this._validate(validateStyle.layer,"layers."+i,e,{arrayIndex:-1},r)){var o=StyleLayer.create(e);this._validateLayer(o),o.setEventedParent(this,{layer:{id:i}});var s=t?this._order.indexOf(t):this._order.length;if(this._order.splice(s,0,i),this._layers[i]=o,this._removedLayers[i]&&o.source){var a=this._removedLayers[i];delete this._removedLayers[i],this._updatedSources[o.source]=a.type!==o.type?"clear":"reload"}this._updateLayer(o),"symbol"===o.type&&(this._updatedSymbolOrder=!0),this.updateClasses(i)}},t.prototype.moveLayer=function(e,t){this._checkLoaded(),this._changed=!0;var r=this._layers[e];if(r){var i=this._order.indexOf(e);this._order.splice(i,1);var o=t?this._order.indexOf(t):this._order.length;this._order.splice(o,0,e),"symbol"===r.type&&(this._updatedSymbolOrder=!0,r.source&&!this._updatedSources[r.source]&&(this._updatedSources[r.source]="reload"))}else this.fire("error",{error:new Error("The layer '"+e+"' does not exist in the map's style and cannot be moved.")})},t.prototype.removeLayer=function(e){this._checkLoaded();var t=this._layers[e];if(t){t.setEventedParent(null);var r=this._order.indexOf(e);this._order.splice(r,1),"symbol"===t.type&&(this._updatedSymbolOrder=!0),this._changed=!0,this._removedLayers[e]=t,delete this._layers[e],delete this._updatedLayers[e],delete this._updatedPaintProps[e]}else this.fire("error",{error:new Error("The layer '"+e+"' does not exist in the map's style and cannot be removed.")})},t.prototype.getLayer=function(e){return this._layers[e]},t.prototype.setLayerZoomRange=function(e,t,r){this._checkLoaded();var i=this.getLayer(e);return i?void(i.minzoom===t&&i.maxzoom===r||(null!=t&&(i.minzoom=t),null!=r&&(i.maxzoom=r),this._updateLayer(i))):void this.fire("error",{error:new Error("The layer '"+e+"' does not exist in the map's style and cannot have zoom extent.")})},t.prototype.setFilter=function(e,t){this._checkLoaded();var r=this.getLayer(e);return r?void(null!==t&&void 0!==t&&this._validate(validateStyle.filter,"layers."+r.id+".filter",t)||util.deepEqual(r.filter,t)||(r.filter=util.clone(t),this._updateLayer(r))):void this.fire("error",{error:new Error("The layer '"+e+"' does not exist in the map's style and cannot be filtered.")})},t.prototype.getFilter=function(e){return util.clone(this.getLayer(e).filter)},t.prototype.setLayoutProperty=function(e,t,r){this._checkLoaded();var i=this.getLayer(e);return i?void(util.deepEqual(i.getLayoutProperty(t),r)||(i.setLayoutProperty(t,r),this._updateLayer(i))):void this.fire("error",{error:new Error("The layer '"+e+"' does not exist in the map's style and cannot be styled.")})},t.prototype.getLayoutProperty=function(e,t){return this.getLayer(e).getLayoutProperty(t)},t.prototype.setPaintProperty=function(e,t,r,i){this._checkLoaded();var o=this.getLayer(e);if(o){if(!util.deepEqual(o.getPaintProperty(t,i),r)){var s=o.isPaintValueFeatureConstant(t);o.setPaintProperty(t,r,i),!(r&&MapboxGLFunction.isFunctionDefinition(r)&&"$zoom"!==r.property&&void 0!==r.property)&&s||this._updateLayer(o),this.updateClasses(e,t)}}else this.fire("error",{error:new Error("The layer '"+e+"' does not exist in the map's style and cannot be styled.")})},t.prototype.getPaintProperty=function(e,t,r){return this.getLayer(e).getPaintProperty(t,r)},t.prototype.getTransition=function(){return util.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},t.prototype.updateClasses=function(e,t){if(this._changed=!0,e){var r=this._updatedPaintProps;r[e]||(r[e]={}),r[e][t||"all"]=!0}else this._updatedAllPaintProps=!0},t.prototype.serialize=function(){var e=this;return util.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:util.mapObject(this.sourceCaches,function(e){return e.serialize()}),layers:this._order.map(function(t){return e._layers[t].serialize()})},function(e){return void 0!==e})},t.prototype._updateLayer=function(e){this._updatedLayers[e.id]=!0,e.source&&!this._updatedSources[e.source]&&(this._updatedSources[e.source]="reload"),this._changed=!0},t.prototype._flattenRenderedFeatures=function(e){for(var t=this,r=[],i=this._order.length-1;i>=0;i--)for(var o=t._order[i],s=0,a=e;s=this.maxzoom)||"none"===this.layout.visibility},i.prototype.updatePaintTransitions=function(t,i,a,e,o){for(var n=this,r=util.extend({},this._paintDeclarations[""]),s=0;s=this.endTime)return o;var a=this.oldTransition.calculate(t,i,this.startTime),n=util.easeCubicInOut((e-this.startTime-this.delay)/this.duration);return this.interp(a,o,n)},StyleTransition.prototype._calculateTargetValue=function(t,i){if(!this.zoomTransitioned)return this.declaration.calculate(t,i);var e=t.zoom,o=this.zoomHistory.lastIntegerZoom,a=e>o?2:.5,n=this.declaration.calculate({zoom:e>o?e-1:e+1},i),r=this.declaration.calculate({zoom:e},i),s=Math.min((Date.now()-this.zoomHistory.lastIntegerZoomTime)/this.duration,1),l=Math.abs(e-o),u=interpolate(s,1,l);return void 0!==n&&void 0!==r?{from:n,fromScale:a,to:r,toScale:1,t:u}:void 0},module.exports=StyleTransition},{"../style-spec/util/interpolate":123,"../util/util":215}],159:[function(_dereq_,module,exports){"use strict";module.exports=_dereq_("../style-spec/validate_style.min"),module.exports.emitErrors=function(r,e){if(e&&e.length){for(var t=0;t-a/2;){if(--s<0)return!1;f-=e[s].dist(i),i=e[s]}f+=e[s].dist(e[s+1]),s++;for(var l=[],o=0;f
r;)o-=l.shift().angleDelta;if(o>n)return!1;s++,f+=c.dist(g)}return!0}module.exports=checkMaxAngle},{}],162:[function(_dereq_,module,exports){"use strict";function clipLine(n,x,y,o,e){for(var r=[],t=0;t=o&&w.x>=o||(P.x>=o?P=new Point(o,P.y+(w.y-P.y)*((o-P.x)/(w.x-P.x)))._round():w.x>=o&&(w=new Point(o,P.y+(w.y-P.y)*((o-P.x)/(w.x-P.x)))._round()),P.y>=e&&w.y>=e||(P.y>=e?P=new Point(P.x+(w.x-P.x)*((e-P.y)/(w.y-P.y)),e)._round():w.y>=e&&(w=new Point(P.x+(w.x-P.x)*((e-P.y)/(w.y-P.y)),e)._round()),u&&P.equals(u[u.length-1])||(u=[P],r.push(u)),u.push(w)))))}return r}var Point=_dereq_("point-geometry");module.exports=clipLine},{"point-geometry":26}],163:[function(_dereq_,module,exports){"use strict";var createStructArrayType=_dereq_("../util/struct_array"),Point=_dereq_("point-geometry"),CollisionBoxArray=createStructArrayType({members:[{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:"Float32",name:"maxScale"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"},{type:"Int16",name:"bbox0"},{type:"Int16",name:"bbox1"},{type:"Int16",name:"bbox2"},{type:"Int16",name:"bbox3"},{type:"Float32",name:"placementScale"}]});Object.defineProperty(CollisionBoxArray.prototype.StructType.prototype,"anchorPoint",{get:function(){return new Point(this.anchorPointX,this.anchorPointY)}}),module.exports=CollisionBoxArray},{"../util/struct_array":213,"point-geometry":26}],164:[function(_dereq_,module,exports){"use strict";var CollisionFeature=function(t,e,i,o,s,a,n,r,l,d,u){var h=n.top*r-l,x=n.bottom*r+l,f=n.left*r-l,m=n.right*r+l;if(this.boxStartIndex=t.length,d){var _=x-h,b=m-f;if(_>0)if(_=Math.max(10*r,_),u){var v=e[i.segment+1].sub(e[i.segment])._unit()._mult(b),c=[i.sub(v),i.add(v)];this._addLineCollisionBoxes(t,c,i,0,b,_,o,s,a)}else this._addLineCollisionBoxes(t,e,i,i.segment,b,_,o,s,a)}else t.emplaceBack(i.x,i.y,f,h,m,x,1/0,o,s,a,0,0,0,0,0);this.boxEndIndex=t.length};CollisionFeature.prototype._addLineCollisionBoxes=function(t,e,i,o,s,a,n,r,l){var d=a/2,u=Math.floor(s/d),h=-a/2,x=this.boxes,f=i,m=o+1,_=h;do{if(--m<0)return x;_-=e[m].dist(f),f=e[m]}while(_>-s/2);for(var b=e[m].dist(e[m+1]),v=0;v=e.length)return x;b=e[m].dist(e[m+1])}var g=c-_,p=e[m],B=e[m+1].sub(p)._unit()._mult(g)._add(p)._round(),y=s/2/Math.max(Math.abs(c-h)-d/2,0);t.emplaceBack(B.x,B.y,-a/2,-a/2,a/2,a/2,y,n,r,l,0,0,0,0,0)}return x},module.exports=CollisionFeature},{}],165:[function(_dereq_,module,exports){"use strict";var Point=_dereq_("point-geometry"),EXTENT=_dereq_("../data/extent"),Grid=_dereq_("grid-index"),intersectionTests=_dereq_("../util/intersection_tests"),CollisionTile=function(t,e,i){if("object"==typeof t){var r=t;i=e,t=r.angle,e=r.pitch,this.grid=new Grid(r.grid),this.ignoredGrid=new Grid(r.ignoredGrid)}else this.grid=new Grid(EXTENT,12,6),this.ignoredGrid=new Grid(EXTENT,12,0);this.minScale=.5,this.maxScale=2,this.angle=t,this.pitch=e;var a=Math.sin(t),o=Math.cos(t);if(this.rotationMatrix=[o,-a,a,o],this.reverseRotationMatrix=[o,a,-a,o],this.yStretch=1/Math.cos(e/180*Math.PI),this.yStretch=Math.pow(this.yStretch,1.3),this.collisionBoxArray=i,0===i.length){i.emplaceBack();var n=32767;i.emplaceBack(0,0,0,-n,0,n,n,0,0,0,0,0,0,0,0,0),i.emplaceBack(EXTENT,0,0,-n,0,n,n,0,0,0,0,0,0,0,0,0),i.emplaceBack(0,0,-n,0,n,0,n,0,0,0,0,0,0,0,0,0),i.emplaceBack(0,EXTENT,-n,0,n,0,n,0,0,0,0,0,0,0,0,0)}this.tempCollisionBox=i.get(0),this.edges=[i.get(1),i.get(2),i.get(3),i.get(4)]};CollisionTile.prototype.serialize=function(t){var e=this.grid.toArrayBuffer(),i=this.ignoredGrid.toArrayBuffer();return t&&(t.push(e),t.push(i)),{angle:this.angle,pitch:this.pitch,grid:e,ignoredGrid:i}},CollisionTile.prototype.placeCollisionFeature=function(t,e,i){for(var r=this,a=this.collisionBoxArray,o=this.minScale,n=this.rotationMatrix,l=this.yStretch,h=t.boxStartIndex;h=r.maxScale)return o}if(i){var S=void 0;if(r.angle){var P=r.reverseRotationMatrix,b=new Point(s.x1,s.y1).matMult(P),T=new Point(s.x2,s.y1).matMult(P),w=new Point(s.x1,s.y2).matMult(P),N=new Point(s.x2,s.y2).matMult(P);(S=r.tempCollisionBox).anchorPointX=s.anchorPoint.x,S.anchorPointY=s.anchorPoint.y,S.x1=Math.min(b.x,T.x,w.x,N.x),S.y1=Math.min(b.y,T.x,w.x,N.x),S.x2=Math.max(b.x,T.x,w.x,N.x),S.y2=Math.max(b.y,T.x,w.x,N.x),S.maxScale=s.maxScale}else S=s;for(var B=0;B=r.maxScale)return o}}}return o},CollisionTile.prototype.queryRenderedSymbols=function(t,e){var i={},r=[];if(0===t.length||0===this.grid.length&&0===this.ignoredGrid.length)return r;for(var a=this.collisionBoxArray,o=this.rotationMatrix,n=this.yStretch,l=[],h=1/0,s=1/0,x=-1/0,c=-1/0,g=0;gS.maxScale)){var T=S.anchorPoint.matMult(o),w=T.x+S.x1/e,N=T.y+S.y1/e*n,B=T.x+S.x2/e,G=T.y+S.y2/e*n,E=[new Point(w,N),new Point(B,N),new Point(B,G),new Point(w,G)];intersectionTests.polygonIntersectsPolygon(l,E)&&(i[P][b]=!0,r.push(u[v]))}}return r},CollisionTile.prototype.getPlacementScale=function(t,e,i,r,a){var o=e.x-r.x,n=e.y-r.y,l=(a.x1-i.x2)/o,h=(a.x2-i.x1)/o,s=(a.y1-i.y2)*this.yStretch/n,x=(a.y2-i.y1)*this.yStretch/n;(isNaN(l)||isNaN(h))&&(l=h=1),(isNaN(s)||isNaN(x))&&(s=x=1);var c=Math.min(Math.max(l,h),Math.max(s,x)),g=a.maxScale,y=i.maxScale;return c>g&&(c=g),c>y&&(c=y),c>t&&c>=a.placementScale&&(t=c),t},CollisionTile.prototype.insertCollisionFeature=function(t,e,i){for(var r=this,a=i?this.ignoredGrid:this.grid,o=this.collisionBoxArray,n=t.boxStartIndex;n=0&&k=0&&q=0&&p+h<=s){var M=new Anchor(k,q,A,f)._round();n&&!checkMaxAngle(e,M,l,n,a)||x.push(M)}}g+=y}return i||x.length||o||(x=resample(e,g/2,t,n,a,l,o,!0,c)),x}var interpolate=_dereq_("../style-spec/util/interpolate"),Anchor=_dereq_("../symbol/anchor"),checkMaxAngle=_dereq_("./check_max_angle");module.exports=getAnchors},{"../style-spec/util/interpolate":123,"../symbol/anchor":160,"./check_max_angle":161}],167:[function(_dereq_,module,exports){"use strict";var ShelfPack=_dereq_("@mapbox/shelf-pack"),util=_dereq_("../util/util"),GlyphAtlas=function(){this.width=128,this.height=128,this.atlas=new ShelfPack(this.width,this.height),this.index={},this.ids={},this.data=new Uint8Array(this.width*this.height)};GlyphAtlas.prototype.getGlyphs=function(){var t,i,e,h=this,r={};for(var s in h.ids)t=s.split("#"),i=t[0],e=t[1],r[i]||(r[i]=[]),r[i].push(e);return r},GlyphAtlas.prototype.getRects=function(){var t,i,e,h=this,r={};for(var s in h.ids)t=s.split("#"),i=t[0],e=t[1],r[i]||(r[i]={}),r[i][e]=h.index[s];return r},GlyphAtlas.prototype.addGlyph=function(t,i,e,h){var r=this;if(!e)return null;var s=i+"#"+e.id;if(this.index[s])return this.ids[s].indexOf(t)<0&&this.ids[s].push(t),this.index[s];if(!e.bitmap)return null;var a=e.width+2*h,E=e.height+2*h,l=a+2,T=E+2;l+=4-l%4,T+=4-T%4;var u=this.atlas.packOne(l,T);if(u||(this.resize(),u=this.atlas.packOne(l,T)),!u)return util.warnOnce("glyph bitmap overflow"),null;this.index[s]=u,this.ids[s]=[t];for(var d=this.data,p=e.bitmap,A=0;A=2048||e>=2048)){this.texture&&(this.gl&&this.gl.deleteTexture(this.texture),this.texture=null),this.width*=4,this.height*=4,this.atlas.resize(this.width,this.height);for(var h=new ArrayBuffer(this.width*this.height),r=0;r65535)return a("glyphs > 65535 not supported");void 0===this.loading[t]&&(this.loading[t]={});var l=this.loading[t];if(l[e])l[e].push(a);else{l[e]=[a];var r=glyphUrl(t,256*e+"-"+(256*e+255),this.url);ajax.getArrayBuffer(r,function(t,a){for(var i=!t&&new Glyphs(new Protobuf(a.data)),r=0;r=0^o,r=Math.abs(n),h=new Point(e.x,e.y),c=getSegmentEnd(l,a,i),g={anchor:h,end:c,index:i,minScale:getMinScaleForSegment(r,h,c),maxScale:1/0};;){if(insertSegmentGlyph(t,g,l,o),g.minScale<=e.scale)return e.scale;var u=getNextVirtualSegment(g,a,r,l);if(!u)return g.minScale;g=u}}function insertSegmentGlyph(t,e,n,a){var i=Math.atan2(e.end.y-e.anchor.y,e.end.x-e.anchor.x),o=n?i:i+Math.PI;t.push({anchorPoint:e.anchor,upsideDown:a,minScale:e.minScale,maxScale:e.maxScale,angle:(o+2*Math.PI)%(2*Math.PI)})}function getVirtualSegmentAnchor(t,e,n){var a=e.sub(t)._unit();return t.sub(a._mult(n))}function getMinScaleForSegment(t,e,n){return t/e.dist(n)}function getSegmentEnd(t,e,n){return t?e[n+1]:e[n]}function getNextVirtualSegment(t,e,n,a){for(var i=t.end,o=i,l=t.index;o.equals(i);){if(a&&l+21?2:1,this.dirty=!0}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.allocateImage=function(t,i){var r=(t/=this.pixelRatio)+2+(4-(t+2)%4),a=(i/=this.pixelRatio)+2+(4-(i+2)%4),h=this.shelfPack.packOne(r,a);return h||(util.warnOnce("SpriteAtlas out of space."),null)},i.prototype.addImage=function(t,i,e){var r,a,h;if(i instanceof window.HTMLImageElement?(r=i.width,a=i.height,i=browser.getImageData(i),h=1):(r=e.width,a=e.height,h=e.pixelRatio||1),ArrayBuffer.isView(i)&&(i=new Uint32Array(i.buffer)),!(i instanceof Uint32Array))return this.fire("error",{error:new Error("Image provided in an invalid format. Supported formats are HTMLImageElement and ArrayBufferView.")});if(this.images[t])return this.fire("error",{error:new Error("An image with this name already exists.")});var s=this.allocateImage(r,a);if(!s)return this.fire("error",{error:new Error("There is not enough space to add this image.")});var o={rect:s,width:r/h,height:a/h,sdf:!1,pixelRatio:h/this.pixelRatio};this.images[t]=o,this.copy(i,r,s,{pixelRatio:h,x:0,y:0,width:r,height:a},!1),this.fire("data",{dataType:"style"})},i.prototype.removeImage=function(t){var i=this.images[t];return delete this.images[t],i?(this.shelfPack.unref(i.rect),void this.fire("data",{dataType:"style"})):this.fire("error",{error:new Error("No image with this name exists.")})},i.prototype.getImage=function(t,i){if(this.images[t])return this.images[t];if(!this.sprite)return null;var e=this.sprite.getSpritePosition(t);if(!e.width||!e.height)return null;var r=this.allocateImage(e.width,e.height);if(!r)return null;var a={rect:r,width:e.width/e.pixelRatio,height:e.height/e.pixelRatio,sdf:e.sdf,pixelRatio:e.pixelRatio/this.pixelRatio};if(this.images[t]=a,!this.sprite.imgData)return null;var h=new Uint32Array(this.sprite.imgData.buffer);return this.copy(h,this.sprite.width,r,e,i),a},i.prototype.getPosition=function(t,i){var e=this.getImage(t,i),r=e&&e.rect;if(!r)return null;var a=e.width*e.pixelRatio,h=e.height*e.pixelRatio;return{size:[e.width,e.height],tl:[(r.x+1)/this.width,(r.y+1)/this.height],br:[(r.x+1+a)/this.width,(r.y+1+h)/this.height]}},i.prototype.allocate=function(){var t=this;if(!this.data){var i=Math.floor(this.width*this.pixelRatio),e=Math.floor(this.height*this.pixelRatio);this.data=new Uint32Array(i*e);for(var r=0;r1||(b?(clearTimeout(b),b=null,h("dblclick",t)):b=setTimeout(l,300))}function i(e){f("touchmove",e)}function c(e){f("touchend",e)}function d(e){f("touchcancel",e)}function l(){b=null}function s(e){DOM.mousePos(g,e).equals(L)&&h("click",e)}function v(e){h("dblclick",e),e.preventDefault()}function m(t){var n=e.dragRotate&&e.dragRotate.isActive();E||n?E&&(p=t):h("contextmenu",t),t.preventDefault()}function h(t,n){var o=DOM.mousePos(g,n);return e.fire(t,{lngLat:e.unproject(o),point:o,originalEvent:n})}function f(t,n){var o=DOM.touchPos(g,n),r=o.reduce(function(e,t,n,o){return e.add(t.div(o.length))},new Point(0,0));return e.fire(t,{lngLat:e.unproject(r),point:r,lngLats:o.map(function(t){return e.unproject(t)},this),points:o,originalEvent:n})}var g=e.getCanvasContainer(),p=null,E=!1,L=null,b=null;for(var q in handlers)e[q]=new handlers[q](e,t),t.interactive&&t[q]&&e[q].enable(t[q]);g.addEventListener("mouseout",n,!1),g.addEventListener("mousedown",o,!1),g.addEventListener("mouseup",r,!1),g.addEventListener("mousemove",a,!1),g.addEventListener("touchstart",u,!1),g.addEventListener("touchend",c,!1),g.addEventListener("touchmove",i,!1),g.addEventListener("touchcancel",d,!1),g.addEventListener("click",s,!1),g.addEventListener("dblclick",v,!1),g.addEventListener("contextmenu",m,!1)}},{"../util/dom":202,"./handler/box_zoom":182,"./handler/dblclick_zoom":183,"./handler/drag_pan":184,"./handler/drag_rotate":185,"./handler/keyboard":186,"./handler/scroll_zoom":187,"./handler/touch_zoom_rotate":188,"point-geometry":26}],175:[function(_dereq_,module,exports){"use strict";var util=_dereq_("../util/util"),interpolate=_dereq_("../style-spec/util/interpolate"),browser=_dereq_("../util/browser"),LngLat=_dereq_("../geo/lng_lat"),LngLatBounds=_dereq_("../geo/lng_lat_bounds"),Point=_dereq_("point-geometry"),Camera=function(t){function e(e,i){t.call(this),this.moving=!1,this.transform=e,this._bearingSnap=i.bearingSnap}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getCenter=function(){return this.transform.center},e.prototype.setCenter=function(t,e){return this.jumpTo({center:t},e)},e.prototype.panBy=function(t,e,i){return t=Point.convert(t).mult(-1),this.panTo(this.transform.center,util.extend({offset:t},e),i)},e.prototype.panTo=function(t,e,i){return this.easeTo(util.extend({center:t},e),i)},e.prototype.getZoom=function(){return this.transform.zoom},e.prototype.setZoom=function(t,e){return this.jumpTo({zoom:t},e),this},e.prototype.zoomTo=function(t,e,i){return this.easeTo(util.extend({zoom:t},e),i)},e.prototype.zoomIn=function(t,e){return this.zoomTo(this.getZoom()+1,t,e),this},e.prototype.zoomOut=function(t,e){return this.zoomTo(this.getZoom()-1,t,e),this},e.prototype.getBearing=function(){return this.transform.bearing},e.prototype.setBearing=function(t,e){return this.jumpTo({bearing:t},e),this},e.prototype.rotateTo=function(t,e,i){return this.easeTo(util.extend({bearing:t},e),i)},e.prototype.resetNorth=function(t,e){return this.rotateTo(0,util.extend({duration:1e3},t),e),this},e.prototype.snapToNorth=function(t,e){return Math.abs(this.getBearing())e?1:0}),["bottom","left","right","top"])){t=LngLatBounds.convert(t);var n=[e.padding.left-e.padding.right,e.padding.top-e.padding.bottom],r=Math.min(e.padding.right,e.padding.left),a=Math.min(e.padding.top,e.padding.bottom);e.offset=[e.offset[0]+n[0],e.offset[1]+n[1]];var s=Point.convert(e.offset),h=this.transform,p=h.project(t.getNorthWest()),u=h.project(t.getSouthEast()),c=u.sub(p),f=(h.width-2*r-2*Math.abs(s.x))/c.x,m=(h.height-2*a-2*Math.abs(s.y))/c.y;return m<0||f<0?void util.warnOnce("Map cannot fit within canvas with the given bounds, padding, and/or offset."):(e.center=h.unproject(p.add(u).div(2)),e.zoom=Math.min(h.scaleZoom(h.scale*Math.min(f,m)),e.maxZoom),e.bearing=0,e.linear?this.easeTo(e,i):this.flyTo(e,i))}util.warnOnce("options.padding must be a positive number, or an Object with keys 'bottom', 'left', 'right', 'top'")}},e.prototype.jumpTo=function(t,e){this.stop();var i=this.transform,o=!1,n=!1,r=!1;return"zoom"in t&&i.zoom!==+t.zoom&&(o=!0,i.zoom=+t.zoom),"center"in t&&(i.center=LngLat.convert(t.center)),"bearing"in t&&i.bearing!==+t.bearing&&(n=!0,i.bearing=+t.bearing),"pitch"in t&&i.pitch!==+t.pitch&&(r=!0,i.pitch=+t.pitch),this.fire("movestart",e).fire("move",e),o&&this.fire("zoomstart",e).fire("zoom",e).fire("zoomend",e),n&&this.fire("rotate",e),r&&this.fire("pitchstart",e).fire("pitch",e).fire("pitchend",e),this.fire("moveend",e)},e.prototype.easeTo=function(t,e){var i=this;this.stop(),!1===(t=util.extend({offset:[0,0],duration:500,easing:util.ease},t)).animate&&(t.duration=0),t.smoothEasing&&0!==t.duration&&(t.easing=this._smoothOutEasing(t.duration));var o=this.transform,n=this.getZoom(),r=this.getBearing(),a=this.getPitch(),s="zoom"in t?+t.zoom:n,h="bearing"in t?this._normalizeBearing(t.bearing,r):r,p="pitch"in t?+t.pitch:a,u=o.centerPoint.add(Point.convert(t.offset)),c=o.pointLocation(u),f=LngLat.convert(t.center||c);this._normalizeCenter(f);var m,g,d=o.project(c),l=o.project(f).sub(d),v=o.zoomScale(s-n);return t.around&&(m=LngLat.convert(t.around),g=o.locationPoint(m)),this.zooming=s!==n,this.rotating=r!==h,this.pitching=p!==a,this._prepareEase(e,t.noMoveStart),clearTimeout(this._onEaseEnd),this._ease(function(t){if(this.zooming&&(o.zoom=interpolate(n,s,t)),this.rotating&&(o.bearing=interpolate(r,h,t)),this.pitching&&(o.pitch=interpolate(a,p,t)),m)o.setLocationAtPoint(m,g);else{var i=o.zoomScale(o.zoom-n),c=s>n?Math.min(2,v):Math.max(.5,v),f=Math.pow(c,1-t),b=o.unproject(d.add(l.mult(t*f)).mult(i));o.setLocationAtPoint(o.renderWorldCopies?b.wrap():b,u)}this._fireMoveEvents(e)},function(){t.delayEndEvents?i._onEaseEnd=setTimeout(function(){return i._easeToEnd(e)},t.delayEndEvents):i._easeToEnd(e)},t),this},e.prototype._prepareEase=function(t,e){this.moving=!0,e||this.fire("movestart",t),this.zooming&&this.fire("zoomstart",t),this.pitching&&this.fire("pitchstart",t)},e.prototype._fireMoveEvents=function(t){this.fire("move",t),this.zooming&&this.fire("zoom",t),this.rotating&&this.fire("rotate",t),this.pitching&&this.fire("pitch",t)},e.prototype._easeToEnd=function(t){var e=this.zooming,i=this.pitching;this.moving=!1,this.zooming=!1,this.rotating=!1,this.pitching=!1,e&&this.fire("zoomend",t),i&&this.fire("pitchend",t),this.fire("moveend",t)},e.prototype.flyTo=function(t,e){function i(t){var e=(M*M-z*z+(t?-1:1)*L*L*E*E)/(2*(t?M:z)*L*E);return Math.log(Math.sqrt(e*e+1)-e)}function o(t){return(Math.exp(t)-Math.exp(-t))/2}function n(t){return(Math.exp(t)+Math.exp(-t))/2}function r(t){return o(t)/n(t)}var a=this;this.stop(),t=util.extend({offset:[0,0],speed:1.2,curve:1.42,easing:util.ease},t);var s=this.transform,h=this.getZoom(),p=this.getBearing(),u=this.getPitch(),c="zoom"in t?+t.zoom:h,f="bearing"in t?this._normalizeBearing(t.bearing,p):p,m="pitch"in t?+t.pitch:u,g=s.zoomScale(c-h),d=s.centerPoint.add(Point.convert(t.offset)),l=s.pointLocation(d),v=LngLat.convert(t.center||l);this._normalizeCenter(v);var b=s.project(l),y=s.project(v).sub(b),_=t.curve,z=Math.max(s.width,s.height),M=z/g,E=y.mag();if("minZoom"in t){var T=util.clamp(Math.min(t.minZoom,h,c),s.minZoom,s.maxZoom),x=z/s.zoomScale(T-h);_=Math.sqrt(x/E*2)}var L=_*_,j=i(0),w=function(t){return n(j)/n(j+_*t)},P=function(t){return z*((n(j)*r(j+_*t)-o(j))/L)/E},Z=(i(1)-j)/_;if(Math.abs(E)<1e-6){if(Math.abs(z-M)<1e-6)return this.easeTo(t,e);var q=M180?-360:i<-180?360:0}},e.prototype._smoothOutEasing=function(t){var e=util.ease;if(this._prevEase){var i=this._prevEase,o=(Date.now()-i.start)/i.duration,n=i.easing(o+.01)-i.easing(o),r=.27/Math.sqrt(n*n+1e-4)*.01,a=Math.sqrt(.0729-r*r);e=util.bezier(r,a,.25,1)}return this._prevEase={start:(new Date).getTime(),duration:t,easing:e},e},e}(_dereq_("../util/evented"));module.exports=Camera},{"../geo/lng_lat":62,"../geo/lng_lat_bounds":63,"../style-spec/util/interpolate":123,"../util/browser":195,"../util/evented":203,"../util/util":215,"point-geometry":26}],176:[function(_dereq_,module,exports){"use strict";var DOM=_dereq_("../../util/dom"),util=_dereq_("../../util/util"),AttributionControl=function(t){this.options=t,util.bindAll(["_updateEditLink","_updateData","_updateCompact"],this)};AttributionControl.prototype.getDefaultPosition=function(){return"bottom-right"},AttributionControl.prototype.onAdd=function(t){var i=this.options&&this.options.compact;return this._map=t,this._container=DOM.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),i&&this._container.classList.add("mapboxgl-compact"),this._updateAttributions(),this._updateEditLink(),this._map.on("sourcedata",this._updateData),this._map.on("moveend",this._updateEditLink),void 0===i&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container},AttributionControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off("sourcedata",this._updateData),this._map.off("moveend",this._updateEditLink),this._map.off("resize",this._updateCompact),this._map=void 0},AttributionControl.prototype._updateEditLink=function(){if(this._editLink||(this._editLink=this._container.querySelector(".mapboxgl-improve-map")),this._editLink){var t=this._map.getCenter();this._editLink.href="https://www.mapbox.com/map-feedback/#/"+t.lng+"/"+t.lat+"/"+Math.round(this._map.getZoom()+1)}},AttributionControl.prototype._updateData=function(t){t&&"metadata"===t.sourceDataType&&(this._updateAttributions(),this._updateEditLink())},AttributionControl.prototype._updateAttributions=function(){if(this._map.style){var t=[],i=this._map.style.sourceCaches;for(var o in i){var n=i[o].getSource();n.attribution&&t.indexOf(n.attribution)<0&&t.push(n.attribution)}t.sort(function(t,i){return t.length-i.length}),t=t.filter(function(i,o){for(var n=o+1;n=0)return!1;return!0}),this._container.innerHTML=t.join(" | "),this._editLink=null}},AttributionControl.prototype._updateCompact=function(){var t=this._map.getCanvasContainer().offsetWidth<=640;this._container.classList[t?"add":"remove"]("mapboxgl-compact")},module.exports=AttributionControl},{"../../util/dom":202,"../../util/util":215}],177:[function(_dereq_,module,exports){"use strict";var DOM=_dereq_("../../util/dom"),util=_dereq_("../../util/util"),window=_dereq_("../../util/window"),FullscreenControl=function(){this._fullscreen=!1,util.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in window.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in window.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in window.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in window.document&&(this._fullscreenchange="MSFullscreenChange")};FullscreenControl.prototype.onAdd=function(e){var n="mapboxgl-ctrl",l=this._container=DOM.create("div",n+" mapboxgl-ctrl-group"),t=this._fullscreenButton=DOM.create("button",n+"-icon "+n+"-fullscreen",this._container);return t.setAttribute("aria-label","Toggle fullscreen"),t.type="button",this._fullscreenButton.addEventListener("click",this._onClickFullscreen),this._mapContainer=e.getContainer(),window.document.addEventListener(this._fullscreenchange,this._changeIcon),l},FullscreenControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},FullscreenControl.prototype._isFullscreen=function(){return this._fullscreen},FullscreenControl.prototype._changeIcon=function(){if((window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement)===this._mapContainer!==this._fullscreen){this._fullscreen=!this._fullscreen;var n="mapboxgl-ctrl";this._fullscreenButton.classList.toggle(n+"-shrink"),this._fullscreenButton.classList.toggle(n+"-fullscreen")}},FullscreenControl.prototype._onClickFullscreen=function(){this._isFullscreen()?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._mapContainer.requestFullscreen?this._mapContainer.requestFullscreen():this._mapContainer.mozRequestFullScreen?this._mapContainer.mozRequestFullScreen():this._mapContainer.msRequestFullscreen?this._mapContainer.msRequestFullscreen():this._mapContainer.webkitRequestFullscreen&&this._mapContainer.webkitRequestFullscreen()},module.exports=FullscreenControl},{"../../util/dom":202,"../../util/util":215,"../../util/window":197}],178:[function(_dereq_,module,exports){"use strict";function checkGeolocationSupport(t){void 0!==supportsGeolocation?t(supportsGeolocation):void 0!==window.navigator.permissions?window.navigator.permissions.query({name:"geolocation"}).then(function(o){supportsGeolocation="denied"!==o.state,t(supportsGeolocation)}):(supportsGeolocation=!!window.navigator.geolocation,t(supportsGeolocation))}var supportsGeolocation,Evented=_dereq_("../../util/evented"),DOM=_dereq_("../../util/dom"),window=_dereq_("../../util/window"),util=_dereq_("../../util/util"),defaultGeoPositionOptions={enableHighAccuracy:!1,timeout:6e3},GeolocateControl=function(t){function o(o){t.call(this),this.options=o||{},util.bindAll(["_onSuccess","_onError","_finish","_setupUI"],this)}return t&&(o.__proto__=t),o.prototype=Object.create(t&&t.prototype),o.prototype.constructor=o,o.prototype.onAdd=function(t){return this._map=t,this._container=DOM.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),checkGeolocationSupport(this._setupUI),this._container},o.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map=void 0},o.prototype._onSuccess=function(t){this._map.jumpTo({center:[t.coords.longitude,t.coords.latitude],zoom:17,bearing:0,pitch:0}),this.fire("geolocate",t),this._finish()},o.prototype._onError=function(t){this.fire("error",t),this._finish()},o.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},o.prototype._setupUI=function(t){!1!==t&&(this._container.addEventListener("contextmenu",function(t){return t.preventDefault()}),this._geolocateButton=DOM.create("button","mapboxgl-ctrl-icon mapboxgl-ctrl-geolocate",this._container),this._geolocateButton.type="button",this._geolocateButton.setAttribute("aria-label","Geolocate"),this.options.watchPosition&&this._geolocateButton.setAttribute("aria-pressed",!1),this._geolocateButton.addEventListener("click",this._onClickGeolocate.bind(this)))},o.prototype._onClickGeolocate=function(){var t=util.extend(defaultGeoPositionOptions,this.options&&this.options.positionOptions||{});this.options.watchPosition?void 0!==this._geolocationWatchID?(this._geolocateButton.classList.remove("mapboxgl-watching"),this._geolocateButton.setAttribute("aria-pressed",!1),window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0):(this._geolocateButton.classList.add("mapboxgl-watching"),this._geolocateButton.setAttribute("aria-pressed",!0),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,t)):(window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,t),this._timeoutId=setTimeout(this._finish,1e4))},o}(Evented);module.exports=GeolocateControl},{"../../util/dom":202,"../../util/evented":203,"../../util/util":215,"../../util/window":197}],179:[function(_dereq_,module,exports){"use strict";var DOM=_dereq_("../../util/dom"),util=_dereq_("../../util/util"),LogoControl=function(){util.bindAll(["_updateLogo"],this)};LogoControl.prototype.onAdd=function(o){return this._map=o,this._container=DOM.create("div","mapboxgl-ctrl"),this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._container},LogoControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off("sourcedata",this._updateLogo)},LogoControl.prototype.getDefaultPosition=function(){return"bottom-left"},LogoControl.prototype._updateLogo=function(o){if(o&&"metadata"===o.sourceDataType)if(!this._container.childNodes.length&&this._logoRequired()){var t=DOM.create("a","mapboxgl-ctrl-logo");t.target="_blank",t.href="https://www.mapbox.com/",t.setAttribute("aria-label","Mapbox logo"),this._container.appendChild(t),this._map.off("data",this._updateLogo)}else this._container.childNodes.length&&!this._logoRequired()&&this.onRemove()},LogoControl.prototype._logoRequired=function(){if(this._map.style){var o=this._map.style.sourceCaches;for(var t in o)if(o[t].getSource().mapbox_logo)return!0;return!1}},module.exports=LogoControl},{"../../util/dom":202,"../../util/util":215}],180:[function(_dereq_,module,exports){"use strict";function copyMouseEvent(t){return new window.MouseEvent(t.type,{button:2,buttons:2,bubbles:!0,cancelable:!0,detail:t.detail,view:t.view,screenX:t.screenX,screenY:t.screenY,clientX:t.clientX,clientY:t.clientY,movementX:t.movementX,movementY:t.movementY,ctrlKey:t.ctrlKey,shiftKey:t.shiftKey,altKey:t.altKey,metaKey:t.metaKey})}var DOM=_dereq_("../../util/dom"),window=_dereq_("../../util/window"),util=_dereq_("../../util/util"),className="mapboxgl-ctrl",NavigationControl=function(){util.bindAll(["_rotateCompassArrow"],this)};NavigationControl.prototype._rotateCompassArrow=function(){var t="rotate("+this._map.transform.angle*(180/Math.PI)+"deg)";this._compassArrow.style.transform=t},NavigationControl.prototype.onAdd=function(t){return this._map=t,this._container=DOM.create("div",className+" "+className+"-group",t.getContainer()),this._container.addEventListener("contextmenu",this._onContextMenu.bind(this)),this._zoomInButton=this._createButton(className+"-icon "+className+"-zoom-in","Zoom In",t.zoomIn.bind(t)),this._zoomOutButton=this._createButton(className+"-icon "+className+"-zoom-out","Zoom Out",t.zoomOut.bind(t)),this._compass=this._createButton(className+"-icon "+className+"-compass","Reset North",t.resetNorth.bind(t)),this._compassArrow=DOM.create("span",className+"-compass-arrow",this._compass),this._compass.addEventListener("mousedown",this._onCompassDown.bind(this)),this._onCompassMove=this._onCompassMove.bind(this),this._onCompassUp=this._onCompassUp.bind(this),this._map.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._container},NavigationControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off("rotate",this._rotateCompassArrow),this._map=void 0},NavigationControl.prototype._onContextMenu=function(t){t.preventDefault()},NavigationControl.prototype._onCompassDown=function(t){0===t.button&&(DOM.disableDrag(),window.document.addEventListener("mousemove",this._onCompassMove),window.document.addEventListener("mouseup",this._onCompassUp),this._map.getCanvasContainer().dispatchEvent(copyMouseEvent(t)),t.stopPropagation())},NavigationControl.prototype._onCompassMove=function(t){0===t.button&&(this._map.getCanvasContainer().dispatchEvent(copyMouseEvent(t)),t.stopPropagation())},NavigationControl.prototype._onCompassUp=function(t){0===t.button&&(window.document.removeEventListener("mousemove",this._onCompassMove),window.document.removeEventListener("mouseup",this._onCompassUp),DOM.enableDrag(),this._map.getCanvasContainer().dispatchEvent(copyMouseEvent(t)),t.stopPropagation())},NavigationControl.prototype._createButton=function(t,o,e){var n=DOM.create("button",t,this._container);return n.type="button",n.setAttribute("aria-label",o),n.addEventListener("click",function(){e()}),n},module.exports=NavigationControl},{"../../util/dom":202,"../../util/util":215,"../../util/window":197}],181:[function(_dereq_,module,exports){"use strict";function updateScale(t,e,o){var n=o&&o.maxWidth||100,i=t._container.clientHeight/2,a=getDistance(t.unproject([0,i]),t.unproject([n,i]));if(o&&"imperial"===o.unit){var r=3.2808*a;r>5280?setScale(e,n,r/5280,"mi"):setScale(e,n,r,"ft")}else setScale(e,n,a,"m")}function setScale(t,e,o,n){var i=getRoundNum(o),a=i/o;"m"===n&&i>=1e3&&(i/=1e3,n="km"),t.style.width=e*a+"px",t.innerHTML=i+n}function getDistance(t,e){var n=Math.PI/180,i=t.lat*n,a=e.lat*n,r=Math.sin(i)*Math.sin(a)+Math.cos(i)*Math.cos(a)*Math.cos((e.lng-t.lng)*n);return 6371e3*Math.acos(Math.min(r,1))}function getRoundNum(t){var e=Math.pow(10,(""+Math.floor(t)).length-1),o=t/e;return o=o>=10?10:o>=5?5:o>=3?3:o>=2?2:1,e*o}var DOM=_dereq_("../../util/dom"),util=_dereq_("../../util/util"),ScaleControl=function(t){this.options=t,util.bindAll(["_onMove"],this)};ScaleControl.prototype.getDefaultPosition=function(){return"bottom-left"},ScaleControl.prototype._onMove=function(){updateScale(this._map,this._container,this.options)},ScaleControl.prototype.onAdd=function(t){return this._map=t,this._container=DOM.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",t.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},ScaleControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off("move",this._onMove),this._map=void 0},module.exports=ScaleControl},{"../../util/dom":202,"../../util/util":215}],182:[function(_dereq_,module,exports){"use strict";var DOM=_dereq_("../../util/dom"),LngLatBounds=_dereq_("../../geo/lng_lat_bounds"),util=_dereq_("../../util/util"),window=_dereq_("../../util/window"),BoxZoomHandler=function(o){this._map=o,this._el=o.getCanvasContainer(),this._container=o.getContainer(),util.bindAll(["_onMouseDown","_onMouseMove","_onMouseUp","_onKeyDown"],this)};BoxZoomHandler.prototype.isEnabled=function(){return!!this._enabled},BoxZoomHandler.prototype.isActive=function(){return!!this._active},BoxZoomHandler.prototype.enable=function(){this.isEnabled()||(this._map.dragPan&&this._map.dragPan.disable(),this._el.addEventListener("mousedown",this._onMouseDown,!1),this._map.dragPan&&this._map.dragPan.enable(),this._enabled=!0)},BoxZoomHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("mousedown",this._onMouseDown),this._enabled=!1)},BoxZoomHandler.prototype._onMouseDown=function(o){o.shiftKey&&0===o.button&&(window.document.addEventListener("mousemove",this._onMouseMove,!1),window.document.addEventListener("keydown",this._onKeyDown,!1),window.document.addEventListener("mouseup",this._onMouseUp,!1),DOM.disableDrag(),this._startPos=DOM.mousePos(this._el,o),this._active=!0)},BoxZoomHandler.prototype._onMouseMove=function(o){var e=this._startPos,t=DOM.mousePos(this._el,o);this._box||(this._box=DOM.create("div","mapboxgl-boxzoom",this._container),this._container.classList.add("mapboxgl-crosshair"),this._fireEvent("boxzoomstart",o));var n=Math.min(e.x,t.x),i=Math.max(e.x,t.x),s=Math.min(e.y,t.y),a=Math.max(e.y,t.y);DOM.setTransform(this._box,"translate("+n+"px,"+s+"px)"),this._box.style.width=i-n+"px",this._box.style.height=a-s+"px"},BoxZoomHandler.prototype._onMouseUp=function(o){if(0===o.button){var e=this._startPos,t=DOM.mousePos(this._el,o),n=(new LngLatBounds).extend(this._map.unproject(e)).extend(this._map.unproject(t));this._finish(),e.x===t.x&&e.y===t.y?this._fireEvent("boxzoomcancel",o):this._map.fitBounds(n,{linear:!0}).fire("boxzoomend",{originalEvent:o,boxZoomBounds:n})}},BoxZoomHandler.prototype._onKeyDown=function(o){27===o.keyCode&&(this._finish(),this._fireEvent("boxzoomcancel",o))},BoxZoomHandler.prototype._finish=function(){this._active=!1,window.document.removeEventListener("mousemove",this._onMouseMove,!1),window.document.removeEventListener("keydown",this._onKeyDown,!1),window.document.removeEventListener("mouseup",this._onMouseUp,!1),this._container.classList.remove("mapboxgl-crosshair"),this._box&&(this._box.parentNode.removeChild(this._box),this._box=null),DOM.enableDrag()},BoxZoomHandler.prototype._fireEvent=function(o,e){return this._map.fire(o,{originalEvent:e})},module.exports=BoxZoomHandler},{"../../geo/lng_lat_bounds":63,"../../util/dom":202,"../../util/util":215,"../../util/window":197}],183:[function(_dereq_,module,exports){"use strict";var DoubleClickZoomHandler=function(o){this._map=o,this._onDblClick=this._onDblClick.bind(this)};DoubleClickZoomHandler.prototype.isEnabled=function(){return!!this._enabled},DoubleClickZoomHandler.prototype.enable=function(){this.isEnabled()||(this._map.on("dblclick",this._onDblClick),this._enabled=!0)},DoubleClickZoomHandler.prototype.disable=function(){this.isEnabled()&&(this._map.off("dblclick",this._onDblClick),this._enabled=!1)},DoubleClickZoomHandler.prototype._onDblClick=function(o){this._map.zoomTo(this._map.getZoom()+(o.originalEvent.shiftKey?-1:1),{around:o.lngLat},o)},module.exports=DoubleClickZoomHandler},{}],184:[function(_dereq_,module,exports){"use strict";var DOM=_dereq_("../../util/dom"),util=_dereq_("../../util/util"),window=_dereq_("../../util/window"),inertiaEasing=util.bezier(0,0,.3,1),DragPanHandler=function(t){this._map=t,this._el=t.getCanvasContainer(),util.bindAll(["_onDown","_onMove","_onUp","_onTouchEnd","_onMouseUp"],this)};DragPanHandler.prototype.isEnabled=function(){return!!this._enabled},DragPanHandler.prototype.isActive=function(){return!!this._active},DragPanHandler.prototype.enable=function(){this.isEnabled()||(this._el.classList.add("mapboxgl-touch-drag-pan"),this._el.addEventListener("mousedown",this._onDown),this._el.addEventListener("touchstart",this._onDown),this._enabled=!0)},DragPanHandler.prototype.disable=function(){this.isEnabled()&&(this._el.classList.remove("mapboxgl-touch-drag-pan"),this._el.removeEventListener("mousedown",this._onDown),this._el.removeEventListener("touchstart",this._onDown),this._enabled=!1)},DragPanHandler.prototype._onDown=function(t){this._ignoreEvent(t)||this.isActive()||(t.touches?(window.document.addEventListener("touchmove",this._onMove),window.document.addEventListener("touchend",this._onTouchEnd)):(window.document.addEventListener("mousemove",this._onMove),window.document.addEventListener("mouseup",this._onMouseUp)),window.addEventListener("blur",this._onMouseUp),this._active=!1,this._startPos=this._pos=DOM.mousePos(this._el,t),this._inertia=[[Date.now(),this._pos]])},DragPanHandler.prototype._onMove=function(t){if(!this._ignoreEvent(t)){this.isActive()||(this._active=!0,this._map.moving=!0,this._fireEvent("dragstart",t),this._fireEvent("movestart",t));var e=DOM.mousePos(this._el,t),n=this._map;n.stop(),this._drainInertiaBuffer(),this._inertia.push([Date.now(),e]),n.transform.setLocationAtPoint(n.transform.pointLocation(this._pos),e),this._fireEvent("drag",t),this._fireEvent("move",t),this._pos=e,t.preventDefault()}},DragPanHandler.prototype._onUp=function(t){var e=this;if(this.isActive()){this._active=!1,this._fireEvent("dragend",t),this._drainInertiaBuffer();var n=function(){e._map.moving=!1,e._fireEvent("moveend",t)},i=this._inertia;if(i.length<2)return void n();var o=i[i.length-1],r=i[0],a=o[1].sub(r[1]),s=(o[0]-r[0])/1e3;if(0===s||o[1].equals(r[1]))return void n();var u=a.mult(.3/s),d=u.mag();d>1400&&(d=1400,u._unit()._mult(d));var h=d/750,v=u.mult(-h/2);this._map.panBy(v,{duration:1e3*h,easing:inertiaEasing,noMoveStart:!0},{originalEvent:t})}},DragPanHandler.prototype._onMouseUp=function(t){this._ignoreEvent(t)||(this._onUp(t),window.document.removeEventListener("mousemove",this._onMove),window.document.removeEventListener("mouseup",this._onMouseUp),window.removeEventListener("blur",this._onMouseUp))},DragPanHandler.prototype._onTouchEnd=function(t){this._ignoreEvent(t)||(this._onUp(t),window.document.removeEventListener("touchmove",this._onMove),window.document.removeEventListener("touchend",this._onTouchEnd))},DragPanHandler.prototype._fireEvent=function(t,e){return this._map.fire(t,{originalEvent:e})},DragPanHandler.prototype._ignoreEvent=function(t){var e=this._map;if(e.boxZoom&&e.boxZoom.isActive())return!0;if(e.dragRotate&&e.dragRotate.isActive())return!0;if(t.touches)return t.touches.length>1;if(t.ctrlKey)return!0;return"mousemove"===t.type?!1&t.buttons:t.button&&0!==t.button},DragPanHandler.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now();t.length>0&&e-t[0][0]>160;)t.shift()},module.exports=DragPanHandler},{"../../util/dom":202,"../../util/util":215,"../../util/window":197}],185:[function(_dereq_,module,exports){"use strict";var DOM=_dereq_("../../util/dom"),util=_dereq_("../../util/util"),window=_dereq_("../../util/window"),inertiaEasing=util.bezier(0,0,.25,1),DragRotateHandler=function(t,e){this._map=t,this._el=t.getCanvasContainer(),this._bearingSnap=e.bearingSnap,this._pitchWithRotate=!1!==e.pitchWithRotate,util.bindAll(["_onDown","_onMove","_onUp"],this)};DragRotateHandler.prototype.isEnabled=function(){return!!this._enabled},DragRotateHandler.prototype.isActive=function(){return!!this._active},DragRotateHandler.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener("mousedown",this._onDown),this._enabled=!0)},DragRotateHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("mousedown",this._onDown),this._enabled=!1)},DragRotateHandler.prototype._onDown=function(t){this._ignoreEvent(t)||this.isActive()||(window.document.addEventListener("mousemove",this._onMove),window.document.addEventListener("mouseup",this._onUp),window.addEventListener("blur",this._onUp),this._active=!1,this._inertia=[[Date.now(),this._map.getBearing()]],this._startPos=this._pos=DOM.mousePos(this._el,t),this._center=this._map.transform.centerPoint,t.preventDefault())},DragRotateHandler.prototype._onMove=function(t){if(!this._ignoreEvent(t)){this.isActive()||(this._active=!0,this._map.moving=!0,this._fireEvent("rotatestart",t),this._fireEvent("movestart",t),this._pitchWithRotate&&this._fireEvent("pitchstart",t));var e=this._map;e.stop();var i=this._pos,n=DOM.mousePos(this._el,t),r=.8*(i.x-n.x),a=-.5*(i.y-n.y),o=e.getBearing()-r,s=e.getPitch()-a,h=this._inertia,_=h[h.length-1];this._drainInertiaBuffer(),h.push([Date.now(),e._normalizeBearing(o,_[1])]),e.transform.bearing=o,this._pitchWithRotate&&(this._fireEvent("pitch",t),e.transform.pitch=s),this._fireEvent("rotate",t),this._fireEvent("move",t),this._pos=n}},DragRotateHandler.prototype._onUp=function(t){var e=this;if(!this._ignoreEvent(t)&&(window.document.removeEventListener("mousemove",this._onMove),window.document.removeEventListener("mouseup",this._onUp),window.removeEventListener("blur",this._onUp),this.isActive())){this._active=!1,this._fireEvent("rotateend",t),this._drainInertiaBuffer();var i=this._map,n=i.getBearing(),r=this._inertia,a=function(){Math.abs(n)180&&(u=180);var l=u/180;_+=p*u*(l/2),Math.abs(i._normalizeBearing(_,0))1;var i=t.ctrlKey?1:2,n=t.ctrlKey?0:2,r=t.button;return"undefined"!=typeof InstallTrigger&&2===t.button&&t.ctrlKey&&window.navigator.platform.toUpperCase().indexOf("MAC")>=0&&(r=0),"mousemove"===t.type?t.buttons&0===i:!this.isActive()&&r!==n},DragRotateHandler.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now();t.length>0&&e-t[0][0]>160;)t.shift()},module.exports=DragRotateHandler},{"../../util/dom":202,"../../util/util":215,"../../util/window":197}],186:[function(_dereq_,module,exports){"use strict";function easeOut(e){return e*(2-e)}var KeyboardHandler=function(e){this._map=e,this._el=e.getCanvasContainer(),this._onKeyDown=this._onKeyDown.bind(this)};KeyboardHandler.prototype.isEnabled=function(){return!!this._enabled},KeyboardHandler.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener("keydown",this._onKeyDown,!1),this._enabled=!0)},KeyboardHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("keydown",this._onKeyDown),this._enabled=!1)},KeyboardHandler.prototype._onKeyDown=function(e){if(!(e.altKey||e.ctrlKey||e.metaKey)){var t=0,a=0,n=0,r=0,i=0;switch(e.keyCode){case 61:case 107:case 171:case 187:t=1;break;case 189:case 109:case 173:t=-1;break;case 37:e.shiftKey?a=-1:(e.preventDefault(),r=-1);break;case 39:e.shiftKey?a=1:(e.preventDefault(),r=1);break;case 38:e.shiftKey?n=1:(e.preventDefault(),i=-1);break;case 40:e.shiftKey?n=-1:(i=1,e.preventDefault());break;default:return}var s=this._map,o=s.getZoom(),d={duration:300,delayEndEvents:500,easing:easeOut,zoom:t?Math.round(o)+t*(e.shiftKey?2:1):o,bearing:s.getBearing()+15*a,pitch:s.getPitch()+10*n,offset:[100*-r,100*-i],center:s.getCenter()};s.easeTo(d,{originalEvent:e})}},module.exports=KeyboardHandler},{}],187:[function(_dereq_,module,exports){"use strict";var DOM=_dereq_("../../util/dom"),util=_dereq_("../../util/util"),browser=_dereq_("../../util/browser"),window=_dereq_("../../util/window"),ua=window.navigator.userAgent.toLowerCase(),firefox=-1!==ua.indexOf("firefox"),safari=-1!==ua.indexOf("safari")&&-1===ua.indexOf("chrom"),ScrollZoomHandler=function(e){this._map=e,this._el=e.getCanvasContainer(),util.bindAll(["_onWheel","_onTimeout"],this)};ScrollZoomHandler.prototype.isEnabled=function(){return!!this._enabled},ScrollZoomHandler.prototype.enable=function(e){this.isEnabled()||(this._el.addEventListener("wheel",this._onWheel,!1),this._el.addEventListener("mousewheel",this._onWheel,!1),this._enabled=!0,this._aroundCenter=e&&"center"===e.around)},ScrollZoomHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("wheel",this._onWheel),this._el.removeEventListener("mousewheel",this._onWheel),this._enabled=!1)},ScrollZoomHandler.prototype._onWheel=function(e){var t;"wheel"===e.type?(t=e.deltaY,firefox&&e.deltaMode===window.WheelEvent.DOM_DELTA_PIXEL&&(t/=browser.devicePixelRatio),e.deltaMode===window.WheelEvent.DOM_DELTA_LINE&&(t*=40)):"mousewheel"===e.type&&(t=-e.wheelDeltaY,safari&&(t/=3));var o=browser.now(),i=o-(this._time||0);this._pos=DOM.mousePos(this._el,e),this._time=o,0!==t&&t%4.000244140625==0?this._type="wheel":0!==t&&Math.abs(t)<4?this._type="trackpad":i>400?(this._type=null,this._lastValue=t,this._timeout=setTimeout(this._onTimeout,40)):this._type||(this._type=Math.abs(i*t)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,t+=this._lastValue)),e.shiftKey&&t&&(t/=4),this._type&&this._zoom(-t,e),e.preventDefault()},ScrollZoomHandler.prototype._onTimeout=function(){this._type="wheel",this._zoom(-this._lastValue)},ScrollZoomHandler.prototype._zoom=function(e,t){if(0!==e){var o=this._map,i=2/(1+Math.exp(-Math.abs(e/100)));e<0&&0!==i&&(i=1/i);var l=o.ease?o.ease.to:o.transform.scale,s=o.transform.scaleZoom(l*i);o.zoomTo(s,{duration:"wheel"===this._type?200:0,around:this._aroundCenter?o.getCenter():o.unproject(this._pos),delayEndEvents:200,smoothEasing:!0},{originalEvent:t})}},module.exports=ScrollZoomHandler},{"../../util/browser":195,"../../util/dom":202,"../../util/util":215,"../../util/window":197}],188:[function(_dereq_,module,exports){"use strict";var DOM=_dereq_("../../util/dom"),util=_dereq_("../../util/util"),window=_dereq_("../../util/window"),inertiaEasing=util.bezier(0,0,.15,1),TouchZoomRotateHandler=function(t){this._map=t,this._el=t.getCanvasContainer(),util.bindAll(["_onStart","_onMove","_onEnd"],this)};TouchZoomRotateHandler.prototype.isEnabled=function(){return!!this._enabled},TouchZoomRotateHandler.prototype.enable=function(t){this.isEnabled()||(this._el.classList.add("mapboxgl-touch-zoom-rotate"),this._el.addEventListener("touchstart",this._onStart,!1),this._enabled=!0,this._aroundCenter=t&&"center"===t.around)},TouchZoomRotateHandler.prototype.disable=function(){this.isEnabled()&&(this._el.classList.remove("mapboxgl-touch-zoom-rotate"),this._el.removeEventListener("touchstart",this._onStart),this._enabled=!1)},TouchZoomRotateHandler.prototype.disableRotation=function(){this._rotationDisabled=!0},TouchZoomRotateHandler.prototype.enableRotation=function(){this._rotationDisabled=!1},TouchZoomRotateHandler.prototype._onStart=function(t){if(2===t.touches.length){var e=DOM.mousePos(this._el,t.touches[0]),o=DOM.mousePos(this._el,t.touches[1]);this._startVec=e.sub(o),this._startScale=this._map.transform.scale,this._startBearing=this._map.transform.bearing,this._gestureIntent=void 0,this._inertia=[],window.document.addEventListener("touchmove",this._onMove,!1),window.document.addEventListener("touchend",this._onEnd,!1)}},TouchZoomRotateHandler.prototype._onMove=function(t){if(2===t.touches.length){var e=DOM.mousePos(this._el,t.touches[0]),o=DOM.mousePos(this._el,t.touches[1]),i=e.add(o).div(2),n=e.sub(o),a=n.mag()/this._startVec.mag(),r=this._rotationDisabled?0:180*n.angleWith(this._startVec)/Math.PI,s=this._map;if(this._gestureIntent){var h={duration:0,around:s.unproject(i)};"rotate"===this._gestureIntent&&(h.bearing=this._startBearing+r),"zoom"!==this._gestureIntent&&"rotate"!==this._gestureIntent||(h.zoom=s.transform.scaleZoom(this._startScale*a)),s.stop(),this._drainInertiaBuffer(),this._inertia.push([Date.now(),a,i]),s.easeTo(h,{originalEvent:t})}else{var u=Math.abs(1-a)>.15;Math.abs(r)>4?this._gestureIntent="rotate":u&&(this._gestureIntent="zoom"),this._gestureIntent&&(this._startVec=n,this._startScale=s.transform.scale,this._startBearing=s.transform.bearing)}t.preventDefault()}},TouchZoomRotateHandler.prototype._onEnd=function(t){window.document.removeEventListener("touchmove",this._onMove),window.document.removeEventListener("touchend",this._onEnd),this._drainInertiaBuffer();var e=this._inertia,o=this._map;if(e.length<2)o.snapToNorth({},{originalEvent:t});else{var i=e[e.length-1],n=e[0],a=o.transform.scaleZoom(this._startScale*i[1]),r=o.transform.scaleZoom(this._startScale*n[1]),s=a-r,h=(i[0]-n[0])/1e3,u=i[2];if(0!==h&&a!==r){var l=.15*s/h;Math.abs(l)>2.5&&(l=l>0?2.5:-2.5);var d=1e3*Math.abs(l/(12*.15)),c=a+l*d/2e3;c<0&&(c=0),o.easeTo({zoom:c,duration:d,easing:inertiaEasing,around:this._aroundCenter?o.getCenter():o.unproject(u)},{originalEvent:t})}else o.snapToNorth({},{originalEvent:t})}},TouchZoomRotateHandler.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now();t.length>2&&e-t[0][0]>160;)t.shift()},module.exports=TouchZoomRotateHandler},{"../../util/dom":202,"../../util/util":215,"../../util/window":197}],189:[function(_dereq_,module,exports){"use strict";var util=_dereq_("../util/util"),window=_dereq_("../util/window"),Hash=function(){util.bindAll(["_onHashChange","_updateHash"],this)};Hash.prototype.addTo=function(t){return this._map=t,window.addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this},Hash.prototype.remove=function(){return window.removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),delete this._map,this},Hash.prototype._onHashChange=function(){var t=window.location.hash.replace("#","").split("/");return t.length>=3&&(this._map.jumpTo({center:[+t[2],+t[1]],zoom:+t[0],bearing:+(t[3]||0),pitch:+(t[4]||0)}),!0)},Hash.prototype._updateHash=function(){var t=this._map.getCenter(),e=this._map.getZoom(),a=this._map.getBearing(),h=this._map.getPitch(),i=Math.max(0,Math.ceil(Math.log(e)/Math.LN2)),n="#"+Math.round(100*e)/100+"/"+t.lat.toFixed(i)+"/"+t.lng.toFixed(i);(a||h)&&(n+="/"+Math.round(10*a)/10),h&&(n+="/"+Math.round(h)),window.history.replaceState("","",n)},module.exports=Hash},{"../util/util":215,"../util/window":197}],190:[function(_dereq_,module,exports){"use strict";function removeNode(t){t.parentNode&&t.parentNode.removeChild(t)}var util=_dereq_("../util/util"),browser=_dereq_("../util/browser"),window=_dereq_("../util/window"),DOM=_dereq_("../util/dom"),ajax=_dereq_("../util/ajax"),Style=_dereq_("../style/style"),AnimationLoop=_dereq_("../style/animation_loop"),Painter=_dereq_("../render/painter"),Transform=_dereq_("../geo/transform"),Hash=_dereq_("./hash"),bindHandlers=_dereq_("./bind_handlers"),Camera=_dereq_("./camera"),LngLat=_dereq_("../geo/lng_lat"),LngLatBounds=_dereq_("../geo/lng_lat_bounds"),Point=_dereq_("point-geometry"),AttributionControl=_dereq_("./control/attribution_control"),LogoControl=_dereq_("./control/logo_control"),isSupported=_dereq_("mapbox-gl-supported"),defaultOptions={center:[0,0],zoom:0,bearing:0,pitch:0,minZoom:0,maxZoom:22,interactive:!0,scrollZoom:!0,boxZoom:!0,dragRotate:!0,dragPan:!0,keyboard:!0,doubleClickZoom:!0,touchZoomRotate:!0,bearingSnap:7,hash:!1,attributionControl:!0,failIfMajorPerformanceCaveat:!1,preserveDrawingBuffer:!1,trackResize:!0,renderWorldCopies:!0,refreshExpiredTiles:!0},Map=function(t){function e(e){var o=this;if(null!=(e=util.extend({},defaultOptions,e)).minZoom&&null!=e.maxZoom&&e.minZoom>e.maxZoom)throw new Error("maxZoom must be greater than minZoom");var i=new Transform(e.minZoom,e.maxZoom,e.renderWorldCopies);if(t.call(this,i,e),this._interactive=e.interactive,this._failIfMajorPerformanceCaveat=e.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=e.preserveDrawingBuffer,this._trackResize=e.trackResize,this._bearingSnap=e.bearingSnap,this._refreshExpiredTiles=e.refreshExpiredTiles,"string"==typeof e.container){if(this._container=window.document.getElementById(e.container),!this._container)throw new Error("Container '"+e.container+"' not found.")}else this._container=e.container;this.animationLoop=new AnimationLoop,e.maxBounds&&this.setMaxBounds(e.maxBounds),util.bindAll(["_onWindowOnline","_onWindowResize","_contextLost","_contextRestored","_update","_render","_onData","_onDataLoading"],this),this._setupContainer(),this._setupPainter(),this.on("move",this._update.bind(this,!1)),this.on("zoom",this._update.bind(this,!0)),this.on("moveend",function(){o.animationLoop.set(300),o._rerender()}),void 0!==window&&(window.addEventListener("online",this._onWindowOnline,!1),window.addEventListener("resize",this._onWindowResize,!1)),bindHandlers(this,e),this._hash=e.hash&&(new Hash).addTo(this),this._hash&&this._hash._onHashChange()||this.jumpTo({center:e.center,zoom:e.zoom,bearing:e.bearing,pitch:e.pitch}),this._classes=[],this.resize(),e.classes&&this.setClasses(e.classes),e.style&&this.setStyle(e.style),e.attributionControl&&this.addControl(new AttributionControl),this.addControl(new LogoControl,e.logoPosition),this.on("style.load",function(){this.transform.unmodified&&this.jumpTo(this.style.stylesheet),this.style.update(this._classes,{transition:!1})}),this.on("data",this._onData),this.on("dataloading",this._onDataLoading)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var o={showTileBoundaries:{},showCollisionBoxes:{},showOverdrawInspector:{},repaint:{},vertices:{}};return e.prototype.addControl=function(t,e){void 0===e&&t.getDefaultPosition&&(e=t.getDefaultPosition()),void 0===e&&(e="top-right");var o=t.onAdd(this),i=this._controlPositions[e];return-1!==e.indexOf("bottom")?i.insertBefore(o,i.firstChild):i.appendChild(o),this},e.prototype.removeControl=function(t){return t.onRemove(this),this},e.prototype.addClass=function(t,e){return util.warnOnce("Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS."),this._classes.indexOf(t)>=0||""===t?this:(this._classes.push(t),this._classOptions=e,this.style&&this.style.updateClasses(),this._update(!0))},e.prototype.removeClass=function(t,e){util.warnOnce("Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.");var o=this._classes.indexOf(t);return o<0||""===t?this:(this._classes.splice(o,1),this._classOptions=e,this.style&&this.style.updateClasses(),this._update(!0))},e.prototype.setClasses=function(t,e){util.warnOnce("Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.");for(var o={},i=0;i=0},e.prototype.getClasses=function(){return util.warnOnce("Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS."),this._classes},e.prototype.resize=function(){var t=this._containerDimensions(),e=t[0],o=t[1];return this._resizeCanvas(e,o),this.transform.resize(e,o),this.painter.resize(e,o),this.fire("movestart").fire("move").fire("resize").fire("moveend")},e.prototype.getBounds=function(){var t=new LngLatBounds(this.transform.pointLocation(new Point(0,this.transform.height)),this.transform.pointLocation(new Point(this.transform.width,0)));return(this.transform.angle||this.transform.pitch)&&(t.extend(this.transform.pointLocation(new Point(this.transform.size.x,0))),t.extend(this.transform.pointLocation(new Point(0,this.transform.size.y)))),t},e.prototype.setMaxBounds=function(t){if(t){var e=LngLatBounds.convert(t);this.transform.lngRange=[e.getWest(),e.getEast()],this.transform.latRange=[e.getSouth(),e.getNorth()],this.transform._constrain(),this._update()}else null!==t&&void 0!==t||(this.transform.lngRange=[],this.transform.latRange=[],this._update());return this},e.prototype.setMinZoom=function(t){if((t=null===t||void 0===t?0:t)>=0&&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")},e.prototype.getMaxZoom=function(){return this.transform.maxZoom},e.prototype.project=function(t){return this.transform.locationPoint(LngLat.convert(t))},e.prototype.unproject=function(t){return this.transform.pointLocation(Point.convert(t))},e.prototype.on=function(e,o,i){var r=this;if(void 0===i)return t.prototype.on.call(this,e,o);var s=function(){if("mouseenter"===e||"mouseover"===e){var t=!1;return{layer:o,listener:i,delegates:{mousemove:function(s){var n=r.queryRenderedFeatures(s.point,{layers:[o]});n.length?t||(t=!0,i.call(r,util.extend({features:n},s,{type:e}))):t=!1},mouseout:function(){t=!1}}}}if("mouseleave"===e||"mouseout"===e){var a=!1;return{layer:o,listener:i,delegates:{mousemove:function(t){r.queryRenderedFeatures(t.point,{layers:[o]}).length?a=!0:a&&(a=!1,i.call(r,util.extend({},t,{type:e})))},mouseout:function(t){a&&(a=!1,i.call(r,util.extend({},t,{type:e})))}}}}var u=function(t){var e=r.queryRenderedFeatures(t.point,{layers:[o]});e.length&&i.call(r,util.extend({features:e},t))};return{layer:o,listener:i,delegates:(d={},d[e]=u,d)};var d}();this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[e]=this._delegatedListeners[e]||[],this._delegatedListeners[e].push(s);for(var n in s.delegates)r.on(n,s.delegates[n]);return this},e.prototype.off=function(e,o,i){var r=this;if(void 0===i)return t.prototype.off.call(this,e,o);if(this._delegatedListeners&&this._delegatedListeners[e])for(var s=this._delegatedListeners[e],n=0;nthis._map.transform.height-n?["bottom"]:[],this._pos.xthis._map.transform.width-e/2&&t.push("right"),t=0===t.length?"bottom":t.join("-")}var i=this._pos.add(o[t]).round(),r={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%)"},s=this._container.classList;for(var p in r)s.remove("mapboxgl-popup-anchor-"+p);s.add("mapboxgl-popup-anchor-"+t),DOM.setTransform(this._container,r[t]+" translate("+i.x+"px,"+i.y+"px)")}},o.prototype._onClickClose=function(){this.remove()},o}(Evented);module.exports=Popup},{"../geo/lng_lat":62,"../util/dom":202,"../util/evented":203,"../util/smart_wrap":212,"../util/util":215,"../util/window":197,"point-geometry":26}],193:[function(_dereq_,module,exports){"use strict";var Actor=function(t,e,a){this.target=t,this.parent=e,this.mapId=a,this.callbacks={},this.callbackID=0,this.receive=this.receive.bind(this),this.target.addEventListener("message",this.receive,!1)};Actor.prototype.send=function(t,e,a,r,s){var i=a?this.mapId+":"+this.callbackID++:null;a&&(this.callbacks[i]=a),this.target.postMessage({targetMapId:s,sourceMapId:this.mapId,type:t,id:String(i),data:e},r)},Actor.prototype.receive=function(t){var e,a=this,r=t.data,s=r.id;if(!r.targetMapId||this.mapId===r.targetMapId){var i=function(t,e,r){a.target.postMessage({sourceMapId:a.mapId,type:"",id:String(s),error:t?String(t):null,data:e},r)};if(""===r.type)e=this.callbacks[r.id],delete this.callbacks[r.id],e&&e(r.error||null,r.data);else if(void 0!==r.id&&this.parent[r.type])this.parent[r.type](r.sourceMapId,r.data,i);else if(void 0!==r.id&&this.parent.getWorkerSource){var p=r.type.split(".");this.parent.getWorkerSource(r.sourceMapId,p[0])[p[1]](r.data,i)}else this.parent[r.type](r.data)}},Actor.prototype.remove=function(){this.target.removeEventListener("message",this.receive,!1)},module.exports=Actor},{}],194:[function(_dereq_,module,exports){"use strict";function sameOrigin(e){var t=window.document.createElement("a");return t.href=e,t.protocol===window.document.location.protocol&&t.host===window.document.location.host}var window=_dereq_("./window"),AJAXError=function(e){function t(t,r){e.call(this,t),this.status=r}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(Error);exports.getJSON=function(e,t){var r=new window.XMLHttpRequest;return r.open("GET",e,!0),r.setRequestHeader("Accept","application/json"),r.onerror=function(e){t(e)},r.onload=function(){if(r.status>=200&&r.status<300&&r.response){var e;try{e=JSON.parse(r.response)}catch(e){return t(e)}t(null,e)}else t(new AJAXError(r.statusText,r.status))},r.send(),r},exports.getArrayBuffer=function(e,t){var r=new window.XMLHttpRequest;return r.open("GET",e,!0),r.responseType="arraybuffer",r.onerror=function(e){t(e)},r.onload=function(){return 0===r.response.byteLength&&200===r.status?t(new Error("http status 200 returned without content.")):void(r.status>=200&&r.status<300&&r.response?t(null,{data:r.response,cacheControl:r.getResponseHeader("Cache-Control"),expires:r.getResponseHeader("Expires")}):t(new AJAXError(r.statusText,r.status)))},r.send(),r};exports.getImage=function(e,t){return exports.getArrayBuffer(e,function(e,r){if(e)return t(e);var n=new window.Image,o=window.URL||window.webkitURL;n.onload=function(){t(null,n),o.revokeObjectURL(n.src)};var s=new window.Blob([new Uint8Array(r.data)],{type:"image/png"});n.cacheControl=r.cacheControl,n.expires=r.expires,n.src=r.data.byteLength?o.createObjectURL(s):"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII="})},exports.getVideo=function(e,t){var r=window.document.createElement("video");r.onloadstart=function(){t(null,r)};for(var n=0;n=a+n?e.call(t,1):(e.call(t,(i-a)/n),exports.frame(o)))}if(!n)return e.call(t,1),null;var r=!1,a=module.exports.now();return exports.frame(o),function(){r=!0}},exports.getImageData=function(e){var n=window.document.createElement("canvas"),t=n.getContext("2d");return n.width=e.width,n.height=e.height,t.drawImage(e,0,0,e.width,e.height),t.getImageData(0,0,e.width,e.height).data},exports.supported=_dereq_("mapbox-gl-supported"),exports.hardwareConcurrency=window.navigator.hardwareConcurrency||4,Object.defineProperty(exports,"devicePixelRatio",{get:function(){return window.devicePixelRatio}}),exports.supportsWebp=!1;var webpImgTest=window.document.createElement("img");webpImgTest.onload=function(){exports.supportsWebp=!0},webpImgTest.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA="},{"./window":197,"mapbox-gl-supported":22}],196:[function(_dereq_,module,exports){"use strict";var WebWorkify=_dereq_("webworkify"),window=_dereq_("../window"),workerURL=window.URL.createObjectURL(new WebWorkify(_dereq_("../../source/worker"),{bare:!0}));module.exports=function(){return new window.Worker(workerURL)}},{"../../source/worker":100,"../window":197,webworkify:41}],197:[function(_dereq_,module,exports){"use strict";module.exports=self},{}],198:[function(_dereq_,module,exports){"use strict";function compareAreas(e,r){return r.area-e.area}var quickselect=_dereq_("quickselect"),calculateSignedArea=_dereq_("./util").calculateSignedArea;module.exports=function(e,r){var a=e.length;if(a<=1)return[e];for(var t,u,c=[],i=0;i1)for(var n=0;n0||this._oneTimeListeners&&this._oneTimeListeners[e]&&this._oneTimeListeners[e].length>0||this._eventedParent&&this._eventedParent.listens(e)},Evented.prototype.setEventedParent=function(e,t){return this._eventedParent=e,this._eventedParentData=t,this},module.exports=Evented},{"./util":215}],204:[function(_dereq_,module,exports){"use strict";function compareMax(e,t){return t.max-e.max}function Cell(e,t,n,r){this.p=new Point(e,t),this.h=n,this.d=pointToPolygonDist(this.p,r),this.max=this.d+this.h*Math.SQRT2}function pointToPolygonDist(e,t){for(var n=!1,r=1/0,o=0;oe.y!=h.y>e.y&&e.x<(h.x-a.x)*(e.y-a.y)/(h.y-a.y)+a.x&&(n=!n),r=Math.min(r,distToSegmentSquared(e,a,h))}return(n?1:-1)*Math.sqrt(r)}function getCentroidCell(e){for(var t=0,n=0,r=0,o=e[0],i=0,l=o.length,u=l-1;ii)&&(i=a.x),(!s||a.y>l)&&(l=a.y)}var h=i-r,p=l-o,y=Math.min(h,p),x=y/2,d=new Queue(null,compareMax);if(0===y)return[r,o];for(var g=r;gm.d||!m.d)&&(m=v,n&&console.log("found best %d after %d probes",Math.round(1e4*v.d)/1e4,c)),v.max-m.d<=t||(x=v.h/2,d.push(new Cell(v.p.x-x,v.p.y-x,x,e)),d.push(new Cell(v.p.x+x,v.p.y-x,x,e)),d.push(new Cell(v.p.x-x,v.p.y+x,x,e)),d.push(new Cell(v.p.x+x,v.p.y+x,x,e)),c+=4)}return n&&(console.log("num probes: "+c),console.log("best distance: "+m.d)),m.p}},{"./intersection_tests":207,"point-geometry":26,tinyqueue:30}],205:[function(_dereq_,module,exports){"use strict";var globalWorkerPool,WorkerPool=_dereq_("./worker_pool");module.exports=function(){return globalWorkerPool||(globalWorkerPool=new WorkerPool),globalWorkerPool}},{"./worker_pool":218}],206:[function(_dereq_,module,exports){"use strict";function Glyphs(a,e){this.stacks=a.readFields(readFontstacks,[],e)}function readFontstacks(a,e,r){if(1===a){var t=r.readMessage(readFontstack,{glyphs:{}});e.push(t)}}function readFontstack(a,e,r){if(1===a)e.name=r.readString();else if(2===a)e.range=r.readString();else if(3===a){var t=r.readMessage(readGlyph,{});e.glyphs[t.id]=t}}function readGlyph(a,e,r){1===a?e.id=r.readVarint():2===a?e.bitmap=r.readBytes():3===a?e.width=r.readVarint():4===a?e.height=r.readVarint():5===a?e.left=r.readSVarint():6===a?e.top=r.readSVarint():7===a&&(e.advance=r.readVarint())}module.exports=Glyphs},{}],207:[function(_dereq_,module,exports){"use strict";function polygonIntersectsPolygon(n,t){for(var e=0;e=3)for(var u=0;u1){if(lineIntersectsLine(n,t))return!0;for(var r=0;r1?n.distSqr(e):n.distSqr(e.sub(t)._mult(o)._add(t))}function multiPolygonContainsPoint(n,t){for(var e,r,o,i=!1,l=0;lt.y!=o.y>t.y&&t.x<(o.x-r.x)*(t.y-r.y)/(o.y-r.y)+r.x&&(i=!i);return i}function polygonContainsPoint(n,t){for(var e=!1,r=0,o=n.length-1;rt.y!=l.y>t.y&&t.x<(l.x-i.x)*(t.y-i.y)/(l.y-i.y)+i.x&&(e=!e)}return e}var isCounterClockwise=_dereq_("./util").isCounterClockwise;module.exports={multiPolygonIntersectsBufferedMultiPoint:multiPolygonIntersectsBufferedMultiPoint,multiPolygonIntersectsMultiPolygon:multiPolygonIntersectsMultiPolygon,multiPolygonIntersectsBufferedMultiLine:multiPolygonIntersectsBufferedMultiLine,polygonIntersectsPolygon:polygonIntersectsPolygon,distToSegmentSquared:distToSegmentSquared}},{"./util":215}],208:[function(_dereq_,module,exports){"use strict";var unicodeBlockLookup={"Latin-1 Supplement":function(n){return n>=128&&n<=255},"Hangul Jamo":function(n){return n>=4352&&n<=4607},"Unified Canadian Aboriginal Syllabics":function(n){return n>=5120&&n<=5759},"Unified Canadian Aboriginal Syllabics Extended":function(n){return n>=6320&&n<=6399},"General Punctuation":function(n){return n>=8192&&n<=8303},"Letterlike Symbols":function(n){return n>=8448&&n<=8527},"Number Forms":function(n){return n>=8528&&n<=8591},"Miscellaneous Technical":function(n){return n>=8960&&n<=9215},"Control Pictures":function(n){return n>=9216&&n<=9279},"Optical Character Recognition":function(n){return n>=9280&&n<=9311},"Enclosed Alphanumerics":function(n){return n>=9312&&n<=9471},"Geometric Shapes":function(n){return n>=9632&&n<=9727},"Miscellaneous Symbols":function(n){return n>=9728&&n<=9983},"Miscellaneous Symbols and Arrows":function(n){return n>=11008&&n<=11263},"CJK Radicals Supplement":function(n){return n>=11904&&n<=12031},"Kangxi Radicals":function(n){return n>=12032&&n<=12255},"Ideographic Description Characters":function(n){return n>=12272&&n<=12287},"CJK Symbols and Punctuation":function(n){return n>=12288&&n<=12351},Hiragana:function(n){return n>=12352&&n<=12447},Katakana:function(n){return n>=12448&&n<=12543},Bopomofo:function(n){return n>=12544&&n<=12591},"Hangul Compatibility Jamo":function(n){return n>=12592&&n<=12687},Kanbun:function(n){return n>=12688&&n<=12703},"Bopomofo Extended":function(n){return n>=12704&&n<=12735},"CJK Strokes":function(n){return n>=12736&&n<=12783},"Katakana Phonetic Extensions":function(n){return n>=12784&&n<=12799},"Enclosed CJK Letters and Months":function(n){return n>=12800&&n<=13055},"CJK Compatibility":function(n){return n>=13056&&n<=13311},"CJK Unified Ideographs Extension A":function(n){return n>=13312&&n<=19903},"Yijing Hexagram Symbols":function(n){return n>=19904&&n<=19967},"CJK Unified Ideographs":function(n){return n>=19968&&n<=40959},"Yi Syllables":function(n){return n>=40960&&n<=42127},"Yi Radicals":function(n){return n>=42128&&n<=42191},"Hangul Jamo Extended-A":function(n){return n>=43360&&n<=43391},"Hangul Syllables":function(n){return n>=44032&&n<=55215},"Hangul Jamo Extended-B":function(n){return n>=55216&&n<=55295},"Private Use Area":function(n){return n>=57344&&n<=63743},"CJK Compatibility Ideographs":function(n){return n>=63744&&n<=64255},"Vertical Forms":function(n){return n>=65040&&n<=65055},"CJK Compatibility Forms":function(n){return n>=65072&&n<=65103},"Small Form Variants":function(n){return n>=65104&&n<=65135},"Halfwidth and Fullwidth Forms":function(n){return n>=65280&&n<=65519}};module.exports=unicodeBlockLookup},{}],209:[function(_dereq_,module,exports){"use strict";var LRUCache=function(t,e){this.max=t,this.onRemove=e,this.reset()};LRUCache.prototype.reset=function(){var t=this;for(var e in t.data)t.onRemove(t.data[e]);return this.data={},this.order=[],this},LRUCache.prototype.add=function(t,e){if(this.has(t))this.order.splice(this.order.indexOf(t),1),this.data[t]=e,this.order.push(t);else if(this.data[t]=e,this.order.push(t),this.order.length>this.max){var r=this.get(this.order[0]);r&&this.onRemove(r)}return this},LRUCache.prototype.has=function(t){return t in this.data},LRUCache.prototype.keys=function(){return this.order},LRUCache.prototype.get=function(t){if(!this.has(t))return null;var e=this.data[t];return delete this.data[t],this.order.splice(this.order.indexOf(t),1),e},LRUCache.prototype.getWithoutRemoving=function(t){return this.has(t)?this.data[t]:null},LRUCache.prototype.remove=function(t){if(!this.has(t))return this;var e=this.data[t];return delete this.data[t],this.onRemove(e),this.order.splice(this.order.indexOf(t),1),this},LRUCache.prototype.setMaxSize=function(t){var e=this;for(this.max=t;this.order.length>this.max;){var r=e.get(e.order[0]);r&&e.onRemove(r)}return this},module.exports=LRUCache},{}],210:[function(_dereq_,module,exports){"use strict";function makeAPIURL(r,e){var t=parseUrl(config.API_URL);if(r.protocol=t.protocol,r.authority=t.authority,!config.REQUIRE_ACCESS_TOKEN)return formatUrl(r);if(!(e=e||config.ACCESS_TOKEN))throw new Error("An API access token is required to use Mapbox GL. "+help);if("s"===e[0])throw new Error("Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). "+help);return r.params.push("access_token="+e),formatUrl(r)}function isMapboxURL(r){return 0===r.indexOf("mapbox:")}function replaceTempAccessToken(r){for(var e=0;e=2||512===t?"@2x":"",s=browser.supportsWebp?".webp":"$1";return o.path=o.path.replace(imageExtensionRe,""+a+s),replaceTempAccessToken(o.params),formatUrl(o)};var urlRe=/^(\w+):\/\/([^\/?]*)(\/[^?]+)?\??(.+)?/},{"./browser":195,"./config":199}],211:[function(_dereq_,module,exports){"use strict";var isChar=_dereq_("./is_char_in_unicode_block");module.exports.allowsIdeographicBreaking=function(a){for(var i=0,r=a;i=65097&&a<=65103)||isChar["CJK Compatibility Ideographs"](a)||isChar["CJK Compatibility"](a)||isChar["CJK Radicals Supplement"](a)||isChar["CJK Strokes"](a)||!(!isChar["CJK Symbols and Punctuation"](a)||a>=12296&&a<=12305||a>=12308&&a<=12319||12336===a)||isChar["CJK Unified Ideographs Extension A"](a)||isChar["CJK Unified Ideographs"](a)||isChar["Enclosed CJK Letters and Months"](a)||isChar["Hangul Compatibility Jamo"](a)||isChar["Hangul Jamo Extended-A"](a)||isChar["Hangul Jamo Extended-B"](a)||isChar["Hangul Jamo"](a)||isChar["Hangul Syllables"](a)||isChar.Hiragana(a)||isChar["Ideographic Description Characters"](a)||isChar.Kanbun(a)||isChar["Kangxi Radicals"](a)||isChar["Katakana Phonetic Extensions"](a)||isChar.Katakana(a)&&12540!==a||!(!isChar["Halfwidth and Fullwidth Forms"](a)||65288===a||65289===a||65293===a||a>=65306&&a<=65310||65339===a||65341===a||65343===a||a>=65371&&a<=65503||65507===a||a>=65512&&a<=65519)||!(!isChar["Small Form Variants"](a)||a>=65112&&a<=65118||a>=65123&&a<=65126)||isChar["Unified Canadian Aboriginal Syllabics"](a)||isChar["Unified Canadian Aboriginal Syllabics Extended"](a)||isChar["Vertical Forms"](a)||isChar["Yijing Hexagram Symbols"](a)||isChar["Yi Syllables"](a)||isChar["Yi Radicals"](a)))},exports.charHasNeutralVerticalOrientation=function(a){return!!(isChar["Latin-1 Supplement"](a)&&(167===a||169===a||174===a||177===a||188===a||189===a||190===a||215===a||247===a)||isChar["General Punctuation"](a)&&(8214===a||8224===a||8225===a||8240===a||8241===a||8251===a||8252===a||8258===a||8263===a||8264===a||8265===a||8273===a)||isChar["Letterlike Symbols"](a)||isChar["Number Forms"](a)||isChar["Miscellaneous Technical"](a)&&(a>=8960&&a<=8967||a>=8972&&a<=8991||a>=8996&&a<=9e3||9003===a||a>=9085&&a<=9114||a>=9150&&a<=9165||9167===a||a>=9169&&a<=9179||a>=9186&&a<=9215)||isChar["Control Pictures"](a)&&9251!==a||isChar["Optical Character Recognition"](a)||isChar["Enclosed Alphanumerics"](a)||isChar["Geometric Shapes"](a)||isChar["Miscellaneous Symbols"](a)&&!(a>=9754&&a<=9759)||isChar["Miscellaneous Symbols and Arrows"](a)&&(a>=11026&&a<=11055||a>=11088&&a<=11097||a>=11192&&a<=11243)||isChar["CJK Symbols and Punctuation"](a)||isChar.Katakana(a)||isChar["Private Use Area"](a)||isChar["CJK Compatibility Forms"](a)||isChar["Small Form Variants"](a)||isChar["Halfwidth and Fullwidth Forms"](a)||8734===a||8756===a||8757===a||a>=9984&&a<=10087||a>=10102&&a<=10131||65532===a||65533===a)},exports.charHasRotatedVerticalOrientation=function(a){return!(exports.charHasUprightVerticalOrientation(a)||exports.charHasNeutralVerticalOrientation(a))}},{"./is_char_in_unicode_block":208}],212:[function(_dereq_,module,exports){"use strict";var LngLat=_dereq_("../geo/lng_lat");module.exports=function(n,t,l){if(n=new LngLat(n.lng,n.lat),t){var a=new LngLat(n.lng-360,n.lat),i=new LngLat(n.lng+360,n.lat),o=l.locationPoint(n).distSqr(t);l.locationPoint(a).distSqr(t)180;){var e=l.locationPoint(n);if(e.x>=0&&e.y>=0&&e.x<=l.width&&e.y<=l.height)break;n.lng>l.center.lng?n.lng-=360:n.lng+=360}return n}},{"../geo/lng_lat":62}],213:[function(_dereq_,module,exports){"use strict";function createStructArrayType(t){var e=JSON.stringify(t);if(structArrayTypeCache[e])return structArrayTypeCache[e];var r=void 0===t.alignment?1:t.alignment,i=0,n=0,a=["Uint8"],o=t.members.map(function(t){a.indexOf(t.type)<0&&a.push(t.type);var e=sizeOf(t.type),o=i=align(i,Math.max(r,e)),s=t.components||1;return n=Math.max(n,e),i+=e*s,{name:t.name,type:t.type,components:s,offset:o}}),s=align(i,Math.max(n,r)),p=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Struct);p.prototype.alignment=r,p.prototype.size=s;for(var y=0,c=o;ythis.capacity){this.capacity=Math.max(t,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var e=this.uint8;this._refreshViews(),e&&this.uint8.set(e)}},StructArray.prototype._refreshViews=function(){for(var t=this,e=0,r=t._usedTypes;e=1)return 1;var e=r*r,t=e*r;return 4*(r<.5?t:3*(r-e)+t-.75)},exports.bezier=function(r,e,t,n){var o=new UnitBezier(r,e,t,n);return function(r){return o.solve(r)}},exports.ease=exports.bezier(.25,.1,.25,1),exports.clamp=function(r,e,t){return Math.min(t,Math.max(e,r))},exports.wrap=function(r,e,t){var n=t-e,o=((r-e)%n+n)%n+e;return o===e?t:o},exports.asyncAll=function(r,e,t){if(!r.length)return t(null,[]);var n=r.length,o=new Array(r.length),a=null;r.forEach(function(r,i){e(r,function(r,e){r&&(a=r),o[i]=e,0==--n&&t(a,o)})})},exports.values=function(r){var e=[];for(var t in r)e.push(r[t]);return e},exports.keysDifference=function(r,e){var t=[];for(var n in r)n in e||t.push(n);return t},exports.extend=function(r,e,t,n){for(var o=arguments,a=1;a=0)return!0;return!1};var warnOnceHistory={};exports.warnOnce=function(r){warnOnceHistory[r]||("undefined"!=typeof console&&console.warn(r),warnOnceHistory[r]=!0)},exports.isCounterClockwise=function(r,e,t){return(t.y-r.y)*(e.x-r.x)>(e.y-r.y)*(t.x-r.x)},exports.calculateSignedArea=function(r){for(var e=0,t=0,n=r.length,o=n-1,a=void 0,i=void 0;t0||Math.abs(e.y-t.y)>0)&&Math.abs(exports.calculateSignedArea(r))>.01},exports.sphericalToCartesian=function(r){var e=r[0],t=r[1],n=r[2];return t+=90,t*=Math.PI/180,n*=Math.PI/180,[e*Math.cos(t)*Math.sin(n),e*Math.sin(t)*Math.sin(n),e*Math.cos(n)]},exports.parseCacheControl=function(r){var e=/(?:^|(?:\s*\,\s*))([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,t={};if(r.replace(e,function(r,e,n,o){var a=n||o;return t[e]=!a||a.toLowerCase(),""}),t["max-age"]){var n=parseInt(t["max-age"],10);isNaN(n)?delete t["max-age"]:t["max-age"]=n}return t}},{"../geo/coordinate":61,"@mapbox/unitbezier":3,"point-geometry":26}],216:[function(_dereq_,module,exports){"use strict";var Feature=function(e,t,r,o){this.type="Feature",this._vectorTileFeature=e,e._z=t,e._x=r,e._y=o,this.properties=e.properties,null!=e.id&&(this.id=e.id)},prototypeAccessors={geometry:{}};prototypeAccessors.geometry.get=function(){return void 0===this._geometry&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry},prototypeAccessors.geometry.set=function(e){this._geometry=e},Feature.prototype.toJSON=function(){var e=this,t={geometry:this.geometry};for(var r in e)"_geometry"!==r&&"_vectorTileFeature"!==r&&(t[r]=e[r]);return t},Object.defineProperties(Feature.prototype,prototypeAccessors),module.exports=Feature},{}],217:[function(_dereq_,module,exports){"use strict";var scriptDetection=_dereq_("./script_detection");module.exports=function(t){for(var o="",e=0;e":"﹀","?":"︖","@":"@","[":"﹇","\\":"\","]":"﹈","^":"^",_:"︳","`":"`","{":"︷","|":"―","}":"︸","~":"~","¢":"¢","£":"£","¥":"¥","¦":"¦","¬":"¬","¯":" ̄","–":"︲","—":"︱","‘":"﹃","’":"﹄","“":"﹁","”":"﹂","…":"︙","‧":"・","₩":"₩","、":"︑","。":"︒","〈":"︿","〉":"﹀","《":"︽","》":"︾","「":"﹁","」":"﹂","『":"﹃","』":"﹄","【":"︻","】":"︼","〔":"︹","〕":"︺","〖":"︗","〗":"︘","!":"︕","(":"︵",")":"︶",",":"︐","-":"︲",".":"・",":":"︓",";":"︔","<":"︿",">":"﹀","?":"︖","[":"﹇","]":"﹈","_":"︳","{":"︷","|":"―","}":"︸","⦅":"︵","⦆":"︶","。":"︒","「":"﹁","」":"﹂"}},{"./script_detection":211}],218:[function(_dereq_,module,exports){"use strict";var WebWorker=_dereq_("./web_worker"),WorkerPool=function(){this.active={}};WorkerPool.prototype.acquire=function(r){var e=this;if(!this.workers){var o=_dereq_("../").workerCount;for(this.workers=[];this.workers.length0&&(places=json.places);var map=(0,_mapboxUtils2.default)(div,position,places),flexboxDiv=document.createElement("div"),options=makeOptionsForForm(map,position,places);flexboxDiv.appendChild(options);var newPlaceForm=(0,_newplaceMicropub2.default)(map);flexboxDiv.appendChild(newPlaceForm),document.querySelector("fieldset").insertBefore(flexboxDiv,document.querySelector(".map"))}).catch(function(error){console.error(error)})}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=addMapWithPlaces;var _alertify2=_interopRequireDefault(__webpack_require__(2)),_mapboxUtils2=_interopRequireDefault(__webpack_require__(1)),_parseLocation2=_interopRequireDefault(__webpack_require__(0)),_newplaceMicropub2=_interopRequireDefault(__webpack_require__(13)),makeOptionsForForm=function(map,position){var places=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,selectElement=document.createElement("select");selectElement.setAttribute("name","location");var noLocationOption=document.createElement("option");noLocationOption.setAttribute("selected","selected"),noLocationOption.setAttribute("value","no-location"),noLocationOption.appendChild(document.createTextNode("Don’t send location")),selectElement.appendChild(noLocationOption);var geoLocationOption=document.createElement("option");if(geoLocationOption.setAttribute("id","option-coords"),geoLocationOption.setAttribute("value","geo:"+position.coords.latitude+","+position.coords.longitude),geoLocationOption.dataset.latitude=position.coords.latitude,geoLocationOption.dataset.longitude=position.coords.longitude,geoLocationOption.appendChild(document.createTextNode("Send co-ordinates")),selectElement.appendChild(geoLocationOption),null!=places){var _iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=places[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var place=_step.value,parsedCoords=(0,_parseLocation2.default)(place.location),option=document.createElement("option");option.setAttribute("value",place.uri),option.dataset.latitude=parsedCoords.latitude,option.dataset.longitude=parsedCoords.longitude,option.appendChild(document.createTextNode(place.name)),selectElement.appendChild(option)}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{!_iteratorNormalCompletion&&_iterator.return&&_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}}return selectElement.addEventListener("change",function(){if("no-location"!==selectElement.value){var optionLatitude=selectElement[selectElement.selectedIndex].dataset.latitude,optionLongitude=selectElement[selectElement.selectedIndex].dataset.longitude;map.flyTo({center:[optionLongitude,optionLatitude]})}}),selectElement}},function(module,exports,__webpack_require__){"use strict";function getLocation(){var container=document.querySelector("fieldset"),mapDiv=document.createElement("div");mapDiv.classList.add("map"),container.appendChild(mapDiv),navigator.geolocation.getCurrentPosition(function(position){mapDiv.dataset.latitude=position.coords.latitude,mapDiv.dataset.longitude=position.coords.longitude,mapDiv.dataset.accuracy=position.coords.accuracy,(0,_nearbyPlaces2.default)(mapDiv,position)})}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=getLocation;var _nearbyPlaces2=function(obj){return obj&&obj.__esModule?obj:{default:obj}}(__webpack_require__(10))},function(module,exports,__webpack_require__){"use strict";function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var _newnoteButton2=_interopRequireDefault(__webpack_require__(6)),_persistForm2=_interopRequireDefault(__webpack_require__(7)),button=document.querySelector("#locate");(0,_newnoteButton2.default)(button),(0,_persistForm2.default)()},function(module,exports,__webpack_require__){"use strict";function makeNewPlaceForm(map){var newLocationButton=document.createElement("button");return newLocationButton.setAttribute("type","button"),newLocationButton.setAttribute("id","create-new-place"),newLocationButton.appendChild(document.createTextNode("Create New Place?")),newLocationButton.addEventListener("click",function(){var newPlaceNameDiv=document.createElement("div"),newPlaceNameLabel=document.createElement("label");newPlaceNameLabel.setAttribute("for","place-name"),newPlaceNameLabel.classList.add("place-label"),newPlaceNameLabel.appendChild(document.createTextNode("Name:"));var newPlaceNameInput=document.createElement("input");newPlaceNameInput.setAttribute("placeholder","Name"),newPlaceNameInput.setAttribute("name","place-name"),newPlaceNameInput.setAttribute("id","place-name"),newPlaceNameInput.setAttribute("type","text"),newPlaceNameDiv.appendChild(newPlaceNameLabel),newPlaceNameDiv.appendChild(newPlaceNameInput);var newPlaceDescDiv=document.createElement("div"),newPlaceDescLabel=document.createElement("label");newPlaceDescLabel.setAttribute("for","place-description"),newPlaceDescLabel.classList.add("place-label"),newPlaceDescLabel.appendChild(document.createTextNode("Description:"));var newPlaceDescInput=document.createElement("input");newPlaceDescInput.setAttribute("placeholder","Description"),newPlaceDescInput.setAttribute("name","place-description"),newPlaceDescInput.setAttribute("id","place-description"),newPlaceDescInput.setAttribute("type","text"),newPlaceDescDiv.appendChild(newPlaceDescLabel),newPlaceDescDiv.appendChild(newPlaceDescInput);var newPlaceLatitudeDiv=document.createElement("div"),newPlaceLatitudeLabel=document.createElement("label");newPlaceLatitudeLabel.setAttribute("for","place-latitude"),newPlaceLatitudeLabel.classList.add("place-label"),newPlaceLatitudeLabel.appendChild(document.createTextNode("Latitude:"));var newPlaceLatitudeInput=document.createElement("input");newPlaceLatitudeInput.setAttribute("name","place-latitude"),newPlaceLatitudeInput.setAttribute("id","place-latitude"),newPlaceLatitudeInput.setAttribute("type","text"),newPlaceLatitudeInput.value=map.getCenter().lat,newPlaceLatitudeDiv.appendChild(newPlaceLatitudeLabel),newPlaceLatitudeDiv.appendChild(newPlaceLatitudeInput);var newPlaceLongitudeDiv=document.createElement("div"),newPlaceLongitudeLabel=document.createElement("label");newPlaceLongitudeLabel.setAttribute("for","place-longitude"),newPlaceLongitudeLabel.classList.add("place-label"),newPlaceLongitudeLabel.appendChild(document.createTextNode("Longitude:"));var newPlaceLongitudeInput=document.createElement("input");newPlaceLongitudeInput.setAttribute("name","place-longitude"),newPlaceLongitudeInput.setAttribute("id","place-longitude"),newPlaceLongitudeInput.setAttribute("type","text"),newPlaceLongitudeInput.value=map.getCenter().lng,newPlaceLongitudeDiv.appendChild(newPlaceLongitudeLabel),newPlaceLongitudeDiv.appendChild(newPlaceLongitudeInput);var newPlaceSubmit=document.createElement("button");newPlaceSubmit.setAttribute("id","place-submit"),newPlaceSubmit.setAttribute("name","place-submit"),newPlaceSubmit.setAttribute("type","button"),newPlaceSubmit.appendChild(document.createTextNode("Submit New Place")),newPlaceSubmit.addEventListener("click",function(){(0,_submitPlace2.default)(map)});var form=document.querySelector("fieldset");form.appendChild(newPlaceNameDiv),form.appendChild(newPlaceDescDiv),form.appendChild(newPlaceLatitudeDiv),form.appendChild(newPlaceLongitudeDiv),form.appendChild(newPlaceSubmit)}),newLocationButton}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=makeNewPlaceForm;var _submitPlace2=function(obj){return obj&&obj.__esModule?obj:{default:obj}}(__webpack_require__(15))},,function(module,exports,__webpack_require__){"use strict";function submitNewPlace(map){var formData=new FormData;formData.append("place-name",document.querySelector("#place-name").value),formData.append("place-description",document.querySelector("#place-description").value),formData.append("place-latitude",document.querySelector("#place-latitude").value),formData.append("place-longitude",document.querySelector("#place-longitude").value),fetch("/places/new",{credentials:"same-origin",method:"post",body:formData}).then(function(response){return response.json()}).then(function(placeJson){if(!0===placeJson.error)throw new Error(placeJson.error_description);var form=document.querySelector("fieldset"),labels=document.querySelectorAll(".place-label"),_iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=labels[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var label=_step.value;form.removeChild(label.parentNode)}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{!_iteratorNormalCompletion&&_iterator.return&&_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}form.removeChild(document.querySelector("#place-submit"));var newPlaceButton=document.querySelector("#create-new-place");newPlaceButton.parentNode.removeChild(newPlaceButton);var newFeatures=map.getSource("points")._data.features.filter(function(item){return"Current Location"!=item.properties.title});newFeatures.push({type:"Feature",geometry:{type:"Point",coordinates:[placeJson.longitude,placeJson.latitude]},properties:{title:placeJson.name,icon:"circle",uri:placeJson.uri}});var newSource={type:"FeatureCollection",features:newFeatures};map.getSource("points").setData(newSource);var selectElement=document.querySelector("select"),newlyCreatedPlaceOption=document.createElement("option");newlyCreatedPlaceOption.setAttribute("value",placeJson.uri),newlyCreatedPlaceOption.appendChild(document.createTextNode(placeJson.name)),newlyCreatedPlaceOption.dataset.latitude=placeJson.latitude,newlyCreatedPlaceOption.dataset.longitude=placeJson.longitude,selectElement.appendChild(newlyCreatedPlaceOption),document.querySelector('select [value="'+placeJson.uri+'"]').selected=!0}).catch(function(placeError){_alertify2.default.reset(),_alertify2.default.error(placeError)})}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=submitNewPlace;var _alertify2=function(obj){return obj&&obj.__esModule?obj:{default:obj}}(__webpack_require__(2))},function(module,exports,__webpack_require__){!function(root,factory){module.exports=factory()}(0,function(){return function(modules){function __webpack_require__(moduleId){if(installedModules[moduleId])return installedModules[moduleId].exports;var module=installedModules[moduleId]={exports:{},id:moduleId,loaded:!1};return modules[moduleId].call(module.exports,module,module.exports,__webpack_require__),module.loaded=!0,module.exports}var installedModules={};return __webpack_require__.m=modules,__webpack_require__.c=installedModules,__webpack_require__.p="",__webpack_require__(0)}([function(module,exports,__webpack_require__){"use strict";function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(exports,"__esModule",{value:!0});var _createClass=function(){function defineProperties(target,props){for(var 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.h4+RXQXMr;PkZt5?6fU3w5YE(2@=oy5m zju8sQR3cVbirriZpKXAIV1vTe_)}mCbBM1mYrC&+MI#V(IB>eIf_mbImo7 zdXJ-lY95u%(vhoyEtxJ)T8)?@scMV1hNY)Eg%Bz*8wvTL?Gtixwq!^>Je7SJ&IZJS zCD|H)k9iWA?(xPB#>DSjpme+Q4MG>|?-+V7Jj^&Gy-J5x+Xz59*E%&6icR`pF2+m1 z^{I@!)FbxKK!{fF1vOZ~>`WEo*R&t_BE|TdjN_ptlQCJVf(qzK9Wl>9OQ4|Z)|^UV z0c(b#b?=pGK7U0baf4e8+5}xW?^0GEKTdwpsSh1hZc*}upQbEf*CrB|gW-&-kzr}1 zc-fmK*M9HNB1J{}A*yuZ#}LDaypZMpk-TqXV{Po|h!}zPOMPK=s+(pYGW%|}87 zH9skf>f8oPL@vgdc2#a{}vk+(<=rkm5rm8ZA96Xj}< z8ESygmP;uH(%sqB2_4`psdiRBwGZ!H4|{*1P1!S1CpWDlD)JP~a^2%w`Kp3Uc#I37 zZDNYMOolwn1=EEWYelNKYJ~;%+MQ`W!auBtpH#`RYb9`aW7OgkyqKRFl;|U)xfFf4 zZ4WLu3ua%_g|m=hhmW$Zpp5}d26MKGq?UY+*g%GEOkPB1?E_N0}8x0!$Gl z!sOCQ4c>cAuYUs%_JU#&BULbxcU+@olm);{*XJ&dWA~TfMca!NWTHE=`>S(E3)Q;j zZ_k~0ULm^(p!G#gp@wCN->lxH-`5`G*QkPxVxOF5q?kg8c`nvDT;a(ya4sR(sf!E)xjw+#)Rj?tU#8|lTQ|fd!4nE)`pH3y3mPA1L zs}vu8{Mc->-UI$Nrgw1Uwy+NV$;Ve*V`9@J)Se$Gp8l~oko3sgG3BeX+vY}boFgpI&N@Q1C zknTfh)Ile~TdI8~weUdt<>c8ZHRPz(Y8kOhR}lflTLK?E@>8DaRjGo*PLBxO6%V9L zv6H!jJ0_wc450@GgkcZ}1fzn5rgU$_1^dPR`30Jrc+tMvWznxOw`IjuHjuREdd4(# zp02D>aV(@kUCGF3?81k>K5jf+S51zpJ2|s^LQZ^s(4XDw7}AIVLPtNL1H0eRr|D

RMS83_T%c$Sy?Gs` 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

|S`wQgcfwV4JE0a)Cdm(h`wuy3q(`~k>4M|%i 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 iAvxcV=d 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 S5C2Bj0sRAcq>#aZb_f6wWRZ9P literal 152247 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

egCTkxv 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 {\n return string.split('-').map(([first,...rest]) => first.toUpperCase() + rest.join('').toLowerCase()).join(' ');\n};\n\nconst addMapTypeOption = (map, menu, option, checked = false) => {\n let input = document.createElement('input');\n input.setAttribute('id', option);\n input.setAttribute('type', 'radio');\n input.setAttribute('name', 'toggle');\n input.setAttribute('value', option);\n if (checked == true) {\n input.setAttribute('checked', 'checked');\n }\n input.addEventListener('click', function () {\n map.setStyle('mapbox://styles/mapbox/' + option + '-v9');\n });\n let label = document.createElement('label');\n label.setAttribute('for', option);\n label.appendChild(document.createTextNode(titlecase(option)));\n menu.appendChild(input);\n menu.appendChild(label);\n};\n\nconst makeMapMenu = (map) => {\n let mapMenu = document.createElement('div');\n mapMenu.classList.add('map-menu');\n addMapTypeOption(map, mapMenu, 'streets', true);\n addMapTypeOption(map, mapMenu, 'satellite-streets');\n return mapMenu;\n};\n\n//the main function\nexport default function addMap(div, position = null, places = null) {\n let dataLatitude = div.dataset.latitude;\n let dataLongitude = div.dataset.longitude;\n let dataId = div.dataset.id;\n let data = window['geojson'+dataId];\n if (data == null) {\n data = {\n 'type': 'FeatureCollection',\n 'features': [{\n 'type': 'Feature',\n 'geometry': {\n 'type': 'Point',\n 'coordinates': [dataLongitude, dataLatitude]\n },\n 'properties': {\n 'title': 'Current Location',\n 'icon': 'circle-stroked',\n 'uri': 'current-location'\n }\n }]\n };\n }\n if (places != null) {\n for (let place of places) {\n let placeLongitude = parseLocation(place.location).longitude;\n let placeLatitude = parseLocation(place.location).latitude;\n data.features.push({\n 'type': 'Feature',\n 'geometry': {\n 'type': 'Point',\n 'coordinates': [placeLongitude, placeLatitude]\n },\n 'properties': {\n 'title': place.name,\n 'icon': 'circle',\n 'uri': place.slug\n }\n });\n }\n }\n if (position != null) {\n dataLongitude = position.coords.longitude;\n dataLatitude = position.coords.latitude;\n }\n let map = new mapboxgl.Map({\n container: div,\n style: 'mapbox://styles/mapbox/streets-v9',\n center: [dataLongitude, dataLatitude],\n zoom: 15\n });\n if (position == null) {\n map.scrollZoom.disable();\n }\n map.addControl(new mapboxgl.NavigationControl());\n div.appendChild(makeMapMenu(map));\n map.on('load', function () {\n map.addSource('points', {\n 'type': 'geojson',\n 'data': data\n });\n map.addLayer({\n 'id': 'points',\n 'interactive': true,\n 'type': 'symbol',\n 'source': 'points',\n 'layout': {\n 'icon-image': '{icon}-15',\n 'text-field': '{title}',\n 'text-offset': [0, 1]\n }\n });\n });\n if (position != null) {\n map.on('click', function (e) {\n let features = map.queryRenderedFeatures(e.point, {\n layer: ['points']\n });\n // if there are features within the given radius of the click event,\n // fly to the location of the click event\n if (features.length) {\n // Get coordinates from the symbol and center the map on those coordinates\n map.flyTo({center: features[0].geometry.coordinates});\n selectPlaceInForm(features[0].properties.uri);\n }\n });\n }\n if (data.features && data.features.length > 1) {\n let bounds = new mapboxgl.LngLatBounds();\n for (let feature of data.features) {\n bounds.extend(feature.geometry.coordinates);\n }\n map.fitBounds(bounds, { padding: 65});\n }\n\n return map;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./mapbox-utils.js","!function(){\"use strict\";function t(){var t={parent:document.body,version:\"1.0.12\",defaultOkLabel:\"Ok\",okLabel:\"Ok\",defaultCancelLabel:\"Cancel\",cancelLabel:\"Cancel\",defaultMaxLogItems:2,maxLogItems:2,promptValue:\"\",promptPlaceholder:\"\",closeLogOnClick:!1,closeLogOnClickDefault:!1,delay:5e3,defaultDelay:5e3,logContainerClass:\"alertify-logs\",logContainerDefaultClass:\"alertify-logs\",dialogs:{buttons:{holder:\"

\",ok:\"\",cancel:\"\"},input:\"\",message:\"

{{message}}

\",log:\"
{{message}}
\"},defaultDialogs:{buttons:{holder:\"\",ok:\"\",cancel:\"\"},input:\"\",message:\"

{{message}}

\",log:\"
{{message}}
\"},build:function(t){var e=this.dialogs.buttons.ok,o=\"
\"+this.dialogs.message.replace(\"{{message}}\",t.message);return\"confirm\"!==t.type&&\"prompt\"!==t.type||(e=this.dialogs.buttons.cancel+this.dialogs.buttons.ok),\"prompt\"===t.type&&(o+=this.dialogs.input),o=(o+this.dialogs.buttons.holder+\"
\").replace(\"{{buttons}}\",e).replace(\"{{ok}}\",this.okLabel).replace(\"{{cancel}}\",this.cancelLabel)},setCloseLogOnClick:function(t){this.closeLogOnClick=!!t},close:function(t,e){this.closeLogOnClick&&t.addEventListener(\"click\",function(){o(t)}),e=e&&!isNaN(+e)?+e:this.delay,0>e?o(t):e>0&&setTimeout(function(){o(t)},e)},dialog:function(t,e,o,n){return this.setup({type:e,message:t,onOkay:o,onCancel:n})},log:function(t,e,o){var n=document.querySelectorAll(\".alertify-logs > div\");if(n){var i=n.length-this.maxLogItems;if(i>=0)for(var a=0,l=i+1;l>a;a++)this.close(n[a],-1)}this.notify(t,e,o)},setLogPosition:function(t){this.logContainerClass=\"alertify-logs \"+t},setupLogContainer:function(){var t=document.querySelector(\".alertify-logs\"),e=this.logContainerClass;return t||(t=document.createElement(\"div\"),t.className=e,this.parent.appendChild(t)),t.className!==e&&(t.className=e),t},notify:function(e,o,n){var i=this.setupLogContainer(),a=document.createElement(\"div\");a.className=o||\"default\",t.logTemplateMethod?a.innerHTML=t.logTemplateMethod(e):a.innerHTML=e,\"function\"==typeof n&&a.addEventListener(\"click\",n),i.appendChild(a),setTimeout(function(){a.className+=\" show\"},10),this.close(a,this.delay)},setup:function(t){function e(e){\"function\"!=typeof e&&(e=function(){}),i&&i.addEventListener(\"click\",function(i){t.onOkay&&\"function\"==typeof t.onOkay&&(l?t.onOkay(l.value,i):t.onOkay(i)),e(l?{buttonClicked:\"ok\",inputValue:l.value,event:i}:{buttonClicked:\"ok\",event:i}),o(n)}),a&&a.addEventListener(\"click\",function(i){t.onCancel&&\"function\"==typeof t.onCancel&&t.onCancel(i),e({buttonClicked:\"cancel\",event:i}),o(n)}),l&&l.addEventListener(\"keyup\",function(t){13===t.which&&i.click()})}var n=document.createElement(\"div\");n.className=\"alertify hide\",n.innerHTML=this.build(t);var i=n.querySelector(\".ok\"),a=n.querySelector(\".cancel\"),l=n.querySelector(\"input\"),s=n.querySelector(\"label\");l&&(\"string\"==typeof this.promptPlaceholder&&(s?s.textContent=this.promptPlaceholder:l.placeholder=this.promptPlaceholder),\"string\"==typeof this.promptValue&&(l.value=this.promptValue));var r;return\"function\"==typeof Promise?r=new Promise(e):e(),this.parent.appendChild(n),setTimeout(function(){n.classList.remove(\"hide\"),l&&t.type&&\"prompt\"===t.type?(l.select(),l.focus()):i&&i.focus()},100),r},okBtn:function(t){return this.okLabel=t,this},setDelay:function(t){return t=t||0,this.delay=isNaN(t)?this.defaultDelay:parseInt(t,10),this},cancelBtn:function(t){return this.cancelLabel=t,this},setMaxLogItems:function(t){this.maxLogItems=parseInt(t||this.defaultMaxLogItems)},theme:function(t){switch(t.toLowerCase()){case\"bootstrap\":this.dialogs.buttons.ok=\"\",this.dialogs.buttons.cancel=\"\",this.dialogs.input=\"\";break;case\"purecss\":this.dialogs.buttons.ok=\"\",this.dialogs.buttons.cancel=\"\";break;case\"mdl\":case\"material-design-light\":this.dialogs.buttons.ok=\"\",this.dialogs.buttons.cancel=\"\",this.dialogs.input=\"
\";break;case\"angular-material\":this.dialogs.buttons.ok=\"\",this.dialogs.buttons.cancel=\"\",this.dialogs.input=\"
\";break;case\"default\":default:this.dialogs.buttons.ok=this.defaultDialogs.buttons.ok,this.dialogs.buttons.cancel=this.defaultDialogs.buttons.cancel,this.dialogs.input=this.defaultDialogs.input}},reset:function(){this.parent=document.body,this.theme(\"default\"),this.okBtn(this.defaultOkLabel),this.cancelBtn(this.defaultCancelLabel),this.setMaxLogItems(),this.promptValue=\"\",this.promptPlaceholder=\"\",this.delay=this.defaultDelay,this.setCloseLogOnClick(this.closeLogOnClickDefault),this.setLogPosition(\"bottom left\"),this.logTemplateMethod=null},injectCSS:function(){if(!document.querySelector(\"#alertifyCSS\")){var t=document.getElementsByTagName(\"head\")[0],e=document.createElement(\"style\");e.type=\"text/css\",e.id=\"alertifyCSS\",e.innerHTML=\".alertify-logs>*{padding:12px 24px;color:#fff;box-shadow:0 2px 5px 0 rgba(0,0,0,.2);border-radius:1px}.alertify-logs>*,.alertify-logs>.default{background:rgba(0,0,0,.8)}.alertify-logs>.error{background:rgba(244,67,54,.8)}.alertify-logs>.success{background:rgba(76,175,80,.9)}.alertify{position:fixed;background-color:rgba(0,0,0,.3);left:0;right:0;top:0;bottom:0;width:100%;height:100%;z-index:1}.alertify.hide{opacity:0;pointer-events:none}.alertify,.alertify.show{box-sizing:border-box;transition:all .33s cubic-bezier(.25,.8,.25,1)}.alertify,.alertify *{box-sizing:border-box}.alertify .dialog{padding:12px}.alertify .alert,.alertify .dialog{width:100%;margin:0 auto;position:relative;top:50%;transform:translateY(-50%)}.alertify .alert>*,.alertify .dialog>*{width:400px;max-width:95%;margin:0 auto;text-align:center;padding:12px;background:#fff;box-shadow:0 2px 4px -1px rgba(0,0,0,.14),0 4px 5px 0 rgba(0,0,0,.098),0 1px 10px 0 rgba(0,0,0,.084)}.alertify .alert .msg,.alertify .dialog .msg{padding:12px;margin-bottom:12px;margin:0;text-align:left}.alertify .alert input:not(.form-control),.alertify .dialog input:not(.form-control){margin-bottom:15px;width:100%;font-size:100%;padding:12px}.alertify .alert input:not(.form-control):focus,.alertify .dialog input:not(.form-control):focus{outline-offset:-2px}.alertify .alert nav,.alertify .dialog nav{text-align:right}.alertify .alert nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button),.alertify .dialog nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button){background:transparent;box-sizing:border-box;color:rgba(0,0,0,.87);position:relative;outline:0;border:0;display:inline-block;-ms-flex-align:center;-ms-grid-row-align:center;align-items:center;padding:0 6px;margin:6px 8px;line-height:36px;min-height:36px;white-space:nowrap;min-width:88px;text-align:center;text-transform:uppercase;font-size:14px;text-decoration:none;cursor:pointer;border:1px solid transparent;border-radius:2px}.alertify .alert nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button):active,.alertify .alert nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button):hover,.alertify .dialog nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button):active,.alertify .dialog nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button):hover{background-color:rgba(0,0,0,.05)}.alertify .alert nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button):focus,.alertify .dialog nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button):focus{border:1px solid rgba(0,0,0,.1)}.alertify .alert nav button.btn,.alertify .dialog nav button.btn{margin:6px 4px}.alertify-logs{position:fixed;z-index:1}.alertify-logs.bottom,.alertify-logs:not(.top){bottom:16px}.alertify-logs.left,.alertify-logs:not(.right){left:16px}.alertify-logs.left>*,.alertify-logs:not(.right)>*{float:left;transform:translateZ(0);height:auto}.alertify-logs.left>.show,.alertify-logs:not(.right)>.show{left:0}.alertify-logs.left>*,.alertify-logs.left>.hide,.alertify-logs:not(.right)>*,.alertify-logs:not(.right)>.hide{left:-110%}.alertify-logs.right{right:16px}.alertify-logs.right>*{float:right;transform:translateZ(0)}.alertify-logs.right>.show{right:0;opacity:1}.alertify-logs.right>*,.alertify-logs.right>.hide{right:-110%;opacity:0}.alertify-logs.top{top:0}.alertify-logs>*{box-sizing:border-box;transition:all .4s cubic-bezier(.25,.8,.25,1);position:relative;clear:both;backface-visibility:hidden;perspective:1000;max-height:0;margin:0;padding:0;overflow:hidden;opacity:0;pointer-events:none}.alertify-logs>.show{margin-top:12px;opacity:1;max-height:1000px;padding:12px;pointer-events:auto}\",t.insertBefore(e,t.firstChild)}},removeCSS:function(){var t=document.querySelector(\"#alertifyCSS\");t&&t.parentNode&&t.parentNode.removeChild(t)}};return t.injectCSS(),{_$$alertify:t,parent:function(e){t.parent=e},reset:function(){return t.reset(),this},alert:function(e,o,n){return t.dialog(e,\"alert\",o,n)||this},confirm:function(e,o,n){return t.dialog(e,\"confirm\",o,n)||this},prompt:function(e,o,n){return t.dialog(e,\"prompt\",o,n)||this},log:function(e,o){return t.log(e,\"default\",o),this},theme:function(e){return t.theme(e),this},success:function(e,o){return t.log(e,\"success\",o),this},error:function(e,o){return t.log(e,\"error\",o),this},cancelBtn:function(e){return t.cancelBtn(e),this},okBtn:function(e){return t.okBtn(e),this},delay:function(e){return t.setDelay(e),this},placeholder:function(e){return t.promptPlaceholder=e,this},defaultValue:function(e){return t.promptValue=e,this},maxLogItems:function(e){return t.setMaxLogItems(e),this},closeLogOnClick:function(e){return t.setCloseLogOnClick(!!e),this},logPosition:function(e){return t.setLogPosition(e||\"\"),this},setLogTemplate:function(e){return t.logTemplateMethod=e,this},clearLogs:function(){return t.setupLogContainer().innerHTML=\"\",this},version:t.version}}var e=500,o=function(t){if(t){var o=function(){t&&t.parentNode&&t.parentNode.removeChild(t)};t.classList.remove(\"show\"),t.classList.add(\"hide\"),t.addEventListener(\"transitionend\",o),setTimeout(o,e)}};if(\"undefined\"!=typeof module&&module&&module.exports){module.exports=function(){return new t};var n=new t;for(var i in n)module.exports[i]=n[i]}else\"function\"==typeof define&&define.amd?define(function(){return new t}):window.alertify=new t}();\n\n\n//////////////////\n// WEBPACK FOOTER\n// /home/jonny/git/jonnybarnes.uk/~/alertify.js/dist/js/alertify.js\n// module id = 3\n// module chunks = 0","//select-place.js\n\nexport default function selectPlaceInForm(uri) {\n if (document.querySelector('select')) {\n if (uri == 'current-location') {\n document.querySelector('select [id=\"option-coords\"]').selected = true;\n } else {\n document.querySelector('select [value=\"' + uri + '\"]').selected = true;\n }\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./select-place.js","'use strict'\n\nexports.byteLength = byteLength\nexports.toByteArray = toByteArray\nexports.fromByteArray = fromByteArray\n\nvar lookup = []\nvar revLookup = []\nvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array\n\nvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'\nfor (var i = 0, len = code.length; i < len; ++i) {\n lookup[i] = code[i]\n revLookup[code.charCodeAt(i)] = i\n}\n\nrevLookup['-'.charCodeAt(0)] = 62\nrevLookup['_'.charCodeAt(0)] = 63\n\nfunction placeHoldersCount (b64) {\n var len = b64.length\n if (len % 4 > 0) {\n throw new Error('Invalid string. Length must be a multiple of 4')\n }\n\n // the number of equal signs (place holders)\n // if there are two placeholders, than the two characters before it\n // represent one byte\n // if there is only one, then the three characters before it represent 2 bytes\n // this is just a cheap hack to not do indexOf twice\n return b64[len - 2] === '=' ? 2 : b64[len - 1] === '=' ? 1 : 0\n}\n\nfunction byteLength (b64) {\n // base64 is 4/3 + up to two characters of the original data\n return b64.length * 3 / 4 - placeHoldersCount(b64)\n}\n\nfunction toByteArray (b64) {\n var i, j, l, tmp, placeHolders, arr\n var len = b64.length\n placeHolders = placeHoldersCount(b64)\n\n arr = new Arr(len * 3 / 4 - placeHolders)\n\n // if there are placeholders, only get up to the last complete 4 chars\n l = placeHolders > 0 ? len - 4 : len\n\n var L = 0\n\n for (i = 0, j = 0; i < l; i += 4, j += 3) {\n tmp = (revLookup[b64.charCodeAt(i)] << 18) | (revLookup[b64.charCodeAt(i + 1)] << 12) | (revLookup[b64.charCodeAt(i + 2)] << 6) | revLookup[b64.charCodeAt(i + 3)]\n arr[L++] = (tmp >> 16) & 0xFF\n arr[L++] = (tmp >> 8) & 0xFF\n arr[L++] = tmp & 0xFF\n }\n\n if (placeHolders === 2) {\n tmp = (revLookup[b64.charCodeAt(i)] << 2) | (revLookup[b64.charCodeAt(i + 1)] >> 4)\n arr[L++] = tmp & 0xFF\n } else if (placeHolders === 1) {\n tmp = (revLookup[b64.charCodeAt(i)] << 10) | (revLookup[b64.charCodeAt(i + 1)] << 4) | (revLookup[b64.charCodeAt(i + 2)] >> 2)\n arr[L++] = (tmp >> 8) & 0xFF\n arr[L++] = tmp & 0xFF\n }\n\n return arr\n}\n\nfunction tripletToBase64 (num) {\n return lookup[num >> 18 & 0x3F] + lookup[num >> 12 & 0x3F] + lookup[num >> 6 & 0x3F] + lookup[num & 0x3F]\n}\n\nfunction encodeChunk (uint8, start, end) {\n var tmp\n var output = []\n for (var i = start; i < end; i += 3) {\n tmp = (uint8[i] << 16) + (uint8[i + 1] << 8) + (uint8[i + 2])\n output.push(tripletToBase64(tmp))\n }\n return output.join('')\n}\n\nfunction fromByteArray (uint8) {\n var tmp\n var len = uint8.length\n var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes\n var output = ''\n var parts = []\n var maxChunkLength = 16383 // must be multiple of 3\n\n // go through the array every three bytes, we'll deal with trailing stuff later\n for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))\n }\n\n // pad the end with zeros, but make sure to not forget the extra bytes\n if (extraBytes === 1) {\n tmp = uint8[len - 1]\n output += lookup[tmp >> 2]\n output += lookup[(tmp << 4) & 0x3F]\n output += '=='\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + (uint8[len - 1])\n output += lookup[tmp >> 10]\n output += lookup[(tmp >> 4) & 0x3F]\n output += lookup[(tmp << 2) & 0x3F]\n output += '='\n }\n\n parts.push(output)\n\n return parts.join('')\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// /home/jonny/git/jonnybarnes.uk/~/base64-js/index.js\n// module id = 5\n// module chunks = 0 1","/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n/* eslint-disable no-proto */\n\n'use strict'\n\nvar base64 = require('base64-js')\nvar ieee754 = require('ieee754')\nvar isArray = require('isarray')\n\nexports.Buffer = Buffer\nexports.SlowBuffer = SlowBuffer\nexports.INSPECT_MAX_BYTES = 50\n\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Use Object implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * Due to various browser bugs, sometimes the Object implementation will be used even\n * when the browser supports typed arrays.\n *\n * Note:\n *\n * - Firefox 4-29 lacks support for adding new properties to `Uint8Array` instances,\n * See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438.\n *\n * - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function.\n *\n * - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of\n * incorrect length in some situations.\n\n * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they\n * get the Object implementation, which is slower but behaves correctly.\n */\nBuffer.TYPED_ARRAY_SUPPORT = global.TYPED_ARRAY_SUPPORT !== undefined\n ? global.TYPED_ARRAY_SUPPORT\n : typedArraySupport()\n\n/*\n * Export kMaxLength after typed array support is determined.\n */\nexports.kMaxLength = kMaxLength()\n\nfunction typedArraySupport () {\n try {\n var arr = new Uint8Array(1)\n arr.__proto__ = {__proto__: Uint8Array.prototype, foo: function () { return 42 }}\n return arr.foo() === 42 && // typed array instances can be augmented\n typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray`\n arr.subarray(1, 1).byteLength === 0 // ie10 has broken `subarray`\n } catch (e) {\n return false\n }\n}\n\nfunction kMaxLength () {\n return Buffer.TYPED_ARRAY_SUPPORT\n ? 0x7fffffff\n : 0x3fffffff\n}\n\nfunction createBuffer (that, length) {\n if (kMaxLength() < length) {\n throw new RangeError('Invalid typed array length')\n }\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n // Return an augmented `Uint8Array` instance, for best performance\n that = new Uint8Array(length)\n that.__proto__ = Buffer.prototype\n } else {\n // Fallback: Return an object instance of the Buffer class\n if (that === null) {\n that = new Buffer(length)\n }\n that.length = length\n }\n\n return that\n}\n\n/**\n * The Buffer constructor returns instances of `Uint8Array` that have their\n * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n * returns a single octet.\n *\n * The `Uint8Array` prototype remains unmodified.\n */\n\nfunction Buffer (arg, encodingOrOffset, length) {\n if (!Buffer.TYPED_ARRAY_SUPPORT && !(this instanceof Buffer)) {\n return new Buffer(arg, encodingOrOffset, length)\n }\n\n // Common case.\n if (typeof arg === 'number') {\n if (typeof encodingOrOffset === 'string') {\n throw new Error(\n 'If encoding is specified then the first argument must be a string'\n )\n }\n return allocUnsafe(this, arg)\n }\n return from(this, arg, encodingOrOffset, length)\n}\n\nBuffer.poolSize = 8192 // not used by this implementation\n\n// TODO: Legacy, not needed anymore. Remove in next major version.\nBuffer._augment = function (arr) {\n arr.__proto__ = Buffer.prototype\n return arr\n}\n\nfunction from (that, value, encodingOrOffset, length) {\n if (typeof value === 'number') {\n throw new TypeError('\"value\" argument must not be a number')\n }\n\n if (typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer) {\n return fromArrayBuffer(that, value, encodingOrOffset, length)\n }\n\n if (typeof value === 'string') {\n return fromString(that, value, encodingOrOffset)\n }\n\n return fromObject(that, value)\n}\n\n/**\n * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n * if value is a number.\n * Buffer.from(str[, encoding])\n * Buffer.from(array)\n * Buffer.from(buffer)\n * Buffer.from(arrayBuffer[, byteOffset[, length]])\n **/\nBuffer.from = function (value, encodingOrOffset, length) {\n return from(null, value, encodingOrOffset, length)\n}\n\nif (Buffer.TYPED_ARRAY_SUPPORT) {\n Buffer.prototype.__proto__ = Uint8Array.prototype\n Buffer.__proto__ = Uint8Array\n if (typeof Symbol !== 'undefined' && Symbol.species &&\n Buffer[Symbol.species] === Buffer) {\n // Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97\n Object.defineProperty(Buffer, Symbol.species, {\n value: null,\n configurable: true\n })\n }\n}\n\nfunction assertSize (size) {\n if (typeof size !== 'number') {\n throw new TypeError('\"size\" argument must be a number')\n } else if (size < 0) {\n throw new RangeError('\"size\" argument must not be negative')\n }\n}\n\nfunction alloc (that, size, fill, encoding) {\n assertSize(size)\n if (size <= 0) {\n return createBuffer(that, size)\n }\n if (fill !== undefined) {\n // Only pay attention to encoding if it's a string. This\n // prevents accidentally sending in a number that would\n // be interpretted as a start offset.\n return typeof encoding === 'string'\n ? createBuffer(that, size).fill(fill, encoding)\n : createBuffer(that, size).fill(fill)\n }\n return createBuffer(that, size)\n}\n\n/**\n * Creates a new filled Buffer instance.\n * alloc(size[, fill[, encoding]])\n **/\nBuffer.alloc = function (size, fill, encoding) {\n return alloc(null, size, fill, encoding)\n}\n\nfunction allocUnsafe (that, size) {\n assertSize(size)\n that = createBuffer(that, size < 0 ? 0 : checked(size) | 0)\n if (!Buffer.TYPED_ARRAY_SUPPORT) {\n for (var i = 0; i < size; ++i) {\n that[i] = 0\n }\n }\n return that\n}\n\n/**\n * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n * */\nBuffer.allocUnsafe = function (size) {\n return allocUnsafe(null, size)\n}\n/**\n * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n */\nBuffer.allocUnsafeSlow = function (size) {\n return allocUnsafe(null, size)\n}\n\nfunction fromString (that, string, encoding) {\n if (typeof encoding !== 'string' || encoding === '') {\n encoding = 'utf8'\n }\n\n if (!Buffer.isEncoding(encoding)) {\n throw new TypeError('\"encoding\" must be a valid string encoding')\n }\n\n var length = byteLength(string, encoding) | 0\n that = createBuffer(that, length)\n\n var actual = that.write(string, encoding)\n\n if (actual !== length) {\n // Writing a hex string, for example, that contains invalid characters will\n // cause everything after the first invalid character to be ignored. (e.g.\n // 'abxxcd' will be treated as 'ab')\n that = that.slice(0, actual)\n }\n\n return that\n}\n\nfunction fromArrayLike (that, array) {\n var length = array.length < 0 ? 0 : checked(array.length) | 0\n that = createBuffer(that, length)\n for (var i = 0; i < length; i += 1) {\n that[i] = array[i] & 255\n }\n return that\n}\n\nfunction fromArrayBuffer (that, array, byteOffset, length) {\n array.byteLength // this throws if `array` is not a valid ArrayBuffer\n\n if (byteOffset < 0 || array.byteLength < byteOffset) {\n throw new RangeError('\\'offset\\' is out of bounds')\n }\n\n if (array.byteLength < byteOffset + (length || 0)) {\n throw new RangeError('\\'length\\' is out of bounds')\n }\n\n if (byteOffset === undefined && length === undefined) {\n array = new Uint8Array(array)\n } else if (length === undefined) {\n array = new Uint8Array(array, byteOffset)\n } else {\n array = new Uint8Array(array, byteOffset, length)\n }\n\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n // Return an augmented `Uint8Array` instance, for best performance\n that = array\n that.__proto__ = Buffer.prototype\n } else {\n // Fallback: Return an object instance of the Buffer class\n that = fromArrayLike(that, array)\n }\n return that\n}\n\nfunction fromObject (that, obj) {\n if (Buffer.isBuffer(obj)) {\n var len = checked(obj.length) | 0\n that = createBuffer(that, len)\n\n if (that.length === 0) {\n return that\n }\n\n obj.copy(that, 0, 0, len)\n return that\n }\n\n if (obj) {\n if ((typeof ArrayBuffer !== 'undefined' &&\n obj.buffer instanceof ArrayBuffer) || 'length' in obj) {\n if (typeof obj.length !== 'number' || isnan(obj.length)) {\n return createBuffer(that, 0)\n }\n return fromArrayLike(that, obj)\n }\n\n if (obj.type === 'Buffer' && isArray(obj.data)) {\n return fromArrayLike(that, obj.data)\n }\n }\n\n throw new TypeError('First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.')\n}\n\nfunction checked (length) {\n // Note: cannot use `length < kMaxLength()` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= kMaxLength()) {\n throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n 'size: 0x' + kMaxLength().toString(16) + ' bytes')\n }\n return length | 0\n}\n\nfunction SlowBuffer (length) {\n if (+length != length) { // eslint-disable-line eqeqeq\n length = 0\n }\n return Buffer.alloc(+length)\n}\n\nBuffer.isBuffer = function isBuffer (b) {\n return !!(b != null && b._isBuffer)\n}\n\nBuffer.compare = function compare (a, b) {\n if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n throw new TypeError('Arguments must be Buffers')\n }\n\n if (a === b) return 0\n\n var x = a.length\n var y = b.length\n\n for (var i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i]\n y = b[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\nBuffer.isEncoding = function isEncoding (encoding) {\n switch (String(encoding).toLowerCase()) {\n case 'hex':\n case 'utf8':\n case 'utf-8':\n case 'ascii':\n case 'latin1':\n case 'binary':\n case 'base64':\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return true\n default:\n return false\n }\n}\n\nBuffer.concat = function concat (list, length) {\n if (!isArray(list)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n\n if (list.length === 0) {\n return Buffer.alloc(0)\n }\n\n var i\n if (length === undefined) {\n length = 0\n for (i = 0; i < list.length; ++i) {\n length += list[i].length\n }\n }\n\n var buffer = Buffer.allocUnsafe(length)\n var pos = 0\n for (i = 0; i < list.length; ++i) {\n var buf = list[i]\n if (!Buffer.isBuffer(buf)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n buf.copy(buffer, pos)\n pos += buf.length\n }\n return buffer\n}\n\nfunction byteLength (string, encoding) {\n if (Buffer.isBuffer(string)) {\n return string.length\n }\n if (typeof ArrayBuffer !== 'undefined' && typeof ArrayBuffer.isView === 'function' &&\n (ArrayBuffer.isView(string) || string instanceof ArrayBuffer)) {\n return string.byteLength\n }\n if (typeof string !== 'string') {\n string = '' + string\n }\n\n var len = string.length\n if (len === 0) return 0\n\n // Use a for loop to avoid recursion\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'ascii':\n case 'latin1':\n case 'binary':\n return len\n case 'utf8':\n case 'utf-8':\n case undefined:\n return utf8ToBytes(string).length\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return len * 2\n case 'hex':\n return len >>> 1\n case 'base64':\n return base64ToBytes(string).length\n default:\n if (loweredCase) return utf8ToBytes(string).length // assume utf8\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\nBuffer.byteLength = byteLength\n\nfunction slowToString (encoding, start, end) {\n var loweredCase = false\n\n // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n // property of a typed array.\n\n // This behaves neither like String nor Uint8Array in that we set start/end\n // to their upper/lower bounds if the value passed is out of range.\n // undefined is handled specially as per ECMA-262 6th Edition,\n // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n if (start === undefined || start < 0) {\n start = 0\n }\n // Return early if start > this.length. Done here to prevent potential uint32\n // coercion fail below.\n if (start > this.length) {\n return ''\n }\n\n if (end === undefined || end > this.length) {\n end = this.length\n }\n\n if (end <= 0) {\n return ''\n }\n\n // Force coersion to uint32. This will also coerce falsey/NaN values to 0.\n end >>>= 0\n start >>>= 0\n\n if (end <= start) {\n return ''\n }\n\n if (!encoding) encoding = 'utf8'\n\n while (true) {\n switch (encoding) {\n case 'hex':\n return hexSlice(this, start, end)\n\n case 'utf8':\n case 'utf-8':\n return utf8Slice(this, start, end)\n\n case 'ascii':\n return asciiSlice(this, start, end)\n\n case 'latin1':\n case 'binary':\n return latin1Slice(this, start, end)\n\n case 'base64':\n return base64Slice(this, start, end)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return utf16leSlice(this, start, end)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = (encoding + '').toLowerCase()\n loweredCase = true\n }\n }\n}\n\n// The property is used by `Buffer.isBuffer` and `is-buffer` (in Safari 5-7) to detect\n// Buffer instances.\nBuffer.prototype._isBuffer = true\n\nfunction swap (b, n, m) {\n var i = b[n]\n b[n] = b[m]\n b[m] = i\n}\n\nBuffer.prototype.swap16 = function swap16 () {\n var len = this.length\n if (len % 2 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 16-bits')\n }\n for (var i = 0; i < len; i += 2) {\n swap(this, i, i + 1)\n }\n return this\n}\n\nBuffer.prototype.swap32 = function swap32 () {\n var len = this.length\n if (len % 4 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 32-bits')\n }\n for (var i = 0; i < len; i += 4) {\n swap(this, i, i + 3)\n swap(this, i + 1, i + 2)\n }\n return this\n}\n\nBuffer.prototype.swap64 = function swap64 () {\n var len = this.length\n if (len % 8 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 64-bits')\n }\n for (var i = 0; i < len; i += 8) {\n swap(this, i, i + 7)\n swap(this, i + 1, i + 6)\n swap(this, i + 2, i + 5)\n swap(this, i + 3, i + 4)\n }\n return this\n}\n\nBuffer.prototype.toString = function toString () {\n var length = this.length | 0\n if (length === 0) return ''\n if (arguments.length === 0) return utf8Slice(this, 0, length)\n return slowToString.apply(this, arguments)\n}\n\nBuffer.prototype.equals = function equals (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return true\n return Buffer.compare(this, b) === 0\n}\n\nBuffer.prototype.inspect = function inspect () {\n var str = ''\n var max = exports.INSPECT_MAX_BYTES\n if (this.length > 0) {\n str = this.toString('hex', 0, max).match(/.{2}/g).join(' ')\n if (this.length > max) str += ' ... '\n }\n return ''\n}\n\nBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n if (!Buffer.isBuffer(target)) {\n throw new TypeError('Argument must be a Buffer')\n }\n\n if (start === undefined) {\n start = 0\n }\n if (end === undefined) {\n end = target ? target.length : 0\n }\n if (thisStart === undefined) {\n thisStart = 0\n }\n if (thisEnd === undefined) {\n thisEnd = this.length\n }\n\n if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n throw new RangeError('out of range index')\n }\n\n if (thisStart >= thisEnd && start >= end) {\n return 0\n }\n if (thisStart >= thisEnd) {\n return -1\n }\n if (start >= end) {\n return 1\n }\n\n start >>>= 0\n end >>>= 0\n thisStart >>>= 0\n thisEnd >>>= 0\n\n if (this === target) return 0\n\n var x = thisEnd - thisStart\n var y = end - start\n var len = Math.min(x, y)\n\n var thisCopy = this.slice(thisStart, thisEnd)\n var targetCopy = target.slice(start, end)\n\n for (var i = 0; i < len; ++i) {\n if (thisCopy[i] !== targetCopy[i]) {\n x = thisCopy[i]\n y = targetCopy[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\n// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n//\n// Arguments:\n// - buffer - a Buffer to search\n// - val - a string, Buffer, or number\n// - byteOffset - an index into `buffer`; will be clamped to an int32\n// - encoding - an optional encoding, relevant is val is a string\n// - dir - true for indexOf, false for lastIndexOf\nfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n // Empty buffer means no match\n if (buffer.length === 0) return -1\n\n // Normalize byteOffset\n if (typeof byteOffset === 'string') {\n encoding = byteOffset\n byteOffset = 0\n } else if (byteOffset > 0x7fffffff) {\n byteOffset = 0x7fffffff\n } else if (byteOffset < -0x80000000) {\n byteOffset = -0x80000000\n }\n byteOffset = +byteOffset // Coerce to Number.\n if (isNaN(byteOffset)) {\n // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n byteOffset = dir ? 0 : (buffer.length - 1)\n }\n\n // Normalize byteOffset: negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = buffer.length + byteOffset\n if (byteOffset >= buffer.length) {\n if (dir) return -1\n else byteOffset = buffer.length - 1\n } else if (byteOffset < 0) {\n if (dir) byteOffset = 0\n else return -1\n }\n\n // Normalize val\n if (typeof val === 'string') {\n val = Buffer.from(val, encoding)\n }\n\n // Finally, search either indexOf (if dir is true) or lastIndexOf\n if (Buffer.isBuffer(val)) {\n // Special case: looking for empty string/buffer always fails\n if (val.length === 0) {\n return -1\n }\n return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n } else if (typeof val === 'number') {\n val = val & 0xFF // Search for a byte value [0-255]\n if (Buffer.TYPED_ARRAY_SUPPORT &&\n typeof Uint8Array.prototype.indexOf === 'function') {\n if (dir) {\n return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n } else {\n return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n }\n }\n return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir)\n }\n\n throw new TypeError('val must be string, number or Buffer')\n}\n\nfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n var indexSize = 1\n var arrLength = arr.length\n var valLength = val.length\n\n if (encoding !== undefined) {\n encoding = String(encoding).toLowerCase()\n if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n encoding === 'utf16le' || encoding === 'utf-16le') {\n if (arr.length < 2 || val.length < 2) {\n return -1\n }\n indexSize = 2\n arrLength /= 2\n valLength /= 2\n byteOffset /= 2\n }\n }\n\n function read (buf, i) {\n if (indexSize === 1) {\n return buf[i]\n } else {\n return buf.readUInt16BE(i * indexSize)\n }\n }\n\n var i\n if (dir) {\n var foundIndex = -1\n for (i = byteOffset; i < arrLength; i++) {\n if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n if (foundIndex === -1) foundIndex = i\n if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n } else {\n if (foundIndex !== -1) i -= i - foundIndex\n foundIndex = -1\n }\n }\n } else {\n if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength\n for (i = byteOffset; i >= 0; i--) {\n var found = true\n for (var j = 0; j < valLength; j++) {\n if (read(arr, i + j) !== read(val, j)) {\n found = false\n break\n }\n }\n if (found) return i\n }\n }\n\n return -1\n}\n\nBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n return this.indexOf(val, byteOffset, encoding) !== -1\n}\n\nBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n}\n\nBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n}\n\nfunction hexWrite (buf, string, offset, length) {\n offset = Number(offset) || 0\n var remaining = buf.length - offset\n if (!length) {\n length = remaining\n } else {\n length = Number(length)\n if (length > remaining) {\n length = remaining\n }\n }\n\n // must be an even number of digits\n var strLen = string.length\n if (strLen % 2 !== 0) throw new TypeError('Invalid hex string')\n\n if (length > strLen / 2) {\n length = strLen / 2\n }\n for (var i = 0; i < length; ++i) {\n var parsed = parseInt(string.substr(i * 2, 2), 16)\n if (isNaN(parsed)) return i\n buf[offset + i] = parsed\n }\n return i\n}\n\nfunction utf8Write (buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nfunction asciiWrite (buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length)\n}\n\nfunction latin1Write (buf, string, offset, length) {\n return asciiWrite(buf, string, offset, length)\n}\n\nfunction base64Write (buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length)\n}\n\nfunction ucs2Write (buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nBuffer.prototype.write = function write (string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = 'utf8'\n length = this.length\n offset = 0\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === 'string') {\n encoding = offset\n length = this.length\n offset = 0\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset | 0\n if (isFinite(length)) {\n length = length | 0\n if (encoding === undefined) encoding = 'utf8'\n } else {\n encoding = length\n length = undefined\n }\n // legacy write(string, encoding, offset, length) - remove in v0.13\n } else {\n throw new Error(\n 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n )\n }\n\n var remaining = this.length - offset\n if (length === undefined || length > remaining) length = remaining\n\n if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n throw new RangeError('Attempt to write outside buffer bounds')\n }\n\n if (!encoding) encoding = 'utf8'\n\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'hex':\n return hexWrite(this, string, offset, length)\n\n case 'utf8':\n case 'utf-8':\n return utf8Write(this, string, offset, length)\n\n case 'ascii':\n return asciiWrite(this, string, offset, length)\n\n case 'latin1':\n case 'binary':\n return latin1Write(this, string, offset, length)\n\n case 'base64':\n // Warning: maxLength not taken into account in base64Write\n return base64Write(this, string, offset, length)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return ucs2Write(this, string, offset, length)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toJSON = function toJSON () {\n return {\n type: 'Buffer',\n data: Array.prototype.slice.call(this._arr || this, 0)\n }\n}\n\nfunction base64Slice (buf, start, end) {\n if (start === 0 && end === buf.length) {\n return base64.fromByteArray(buf)\n } else {\n return base64.fromByteArray(buf.slice(start, end))\n }\n}\n\nfunction utf8Slice (buf, start, end) {\n end = Math.min(buf.length, end)\n var res = []\n\n var i = start\n while (i < end) {\n var firstByte = buf[i]\n var codePoint = null\n var bytesPerSequence = (firstByte > 0xEF) ? 4\n : (firstByte > 0xDF) ? 3\n : (firstByte > 0xBF) ? 2\n : 1\n\n if (i + bytesPerSequence <= end) {\n var secondByte, thirdByte, fourthByte, tempCodePoint\n\n switch (bytesPerSequence) {\n case 1:\n if (firstByte < 0x80) {\n codePoint = firstByte\n }\n break\n case 2:\n secondByte = buf[i + 1]\n if ((secondByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n if (tempCodePoint > 0x7F) {\n codePoint = tempCodePoint\n }\n }\n break\n case 3:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n codePoint = tempCodePoint\n }\n }\n break\n case 4:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n fourthByte = buf[i + 3]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n codePoint = tempCodePoint\n }\n }\n }\n }\n\n if (codePoint === null) {\n // we did not generate a valid codePoint so insert a\n // replacement char (U+FFFD) and advance only 1 byte\n codePoint = 0xFFFD\n bytesPerSequence = 1\n } else if (codePoint > 0xFFFF) {\n // encode to utf16 (surrogate pair dance)\n codePoint -= 0x10000\n res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n codePoint = 0xDC00 | codePoint & 0x3FF\n }\n\n res.push(codePoint)\n i += bytesPerSequence\n }\n\n return decodeCodePointsArray(res)\n}\n\n// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n// the lowest limit is Chrome, with 0x10000 args.\n// We go 1 magnitude less, for safety\nvar MAX_ARGUMENTS_LENGTH = 0x1000\n\nfunction decodeCodePointsArray (codePoints) {\n var len = codePoints.length\n if (len <= MAX_ARGUMENTS_LENGTH) {\n return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n }\n\n // Decode in chunks to avoid \"call stack size exceeded\".\n var res = ''\n var i = 0\n while (i < len) {\n res += String.fromCharCode.apply(\n String,\n codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n )\n }\n return res\n}\n\nfunction asciiSlice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i] & 0x7F)\n }\n return ret\n}\n\nfunction latin1Slice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i])\n }\n return ret\n}\n\nfunction hexSlice (buf, start, end) {\n var len = buf.length\n\n if (!start || start < 0) start = 0\n if (!end || end < 0 || end > len) end = len\n\n var out = ''\n for (var i = start; i < end; ++i) {\n out += toHex(buf[i])\n }\n return out\n}\n\nfunction utf16leSlice (buf, start, end) {\n var bytes = buf.slice(start, end)\n var res = ''\n for (var i = 0; i < bytes.length; i += 2) {\n res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256)\n }\n return res\n}\n\nBuffer.prototype.slice = function slice (start, end) {\n var len = this.length\n start = ~~start\n end = end === undefined ? len : ~~end\n\n if (start < 0) {\n start += len\n if (start < 0) start = 0\n } else if (start > len) {\n start = len\n }\n\n if (end < 0) {\n end += len\n if (end < 0) end = 0\n } else if (end > len) {\n end = len\n }\n\n if (end < start) end = start\n\n var newBuf\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n newBuf = this.subarray(start, end)\n newBuf.__proto__ = Buffer.prototype\n } else {\n var sliceLen = end - start\n newBuf = new Buffer(sliceLen, undefined)\n for (var i = 0; i < sliceLen; ++i) {\n newBuf[i] = this[i + start]\n }\n }\n\n return newBuf\n}\n\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */\nfunction checkOffset (offset, ext, length) {\n if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n}\n\nBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n checkOffset(offset, byteLength, this.length)\n }\n\n var val = this[offset + --byteLength]\n var mul = 1\n while (byteLength > 0 && (mul *= 0x100)) {\n val += this[offset + --byteLength] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 1, this.length)\n return this[offset]\n}\n\nBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n return this[offset] | (this[offset + 1] << 8)\n}\n\nBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n return (this[offset] << 8) | this[offset + 1]\n}\n\nBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return ((this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16)) +\n (this[offset + 3] * 0x1000000)\n}\n\nBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] * 0x1000000) +\n ((this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n this[offset + 3])\n}\n\nBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var i = byteLength\n var mul = 1\n var val = this[offset + --i]\n while (i > 0 && (mul *= 0x100)) {\n val += this[offset + --i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 1, this.length)\n if (!(this[offset] & 0x80)) return (this[offset])\n return ((0xff - this[offset] + 1) * -1)\n}\n\nBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset] | (this[offset + 1] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset + 1] | (this[offset] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16) |\n (this[offset + 3] << 24)\n}\n\nBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] << 24) |\n (this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n (this[offset + 3])\n}\n\nBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, true, 23, 4)\n}\n\nBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, false, 23, 4)\n}\n\nBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, true, 52, 8)\n}\n\nBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, false, 52, 8)\n}\n\nfunction checkInt (buf, value, offset, ext, max, min) {\n if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n}\n\nBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n var maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n var mul = 1\n var i = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n var maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n var i = byteLength - 1\n var mul = 1\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nfunction objectWriteUInt16 (buf, value, offset, littleEndian) {\n if (value < 0) value = 0xffff + value + 1\n for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; ++i) {\n buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>>\n (littleEndian ? i : 1 - i) * 8\n }\n}\n\nBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n } else {\n objectWriteUInt16(this, value, offset, true)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n } else {\n objectWriteUInt16(this, value, offset, false)\n }\n return offset + 2\n}\n\nfunction objectWriteUInt32 (buf, value, offset, littleEndian) {\n if (value < 0) value = 0xffffffff + value + 1\n for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; ++i) {\n buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff\n }\n}\n\nBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset + 3] = (value >>> 24)\n this[offset + 2] = (value >>> 16)\n this[offset + 1] = (value >>> 8)\n this[offset] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, true)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, false)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = 0\n var mul = 1\n var sub = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = byteLength - 1\n var mul = 1\n var sub = 0\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n if (value < 0) value = 0xff + value + 1\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n } else {\n objectWriteUInt16(this, value, offset, true)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n } else {\n objectWriteUInt16(this, value, offset, false)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n this[offset + 2] = (value >>> 16)\n this[offset + 3] = (value >>> 24)\n } else {\n objectWriteUInt32(this, value, offset, true)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (value < 0) value = 0xffffffff + value + 1\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, false)\n }\n return offset + 4\n}\n\nfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n if (offset < 0) throw new RangeError('Index out of range')\n}\n\nfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n }\n ieee754.write(buf, value, offset, littleEndian, 23, 4)\n return offset + 4\n}\n\nBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert)\n}\n\nfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n }\n ieee754.write(buf, value, offset, littleEndian, 52, 8)\n return offset + 8\n}\n\nBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert)\n}\n\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\nBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n if (!start) start = 0\n if (!end && end !== 0) end = this.length\n if (targetStart >= target.length) targetStart = target.length\n if (!targetStart) targetStart = 0\n if (end > 0 && end < start) end = start\n\n // Copy 0 bytes; we're done\n if (end === start) return 0\n if (target.length === 0 || this.length === 0) return 0\n\n // Fatal error conditions\n if (targetStart < 0) {\n throw new RangeError('targetStart out of bounds')\n }\n if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds')\n if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n // Are we oob?\n if (end > this.length) end = this.length\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start\n }\n\n var len = end - start\n var i\n\n if (this === target && start < targetStart && targetStart < end) {\n // descending copy from end\n for (i = len - 1; i >= 0; --i) {\n target[i + targetStart] = this[i + start]\n }\n } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) {\n // ascending copy from start\n for (i = 0; i < len; ++i) {\n target[i + targetStart] = this[i + start]\n }\n } else {\n Uint8Array.prototype.set.call(\n target,\n this.subarray(start, start + len),\n targetStart\n )\n }\n\n return len\n}\n\n// Usage:\n// buffer.fill(number[, offset[, end]])\n// buffer.fill(buffer[, offset[, end]])\n// buffer.fill(string[, offset[, end]][, encoding])\nBuffer.prototype.fill = function fill (val, start, end, encoding) {\n // Handle string cases:\n if (typeof val === 'string') {\n if (typeof start === 'string') {\n encoding = start\n start = 0\n end = this.length\n } else if (typeof end === 'string') {\n encoding = end\n end = this.length\n }\n if (val.length === 1) {\n var code = val.charCodeAt(0)\n if (code < 256) {\n val = code\n }\n }\n if (encoding !== undefined && typeof encoding !== 'string') {\n throw new TypeError('encoding must be a string')\n }\n if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n } else if (typeof val === 'number') {\n val = val & 255\n }\n\n // Invalid ranges are not set to a default, so can range check early.\n if (start < 0 || this.length < start || this.length < end) {\n throw new RangeError('Out of range index')\n }\n\n if (end <= start) {\n return this\n }\n\n start = start >>> 0\n end = end === undefined ? this.length : end >>> 0\n\n if (!val) val = 0\n\n var i\n if (typeof val === 'number') {\n for (i = start; i < end; ++i) {\n this[i] = val\n }\n } else {\n var bytes = Buffer.isBuffer(val)\n ? val\n : utf8ToBytes(new Buffer(val, encoding).toString())\n var len = bytes.length\n for (i = 0; i < end - start; ++i) {\n this[i + start] = bytes[i % len]\n }\n }\n\n return this\n}\n\n// HELPER FUNCTIONS\n// ================\n\nvar INVALID_BASE64_RE = /[^+\\/0-9A-Za-z-_]/g\n\nfunction base64clean (str) {\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = stringtrim(str).replace(INVALID_BASE64_RE, '')\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return ''\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while (str.length % 4 !== 0) {\n str = str + '='\n }\n return str\n}\n\nfunction stringtrim (str) {\n if (str.trim) return str.trim()\n return str.replace(/^\\s+|\\s+$/g, '')\n}\n\nfunction toHex (n) {\n if (n < 16) return '0' + n.toString(16)\n return n.toString(16)\n}\n\nfunction utf8ToBytes (string, units) {\n units = units || Infinity\n var codePoint\n var length = string.length\n var leadSurrogate = null\n var bytes = []\n\n for (var i = 0; i < length; ++i) {\n codePoint = string.charCodeAt(i)\n\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (!leadSurrogate) {\n // no lead yet\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n }\n\n // valid lead\n leadSurrogate = codePoint\n\n continue\n }\n\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = codePoint\n continue\n }\n\n // valid surrogate pair\n codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n } else if (leadSurrogate) {\n // valid bmp char, but last char was a lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n }\n\n leadSurrogate = null\n\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break\n bytes.push(codePoint)\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break\n bytes.push(\n codePoint >> 0x6 | 0xC0,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break\n bytes.push(\n codePoint >> 0xC | 0xE0,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x110000) {\n if ((units -= 4) < 0) break\n bytes.push(\n codePoint >> 0x12 | 0xF0,\n codePoint >> 0xC & 0x3F | 0x80,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else {\n throw new Error('Invalid code point')\n }\n }\n\n return bytes\n}\n\nfunction asciiToBytes (str) {\n var byteArray = []\n for (var i = 0; i < str.length; ++i) {\n // Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF)\n }\n return byteArray\n}\n\nfunction utf16leToBytes (str, units) {\n var c, hi, lo\n var byteArray = []\n for (var i = 0; i < str.length; ++i) {\n if ((units -= 2) < 0) break\n\n c = str.charCodeAt(i)\n hi = c >> 8\n lo = c % 256\n byteArray.push(lo)\n byteArray.push(hi)\n }\n\n return byteArray\n}\n\nfunction base64ToBytes (str) {\n return base64.toByteArray(base64clean(str))\n}\n\nfunction blitBuffer (src, dst, offset, length) {\n for (var i = 0; i < length; ++i) {\n if ((i + offset >= dst.length) || (i >= src.length)) break\n dst[i + offset] = src[i]\n }\n return i\n}\n\nfunction isnan (val) {\n return val !== val // eslint-disable-line no-self-compare\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// /home/jonny/git/jonnybarnes.uk/~/buffer/index.js\n// module id = 6\n// module chunks = 0 1","var toString = {}.toString;\n\nmodule.exports = Array.isArray || function (arr) {\n return toString.call(arr) == '[object Array]';\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// /home/jonny/git/jonnybarnes.uk/~/buffer/~/isarray/index.js\n// module id = 7\n// module chunks = 0 1","exports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = nBytes * 8 - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = e * 256 + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = m * 256 + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = nBytes * 8 - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = (value * c - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// /home/jonny/git/jonnybarnes.uk/~/ieee754/index.js\n// module id = 8\n// module chunks = 0 1","(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.mapboxgl = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o0){for(var o=0,a=0,u=0;uh.maxh||t>h.maxw||i<=h.maxh&&t<=h.maxw&&(r=h.maxw*h.maxh-t*i,rn.free)){if(i===n.h)return this.allocShelf(f,t,i,s);i>n.h||ic)&&(p=2*Math.max(t,c)),(uu)&&(l=2*Math.max(i,u)),this.resize(p,l),this.packOne(t,i,s)}return null},t.prototype.allocFreebin=function(t,e,i,s){var h=this.freebins.splice(t,1)[0];return h.id=s,h.w=e,h.h=i,h.refcount=0,this.bins[s]=h,this.ref(h),h},t.prototype.allocShelf=function(t,e,i,s){var h=this.shelves[t],n=h.alloc(e,i,s);return this.bins[s]=n,this.ref(n),n},t.prototype.getBin=function(t){return this.bins[t]},t.prototype.ref=function(t){if(1===++t.refcount){var e=t.h;this.stats[e]=(0|this.stats[e])+1}return t.refcount},t.prototype.unref=function(t){return 0===t.refcount?0:(0===--t.refcount&&(this.stats[t.h]--,delete this.bins[t.id],this.freebins.push(t)),t.refcount)},t.prototype.clear=function(){this.shelves=[],this.freebins=[],this.stats={},this.bins={},this.maxId=0},t.prototype.resize=function(t,e){this.w=t,this.h=e;for(var i=0;ithis.free||e>this.h)return null;var h=this.x;return this.x+=t,this.free-=t,new i(s,h,this.y,t,e,t,this.h)},e.prototype.resize=function(t){return this.free+=t-this.w,this.w=t,!0},t});\n},{}],3:[function(require,module,exports){\nfunction UnitBezier(t,i,e,r){this.cx=3*t,this.bx=3*(e-t)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*i,this.by=3*(r-i)-this.cy,this.ay=1-this.cy-this.by,this.p1x=t,this.p1y=r,this.p2x=e,this.p2y=r}module.exports=UnitBezier,UnitBezier.prototype.sampleCurveX=function(t){return((this.ax*t+this.bx)*t+this.cx)*t},UnitBezier.prototype.sampleCurveY=function(t){return((this.ay*t+this.by)*t+this.cy)*t},UnitBezier.prototype.sampleCurveDerivativeX=function(t){return(3*this.ax*t+2*this.bx)*t+this.cx},UnitBezier.prototype.solveCurveX=function(t,i){\"undefined\"==typeof i&&(i=1e-6);var e,r,s,h,n;for(s=t,n=0;n<8;n++){if(h=this.sampleCurveX(s)-t,Math.abs(h)r)return r;for(;eh?e=s:r=s,s=.5*(r-e)+e}return s},UnitBezier.prototype.solve=function(t,i){return this.sampleCurveY(this.solveCurveX(t,i))};\n},{}],4:[function(require,module,exports){\n!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?t(exports):\"function\"==typeof define&&define.amd?define([\"exports\"],t):t(e.WhooTS=e.WhooTS||{})}(this,function(e){function t(e,t,r,n,i,s){s=s||{};var f=e+\"?\"+[\"bbox=\"+o(r,n,i),\"format=\"+(s.format||\"image/png\"),\"service=\"+(s.service||\"WMS\"),\"version=\"+(s.version||\"1.1.1\"),\"request=\"+(s.request||\"GetMap\"),\"srs=\"+(s.srs||\"EPSG:3857\"),\"width=\"+(s.width||256),\"height=\"+(s.height||256),\"layers=\"+t].join(\"&\");return f}function o(e,t,o){t=Math.pow(2,o)-t-1;var n=r(256*e,256*t,o),i=r(256*(e+1),256*(t+1),o);return n[0]+\",\"+n[1]+\",\"+i[0]+\",\"+i[1]}function r(e,t,o){var r=2*Math.PI*6378137/256/Math.pow(2,o),n=e*r-2*Math.PI*6378137/2,i=t*r-2*Math.PI*6378137/2;return[n,i]}e.getURL=t,e.getTileBBox=o,e.getMercCoords=r,Object.defineProperty(e,\"__esModule\",{value:!0})});\n},{}],5:[function(require,module,exports){\n\"use strict\";function earcut(e,n,r){r=r||2;var t=n&&n.length,i=t?n[0]*r:e.length,x=linkedList(e,0,i,r,!0),a=[];if(!x)return a;var o,l,u,s,v,f,y;if(t&&(x=eliminateHoles(e,n,x,r)),e.length>80*r){o=u=e[0],l=s=e[1];for(var d=r;du&&(u=v),f>s&&(s=f);y=Math.max(u-o,s-l)}return earcutLinked(x,a,r,o,l,y),a}function linkedList(e,n,r,t,i){var x,a;if(i===signedArea(e,n,r,t)>0)for(x=n;x=n;x-=t)a=insertNode(x,e[x],e[x+1],a);return a&&equals(a,a.next)&&(removeNode(a),a=a.next),a}function filterPoints(e,n){if(!e)return e;n||(n=e);var r,t=e;do if(r=!1,t.steiner||!equals(t,t.next)&&0!==area(t.prev,t,t.next))t=t.next;else{if(removeNode(t),t=n=t.prev,t===t.next)return null;r=!0}while(r||t!==n);return n}function earcutLinked(e,n,r,t,i,x,a){if(e){!a&&x&&indexCurve(e,t,i,x);for(var o,l,u=e;e.prev!==e.next;)if(o=e.prev,l=e.next,x?isEarHashed(e,t,i,x):isEar(e))n.push(o.i/r),n.push(e.i/r),n.push(l.i/r),removeNode(e),e=l.next,u=l.next;else if(e=l,e===u){a?1===a?(e=cureLocalIntersections(e,n,r),earcutLinked(e,n,r,t,i,x,2)):2===a&&splitEarcut(e,n,r,t,i,x):earcutLinked(filterPoints(e),n,r,t,i,x,1);break}}}function isEar(e){var n=e.prev,r=e,t=e.next;if(area(n,r,t)>=0)return!1;for(var i=e.next.next;i!==e.prev;){if(pointInTriangle(n.x,n.y,r.x,r.y,t.x,t.y,i.x,i.y)&&area(i.prev,i,i.next)>=0)return!1;i=i.next}return!0}function isEarHashed(e,n,r,t){var i=e.prev,x=e,a=e.next;if(area(i,x,a)>=0)return!1;for(var o=i.xx.x?i.x>a.x?i.x:a.x:x.x>a.x?x.x:a.x,s=i.y>x.y?i.y>a.y?i.y:a.y:x.y>a.y?x.y:a.y,v=zOrder(o,l,n,r,t),f=zOrder(u,s,n,r,t),y=e.nextZ;y&&y.z<=f;){if(y!==e.prev&&y!==e.next&&pointInTriangle(i.x,i.y,x.x,x.y,a.x,a.y,y.x,y.y)&&area(y.prev,y,y.next)>=0)return!1;y=y.nextZ}for(y=e.prevZ;y&&y.z>=v;){if(y!==e.prev&&y!==e.next&&pointInTriangle(i.x,i.y,x.x,x.y,a.x,a.y,y.x,y.y)&&area(y.prev,y,y.next)>=0)return!1;y=y.prevZ}return!0}function cureLocalIntersections(e,n,r){var t=e;do{var i=t.prev,x=t.next.next;!equals(i,x)&&intersects(i,t,t.next,x)&&locallyInside(i,x)&&locallyInside(x,i)&&(n.push(i.i/r),n.push(t.i/r),n.push(x.i/r),removeNode(t),removeNode(t.next),t=e=x),t=t.next}while(t!==e);return t}function splitEarcut(e,n,r,t,i,x){var a=e;do{for(var o=a.next.next;o!==a.prev;){if(a.i!==o.i&&isValidDiagonal(a,o)){var l=splitPolygon(a,o);return a=filterPoints(a,a.next),l=filterPoints(l,l.next),earcutLinked(a,n,r,t,i,x),void earcutLinked(l,n,r,t,i,x)}o=o.next}a=a.next}while(a!==e)}function eliminateHoles(e,n,r,t){var i,x,a,o,l,u=[];for(i=0,x=n.length;i=t.next.y){var o=t.x+(x-t.y)*(t.next.x-t.x)/(t.next.y-t.y);if(o<=i&&o>a){if(a=o,o===i){if(x===t.y)return t;if(x===t.next.y)return t.next}r=t.x=t.x&&t.x>=s&&pointInTriangle(xr.x)&&locallyInside(t,e)&&(r=t,f=l)),t=t.next;return r}function indexCurve(e,n,r,t){var i=e;do null===i.z&&(i.z=zOrder(i.x,i.y,n,r,t)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next;while(i!==e);i.prevZ.nextZ=null,i.prevZ=null,sortLinked(i)}function sortLinked(e){var n,r,t,i,x,a,o,l,u=1;do{for(r=e,e=null,x=null,a=0;r;){for(a++,t=r,o=0,n=0;n0||l>0&&t;)0===o?(i=t,t=t.nextZ,l--):0!==l&&t?r.z<=t.z?(i=r,r=r.nextZ,o--):(i=t,t=t.nextZ,l--):(i=r,r=r.nextZ,o--),x?x.nextZ=i:e=i,i.prevZ=x,x=i;r=t}x.nextZ=null,u*=2}while(a>1);return e}function zOrder(e,n,r,t,i){return e=32767*(e-r)/i,n=32767*(n-t)/i,e=16711935&(e|e<<8),e=252645135&(e|e<<4),e=858993459&(e|e<<2),e=1431655765&(e|e<<1),n=16711935&(n|n<<8),n=252645135&(n|n<<4),n=858993459&(n|n<<2),n=1431655765&(n|n<<1),e|n<<1}function getLeftmost(e){var n=e,r=e;do n.x=0&&(e-a)*(t-o)-(r-a)*(n-o)>=0&&(r-a)*(x-o)-(i-a)*(t-o)>=0}function isValidDiagonal(e,n){return e.next.i!==n.i&&e.prev.i!==n.i&&!intersectsPolygon(e,n)&&locallyInside(e,n)&&locallyInside(n,e)&&middleInside(e,n)}function area(e,n,r){return(n.y-e.y)*(r.x-n.x)-(n.x-e.x)*(r.y-n.y)}function equals(e,n){return e.x===n.x&&e.y===n.y}function intersects(e,n,r,t){return!!(equals(e,n)&&equals(r,t)||equals(e,t)&&equals(r,n))||area(e,n,r)>0!=area(e,n,t)>0&&area(r,t,e)>0!=area(r,t,n)>0}function intersectsPolygon(e,n){var r=e;do{if(r.i!==e.i&&r.next.i!==e.i&&r.i!==n.i&&r.next.i!==n.i&&intersects(r,r.next,e,n))return!0;r=r.next}while(r!==e);return!1}function locallyInside(e,n){return area(e.prev,e,e.next)<0?area(e,n,e.next)>=0&&area(e,e.prev,n)>=0:area(e,n,e.prev)<0||area(e,e.next,n)<0}function middleInside(e,n){var r=e,t=!1,i=(e.x+n.x)/2,x=(e.y+n.y)/2;do r.y>x!=r.next.y>x&&i<(r.next.x-r.x)*(x-r.y)/(r.next.y-r.y)+r.x&&(t=!t),r=r.next;while(r!==e);return t}function splitPolygon(e,n){var r=new Node(e.i,e.x,e.y),t=new Node(n.i,n.x,n.y),i=e.next,x=n.prev;return e.next=n,n.prev=e,r.next=i,i.prev=r,t.next=r,r.prev=t,x.next=t,t.prev=x,t}function insertNode(e,n,r,t){var i=new Node(e,n,r);return t?(i.next=t.next,i.prev=t,t.next.prev=i,t.next=i):(i.prev=i,i.next=i),i}function removeNode(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function Node(e,n,r){this.i=e,this.x=n,this.y=r,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function signedArea(e,n,r,t){for(var i=0,x=n,a=r-t;x0&&(t+=e[i-1].length,r.holes.push(t))}return r};\n},{}],6:[function(require,module,exports){\nfunction geometry(r){if(\"Polygon\"===r.type)return polygonArea(r.coordinates);if(\"MultiPolygon\"===r.type){for(var e=0,n=0;n0){e+=Math.abs(ringArea(r[0]));for(var n=1;n2){for(var n,t,o=0;o=0}var geojsonArea=require(\"geojson-area\");module.exports=rewind;\n},{\"geojson-area\":6}],8:[function(require,module,exports){\n\"use strict\";function clip(e,r,t,n,u,i,l,s){if(t/=r,n/=r,l>=t&&s<=n)return e;if(l>n||s=t&&c<=n)h.push(o);else if(!(a>n||c=r&&s<=t&&u.push(l)}return u}function clipGeometry(e,r,t,n,u,i){for(var l=[],s=0;st?(d.push(u(h,f,r),u(h,f,t)),i||(d=newSlice(l,d,v,m,w))):o>=r&&d.push(u(h,f,r)):c>t?ot&&(d.push(u(h,f,t)),i||(d=newSlice(l,d,v,m,w))));h=g[S-1],c=h[n],c>=r&&c<=t&&d.push(h),a=d[d.length-1],i&&a&&(d[0][0]!==a[0]||d[0][1]!==a[1])&&d.push(d[0]),newSlice(l,d,v,m,w)}return l}function newSlice(e,r,t,n,u){return r.length&&(r.area=t,r.dist=n,void 0!==u&&(r.outer=u),e.push(r)),[]}module.exports=clip;var createFeature=require(\"./feature\");\n},{\"./feature\":10}],9:[function(require,module,exports){\n\"use strict\";function convert(e,t){var r=[];if(\"FeatureCollection\"===e.type)for(var o=0;o1?1:o,[r,o,0]}function calcSize(e){for(var t,r,o=0,a=0,i=0;i1)return!1;var r=n.geometry[0].length;if(5!==r)return!1;for(var s=0;s1&&console.time(\"creation\"),m=this.tiles[d]=createTile(e,p,i,o,f,t===a.maxZoom),this.tileCoords.push({z:t,x:i,y:o}),u)){u>1&&(console.log(\"tile z%d-%d-%d (features: %d, points: %d, simplified: %d)\",t,i,o,m.numFeatures,m.numPoints,m.numSimplified),console.timeEnd(\"creation\"));var h=\"z\"+t;this.stats[h]=(this.stats[h]||0)+1,this.total++}if(m.source=e,n){if(t===a.maxZoom||t===n)continue;var x=1<1&&console.time(\"clipping\");var g,v,M,T,b,y,S=.5*a.buffer/a.extent,Z=.5-S,q=.5+S,w=1+S;g=v=M=T=null,b=clip(e,p,i-S,i+q,0,intersectX,m.min[0],m.max[0]),y=clip(e,p,i+Z,i+w,0,intersectX,m.min[0],m.max[0]),b&&(g=clip(b,p,o-S,o+q,1,intersectY,m.min[1],m.max[1]),v=clip(b,p,o+Z,o+w,1,intersectY,m.min[1],m.max[1])),y&&(M=clip(y,p,o-S,o+q,1,intersectY,m.min[1],m.max[1]),T=clip(y,p,o+Z,o+w,1,intersectY,m.min[1],m.max[1])),u>1&&console.timeEnd(\"clipping\"),e.length&&(l.push(g||[],t+1,2*i,2*o),l.push(v||[],t+1,2*i,2*o+1),l.push(M||[],t+1,2*i+1,2*o),l.push(T||[],t+1,2*i+1,2*o+1))}else n&&(c=t)}return c},GeoJSONVT.prototype.getTile=function(e,t,i){var o=this.options,n=o.extent,r=o.debug,s=1<1&&console.log(\"drilling down to z%d-%d-%d\",e,t,i);for(var a,u=e,c=t,p=i;!a&&u>0;)u--,c=Math.floor(c/2),p=Math.floor(p/2),a=this.tiles[toID(u,c,p)];if(!a||!a.source)return null;if(r>1&&console.log(\"found parent tile z%d-%d-%d\",u,c,p),isClippedSquare(a,n,o.buffer))return transform.tile(a,n);r>1&&console.time(\"drilling down\");var d=this.splitTile(a.source,u,c,p,e,t,i);if(r>1&&console.timeEnd(\"drilling down\"),null!==d){var m=1<p&&(s=e,p=r);p>o?(t[s][2]=p,g.push(u),g.push(s),u=s):(n=g.pop(),u=g.pop())}}function getSqSegDist(t,i,e){var p=i[0],r=i[1],s=e[0],o=e[1],f=t[0],u=t[1],n=s-p,g=o-r;if(0!==n||0!==g){var l=((f-p)*n+(u-r)*g)/(n*n+g*g);l>1?(p=s,r=o):l>0&&(p+=n*l,r+=g*l)}return n=f-p,g=u-r,n*n+g*g}module.exports=simplify;\n},{}],13:[function(require,module,exports){\n\"use strict\";function createTile(e,n,r,i,t,u){for(var a={features:[],numPoints:0,numSimplified:0,numFeatures:0,source:null,x:r,y:i,z2:n,transformed:!1,min:[2,1],max:[-1,0]},m=0;ma.max[0]&&(a.max[0]=l[0]),l[1]>a.max[1]&&(a.max[1]=l[1])}return a}function addFeature(e,n,r,i){var t,u,a,m,s=n.geometry,l=n.type,o=[],f=r*r;if(1===l)for(t=0;tf)&&(d.push(m),e.numSimplified++),e.numPoints++;3===l&&rewind(d,a.outer),o.push(d)}else e.numPoints+=a.length;if(o.length){var g={geometry:o,type:l,tags:n.tags||null};null!==n.id&&(g.id=n.id),e.features.push(g)}}function rewind(e,n){var r=signedArea(e);r<0===n&&e.reverse()}function signedArea(e){for(var n,r,i=0,t=0,u=e.length,a=u-1;t=a[u+0]&&s>=a[u+1]?(n[f]=!0,h.push(l[f])):n[f]=!1}}},GridIndex.prototype._forEachCell=function(t,r,e,s,i,h,n){for(var o=this._convertToCellCoord(t),l=this._convertToCellCoord(r),a=this._convertToCellCoord(e),d=this._convertToCellCoord(s),f=o;f<=a;f++)for(var u=l;u<=d;u++){var y=this.d*u+f;if(i.call(this,t,r,e,s,y,h,n))return}},GridIndex.prototype._convertToCellCoord=function(t){return Math.max(0,Math.min(this.d-1,Math.floor(t*this.scale)+this.padding))},GridIndex.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var t=this.cells,r=NUM_PARAMS+this.cells.length+1+1,e=0,s=0;s>1,i=-7,N=t?h-1:0,n=t?-1:1,s=a[o+N];for(N+=n,M=s&(1<<-i)-1,s>>=-i,i+=w;i>0;M=256*M+a[o+N],N+=n,i-=8);for(p=M&(1<<-i)-1,M>>=-i,i+=r;i>0;p=256*p+a[o+N],N+=n,i-=8);if(0===M)M=1-e;else{if(M===f)return p?NaN:(s?-1:1)*(1/0);p+=Math.pow(2,r),M-=e}return(s?-1:1)*p*Math.pow(2,M-r)},exports.write=function(a,o,t,r,h,M){var p,w,f,e=8*M-h-1,i=(1<>1,n=23===h?Math.pow(2,-24)-Math.pow(2,-77):0,s=r?0:M-1,u=r?1:-1,l=o<0||0===o&&1/o<0?1:0;for(o=Math.abs(o),isNaN(o)||o===1/0?(w=isNaN(o)?1:0,p=i):(p=Math.floor(Math.log(o)/Math.LN2),o*(f=Math.pow(2,-p))<1&&(p--,f*=2),o+=p+N>=1?n/f:n*Math.pow(2,1-N),o*f>=2&&(p++,f/=2),p+N>=i?(w=0,p=i):p+N>=1?(w=(o*f-1)*Math.pow(2,h),p+=N):(w=o*Math.pow(2,N-1)*Math.pow(2,h),p=0));h>=8;a[t+s]=255&w,s+=u,w/=256,h-=8);for(p=p<0;a[t+s]=255&p,s+=u,p/=256,e-=8);a[t+s-u]|=128*l};\n},{}],18:[function(require,module,exports){\n\"use strict\";function kdbush(t,i,e,s,n){return new KDBush(t,i,e,s,n)}function KDBush(t,i,e,s,n){i=i||defaultGetX,e=e||defaultGetY,n=n||Array,this.nodeSize=s||64,this.points=t,this.ids=new n(t.length),this.coords=new n(2*t.length);for(var r=0;r=s&&a<=h&&t>=u&&t<=e&&f.push(p[i]);else{var c=Math.floor((g+v)/2);a=r[2*c],t=r[2*c+1],a>=s&&a<=h&&t>=u&&t<=e&&f.push(p[c]);var d=(l+1)%2;(0===l?s<=a:u<=t)&&(n.push(g),n.push(c-1),n.push(d)),(0===l?h>=a:e>=t)&&(n.push(c+1),n.push(v),n.push(d))}}return f}module.exports=range;\n},{}],20:[function(require,module,exports){\n\"use strict\";function sortKD(t,a,o,s,r,e){if(!(r-s<=o)){var f=Math.floor((s+r)/2);select(t,a,f,s,r,e%2),sortKD(t,a,o,s,f-1,e+1),sortKD(t,a,o,f+1,r,e+1)}}function select(t,a,o,s,r,e){for(;r>s;){if(r-s>600){var f=r-s+1,p=o-s+1,w=Math.log(f),m=.5*Math.exp(2*w/3),n=.5*Math.sqrt(w*m*(f-m)/f)*(p-f/2<0?-1:1),c=Math.max(s,Math.floor(o-p*m/f+n)),h=Math.min(r,Math.floor(o+(f-p)*m/f+n));select(t,a,o,c,h,e)}var i=a[2*o+e],l=s,M=r;for(swapItem(t,a,s,o),a[2*r+e]>i&&swapItem(t,a,s,r);li;)M--}a[2*s+e]===i?swapItem(t,a,s,M):(M++,swapItem(t,a,M,r)),M<=o&&(s=M+1),o<=M&&(r=M-1)}}function swapItem(t,a,o,s){swap(t,o,s),swap(a,2*o,2*s),swap(a,2*o+1,2*s+1)}function swap(t,a,o){var s=t[a];t[a]=t[o],t[o]=s}module.exports=sortKD;\n},{}],21:[function(require,module,exports){\n\"use strict\";function within(s,p,r,t,u,h){for(var i=[0,s.length-1,0],o=[],n=u*u;i.length;){var e=i.pop(),a=i.pop(),f=i.pop();if(a-f<=h)for(var v=f;v<=a;v++)sqDist(p[2*v],p[2*v+1],r,t)<=n&&o.push(s[v]);else{var l=Math.floor((f+a)/2),c=p[2*l],q=p[2*l+1];sqDist(c,q,r,t)<=n&&o.push(s[l]);var D=(e+1)%2;(0===e?r-u<=c:t-u<=q)&&(i.push(f),i.push(l-1),i.push(D)),(0===e?r+u>=c:t+u>=q)&&(i.push(l+1),i.push(a),i.push(D))}}return o}function sqDist(s,p,r,t){var u=s-r,h=p-t;return u*u+h*h}module.exports=within;\n},{}],22:[function(require,module,exports){\n\"use strict\";function isSupported(e){return!!(isBrowser()&&isArraySupported()&&isFunctionSupported()&&isObjectSupported()&&isJSONSupported()&&isWorkerSupported()&&isUint8ClampedArraySupported()&&isWebGLSupportedCached(e&&e.failIfMajorPerformanceCaveat))}function isBrowser(){return\"undefined\"!=typeof window&&\"undefined\"!=typeof document}function isArraySupported(){return Array.prototype&&Array.prototype.every&&Array.prototype.filter&&Array.prototype.forEach&&Array.prototype.indexOf&&Array.prototype.lastIndexOf&&Array.prototype.map&&Array.prototype.some&&Array.prototype.reduce&&Array.prototype.reduceRight&&Array.isArray}function isFunctionSupported(){return Function.prototype&&Function.prototype.bind}function isObjectSupported(){return Object.keys&&Object.create&&Object.getPrototypeOf&&Object.getOwnPropertyNames&&Object.isSealed&&Object.isFrozen&&Object.isExtensible&&Object.getOwnPropertyDescriptor&&Object.defineProperty&&Object.defineProperties&&Object.seal&&Object.freeze&&Object.preventExtensions}function isJSONSupported(){return\"JSON\"in window&&\"parse\"in JSON&&\"stringify\"in JSON}function isWorkerSupported(){return\"Worker\"in window}function isUint8ClampedArraySupported(){return\"Uint8ClampedArray\"in window}function isWebGLSupportedCached(e){return void 0===isWebGLSupportedCache[e]&&(isWebGLSupportedCache[e]=isWebGLSupported(e)),isWebGLSupportedCache[e]}function isWebGLSupported(e){var t=document.createElement(\"canvas\"),r=Object.create(isSupported.webGLContextAttributes);return r.failIfMajorPerformanceCaveat=e,t.probablySupportsContext?t.probablySupportsContext(\"webgl\",r)||t.probablySupportsContext(\"experimental-webgl\",r):t.supportsContext?t.supportsContext(\"webgl\",r)||t.supportsContext(\"experimental-webgl\",r):t.getContext(\"webgl\",r)||t.getContext(\"experimental-webgl\",r)}\"undefined\"!=typeof module&&module.exports?module.exports=isSupported:window&&(window.mapboxgl=window.mapboxgl||{},window.mapboxgl.supported=isSupported);var isWebGLSupportedCache={};isSupported.webGLContextAttributes={antialias:!1,alpha:!0,stencil:!0,depth:!0};\n},{}],23:[function(require,module,exports){\n(function (process){\nfunction normalizeArray(r,t){for(var e=0,n=r.length-1;n>=0;n--){var s=r[n];\".\"===s?r.splice(n,1):\"..\"===s?(r.splice(n,1),e++):e&&(r.splice(n,1),e--)}if(t)for(;e--;e)r.unshift(\"..\");return r}function filter(r,t){if(r.filter)return r.filter(t);for(var e=[],n=0;n=-1&&!t;e--){var n=e>=0?arguments[e]:process.cwd();if(\"string\"!=typeof n)throw new TypeError(\"Arguments to path.resolve must be strings\");n&&(r=n+\"/\"+r,t=\"/\"===n.charAt(0))}return r=normalizeArray(filter(r.split(\"/\"),function(r){return!!r}),!t).join(\"/\"),(t?\"/\":\"\")+r||\".\"},exports.normalize=function(r){var t=exports.isAbsolute(r),e=\"/\"===substr(r,-1);return r=normalizeArray(filter(r.split(\"/\"),function(r){return!!r}),!t).join(\"/\"),r||t||(r=\".\"),r&&e&&(r+=\"/\"),(t?\"/\":\"\")+r},exports.isAbsolute=function(r){return\"/\"===r.charAt(0)},exports.join=function(){var r=Array.prototype.slice.call(arguments,0);return exports.normalize(filter(r,function(r,t){if(\"string\"!=typeof r)throw new TypeError(\"Arguments to path.join must be strings\");return r}).join(\"/\"))},exports.relative=function(r,t){function e(r){for(var t=0;t=0&&\"\"===r[e];e--);return t>e?[]:r.slice(t,e-t+1)}r=exports.resolve(r).substr(1),t=exports.resolve(t).substr(1);for(var n=e(r.split(\"/\")),s=e(t.split(\"/\")),i=Math.min(n.length,s.length),o=i,u=0;u55295&&e<57344){if(!r){e>56319||o+1===n?i.push(239,191,189):r=e;continue}if(e<56320){i.push(239,191,189),r=e;continue}e=r-55296<<10|e-56320|65536,r=null}else r&&(i.push(239,191,189),r=null);e<128?i.push(e):e<2048?i.push(e>>6|192,63&e|128):e<65536?i.push(e>>12|224,e>>6&63|128,63&e|128):i.push(e>>18|240,e>>12&63|128,e>>6&63|128,63&e|128)}return i}module.exports=Buffer;var ieee754=require(\"ieee754\"),BufferMethods,lastStr,lastStrEncoded;BufferMethods={readUInt32LE:function(t){return(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},writeUInt32LE:function(t,e){this[e]=t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24},readInt32LE:function(t){return(this[t]|this[t+1]<<8|this[t+2]<<16)+(this[t+3]<<24)},readFloatLE:function(t){return ieee754.read(this,t,!0,23,4)},readDoubleLE:function(t){return ieee754.read(this,t,!0,52,8)},writeFloatLE:function(t,e){return ieee754.write(this,t,e,!0,23,4)},writeDoubleLE:function(t,e){return ieee754.write(this,t,e,!0,52,8)},toString:function(t,e,r){var n=\"\",i=\"\";e=e||0,r=Math.min(this.length,r||this.length);for(var o=e;o=1;){if(i.pos>=e)throw new Error(\"Given varint doesn't fit into 10 bytes\");var r=255&t;i.buf[i.pos++]=r|(t>=128?128:0),t/=128}}function reallocForRawMessage(t,i,e){var r=i<=16383?1:i<=2097151?2:i<=268435455?3:Math.ceil(Math.log(i)/(7*Math.LN2));e.realloc(r);for(var s=e.pos-1;s>=t;s--)e.buf[s+r]=e.buf[s]}function writePackedVarint(t,i){for(var e=0;e>3,n=this.pos;t(s,i,this),this.pos===n&&this.skip(r)}return i},readMessage:function(t,i){return this.readFields(t,i,this.readVarint()+this.pos)},readFixed32:function(){var t=this.buf.readUInt32LE(this.pos);return this.pos+=4,t},readSFixed32:function(){var t=this.buf.readInt32LE(this.pos);return this.pos+=4,t},readFixed64:function(){var t=this.buf.readUInt32LE(this.pos)+this.buf.readUInt32LE(this.pos+4)*SHIFT_LEFT_32;return this.pos+=8,t},readSFixed64:function(){var t=this.buf.readUInt32LE(this.pos)+this.buf.readInt32LE(this.pos+4)*SHIFT_LEFT_32;return this.pos+=8,t},readFloat:function(){var t=this.buf.readFloatLE(this.pos);return this.pos+=4,t},readDouble:function(){var t=this.buf.readDoubleLE(this.pos);return this.pos+=8,t},readVarint:function(){var t,i,e=this.buf;return i=e[this.pos++],t=127&i,i<128?t:(i=e[this.pos++],t|=(127&i)<<7,i<128?t:(i=e[this.pos++],t|=(127&i)<<14,i<128?t:(i=e[this.pos++],t|=(127&i)<<21,i<128?t:readVarintRemainder(t,this))))},readVarint64:function(){var t=this.pos,i=this.readVarint();if(i127;);else if(i===Pbf.Bytes)this.pos=this.readVarint()+this.pos;else if(i===Pbf.Fixed32)this.pos+=4;else{if(i!==Pbf.Fixed64)throw new Error(\"Unimplemented type: \"+i);this.pos+=8}},writeTag:function(t,i){this.writeVarint(t<<3|i)},realloc:function(t){for(var i=this.length||16;i268435455?void writeBigVarint(t,this):(this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),void(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);var i=Buffer.byteLength(t);this.writeVarint(i),this.realloc(i),this.buf.write(t,this.pos),this.pos+=i},writeFloat:function(t){this.realloc(4),this.buf.writeFloatLE(t,this.pos),this.pos+=4},writeDouble:function(t){this.realloc(8),this.buf.writeDoubleLE(t,this.pos),this.pos+=8},writeBytes:function(t){var i=t.length;this.writeVarint(i),this.realloc(i);for(var e=0;e=128&&reallocForRawMessage(e,r,this),this.pos=e-1,this.writeVarint(r),this.pos+=r},writeMessage:function(t,i,e){this.writeTag(t,Pbf.Bytes),this.writeRawMessage(i,e)},writePackedVarint:function(t,i){this.writeMessage(t,writePackedVarint,i)},writePackedSVarint:function(t,i){this.writeMessage(t,writePackedSVarint,i)},writePackedBoolean:function(t,i){this.writeMessage(t,writePackedBoolean,i)},writePackedFloat:function(t,i){this.writeMessage(t,writePackedFloat,i)},writePackedDouble:function(t,i){this.writeMessage(t,writePackedDouble,i)},writePackedFixed32:function(t,i){this.writeMessage(t,writePackedFixed32,i)},writePackedSFixed32:function(t,i){this.writeMessage(t,writePackedSFixed32,i)},writePackedFixed64:function(t,i){this.writeMessage(t,writePackedFixed64,i)},writePackedSFixed64:function(t,i){this.writeMessage(t,writePackedSFixed64,i)},writeBytesField:function(t,i){this.writeTag(t,Pbf.Bytes),this.writeBytes(i)},writeFixed32Field:function(t,i){this.writeTag(t,Pbf.Fixed32),this.writeFixed32(i)},writeSFixed32Field:function(t,i){this.writeTag(t,Pbf.Fixed32),this.writeSFixed32(i)},writeFixed64Field:function(t,i){this.writeTag(t,Pbf.Fixed64),this.writeFixed64(i)},writeSFixed64Field:function(t,i){this.writeTag(t,Pbf.Fixed64),this.writeSFixed64(i)},writeVarintField:function(t,i){this.writeTag(t,Pbf.Varint),this.writeVarint(i)},writeSVarintField:function(t,i){this.writeTag(t,Pbf.Varint),this.writeSVarint(i)},writeStringField:function(t,i){this.writeTag(t,Pbf.Bytes),this.writeString(i)},writeFloatField:function(t,i){this.writeTag(t,Pbf.Fixed32),this.writeFloat(i)},writeDoubleField:function(t,i){this.writeTag(t,Pbf.Fixed64),this.writeDouble(i)},writeBooleanField:function(t,i){this.writeVarintField(t,Boolean(i))}};\n}).call(this,typeof global !== \"undefined\" ? global : typeof self !== \"undefined\" ? self : typeof window !== \"undefined\" ? window : {})\n\n},{\"./buffer\":24}],26:[function(require,module,exports){\n\"use strict\";function Point(t,n){this.x=t,this.y=n}module.exports=Point,Point.prototype={clone:function(){return new Point(this.x,this.y)},add:function(t){return this.clone()._add(t)},sub:function(t){return this.clone()._sub(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)},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 n=t.x-this.x,i=t.y-this.y;return n*n+i*i},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,n){return Math.atan2(this.x*n-this.y*t,this.x*t+this.y*n)},_matMult:function(t){var n=t[0]*this.x+t[1]*this.y,i=t[2]*this.x+t[3]*this.y;return this.x=n,this.y=i,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},_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 n=Math.cos(t),i=Math.sin(t),s=n*this.x-i*this.y,r=i*this.x+n*this.y;return this.x=s,this.y=r,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},Point.convert=function(t){return t instanceof Point?t:Array.isArray(t)?new Point(t[0],t[1]):t};\n},{}],27:[function(require,module,exports){\nfunction defaultSetTimout(){throw new Error(\"setTimeout has not been defined\")}function defaultClearTimeout(){throw new Error(\"clearTimeout has not been defined\")}function runTimeout(e){if(cachedSetTimeout===setTimeout)return setTimeout(e,0);if((cachedSetTimeout===defaultSetTimout||!cachedSetTimeout)&&setTimeout)return cachedSetTimeout=setTimeout,setTimeout(e,0);try{return cachedSetTimeout(e,0)}catch(t){try{return cachedSetTimeout.call(null,e,0)}catch(t){return cachedSetTimeout.call(this,e,0)}}}function runClearTimeout(e){if(cachedClearTimeout===clearTimeout)return clearTimeout(e);if((cachedClearTimeout===defaultClearTimeout||!cachedClearTimeout)&&clearTimeout)return cachedClearTimeout=clearTimeout,clearTimeout(e);try{return cachedClearTimeout(e)}catch(t){try{return cachedClearTimeout.call(null,e)}catch(t){return cachedClearTimeout.call(this,e)}}}function cleanUpNextTick(){draining&¤tQueue&&(draining=!1,currentQueue.length?queue=currentQueue.concat(queue):queueIndex=-1,queue.length&&drainQueue())}function drainQueue(){if(!draining){var e=runTimeout(cleanUpNextTick);draining=!0;for(var t=queue.length;t;){for(currentQueue=queue,queue=[];++queueIndex1)for(var u=1;ur;){if(o-r>600){var f=o-r+1,e=t-r+1,l=Math.log(f),s=.5*Math.exp(2*l/3),i=.5*Math.sqrt(l*s*(f-s)/f)*(e-f/2<0?-1:1),n=Math.max(r,Math.floor(t-e*s/f+i)),h=Math.min(o,Math.floor(t+(f-e)*s/f+i));partialSort(a,t,n,h,p)}var u=a[t],M=r,w=o;for(swap(a,r,t),p(a[o],u)>0&&swap(a,r,o);M0;)w--}0===p(a[r],u)?swap(a,r,w):(w++,swap(a,w,o)),w<=t&&(r=w+1),t<=w&&(o=w-1)}}function swap(a,t,r){var o=a[t];a[t]=a[r],a[r]=o}function defaultCompare(a,t){return at?1:0}module.exports=partialSort;\n},{}],29:[function(require,module,exports){\n\"use strict\";function supercluster(t){return new SuperCluster(t)}function SuperCluster(t){this.options=extend(Object.create(this.options),t),this.trees=new Array(this.options.maxZoom+1)}function createCluster(t,e,o,n){return{x:t,y:e,zoom:1/0,id:n,numPoints:o}}function createPointCluster(t,e){var o=t.geometry.coordinates;return createCluster(lngX(o[0]),latY(o[1]),1,e)}function getClusterJSON(t){return{type:\"Feature\",properties:getClusterProperties(t),geometry:{type:\"Point\",coordinates:[xLng(t.x),yLat(t.y)]}}}function getClusterProperties(t){var e=t.numPoints,o=e>=1e4?Math.round(e/1e3)+\"k\":e>=1e3?Math.round(e/100)/10+\"k\":e;return{cluster:!0,point_count:e,point_count_abbreviated:o}}function lngX(t){return t/360+.5}function latY(t){var e=Math.sin(t*Math.PI/180),o=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return o<0?0:o>1?1:o}function xLng(t){return 360*(t-.5)}function yLat(t){var e=(180-360*t)*Math.PI/180;return 360*Math.atan(Math.exp(e))/Math.PI-90}function extend(t,e){for(var o in e)t[o]=e[o];return t}function getX(t){return t.x}function getY(t){return t.y}var kdbush=require(\"kdbush\");module.exports=supercluster,SuperCluster.prototype={options:{minZoom:0,maxZoom:16,radius:40,extent:512,nodeSize:64,log:!1},load:function(t){var e=this.options.log;e&&console.time(\"total time\");var o=\"prepare \"+t.length+\" points\";e&&console.time(o),this.points=t;var n=t.map(createPointCluster);e&&console.timeEnd(o);for(var r=this.options.maxZoom;r>=this.options.minZoom;r--){var i=+Date.now();this.trees[r+1]=kdbush(n,getX,getY,this.options.nodeSize,Float32Array),n=this._cluster(n,r),e&&console.log(\"z%d: %d clusters in %dms\",r,n.length,+Date.now()-i)}return this.trees[this.options.minZoom]=kdbush(n,getX,getY,this.options.nodeSize,Float32Array),e&&console.timeEnd(\"total time\"),this},getClusters:function(t,e){for(var o=this.trees[this._limitZoom(e)],n=o.range(lngX(t[0]),latY(t[3]),lngX(t[2]),latY(t[1])),r=[],i=0;i=0;a--)this._down(a)}function defaultCompare(t,i){return ti?1:0}function swap(t,i,a){var n=t[i];t[i]=t[a],t[a]=n}module.exports=TinyQueue,TinyQueue.prototype={push:function(t){this.data.push(t),this.length++,this._up(this.length-1)},pop:function(){var t=this.data[0];return this.data[0]=this.data[this.length-1],this.length--,this.data.pop(),this._down(0),t},peek:function(){return this.data[0]},_up:function(t){for(var i=this.data,a=this.compare;t>0;){var n=Math.floor((t-1)/2);if(!(a(i[t],i[n])<0))break;swap(i,n,t),t=n}},_down:function(t){for(var i=this.data,a=this.compare,n=this.length;;){var e=2*t+1,h=e+1,s=t;if(e=3&&(t.depth=arguments[2]),arguments.length>=4&&(t.colors=arguments[3]),isBoolean(r)?t.showHidden=r:r&&exports._extend(t,r),isUndefined(t.showHidden)&&(t.showHidden=!1),isUndefined(t.depth)&&(t.depth=2),isUndefined(t.colors)&&(t.colors=!1),isUndefined(t.customInspect)&&(t.customInspect=!0),t.colors&&(t.stylize=stylizeWithColor),formatValue(t,e,t.depth)}function stylizeWithColor(e,r){var t=inspect.styles[r];return t?\"\u001b[\"+inspect.colors[t][0]+\"m\"+e+\"\u001b[\"+inspect.colors[t][1]+\"m\":e}function stylizeNoColor(e,r){return e}function arrayToHash(e){var r={};return e.forEach(function(e,t){r[e]=!0}),r}function formatValue(e,r,t){if(e.customInspect&&r&&isFunction(r.inspect)&&r.inspect!==exports.inspect&&(!r.constructor||r.constructor.prototype!==r)){var n=r.inspect(t,e);return isString(n)||(n=formatValue(e,n,t)),n}var i=formatPrimitive(e,r);if(i)return i;var o=Object.keys(r),s=arrayToHash(o);if(e.showHidden&&(o=Object.getOwnPropertyNames(r)),isError(r)&&(o.indexOf(\"message\")>=0||o.indexOf(\"description\")>=0))return formatError(r);if(0===o.length){if(isFunction(r)){var u=r.name?\": \"+r.name:\"\";return e.stylize(\"[Function\"+u+\"]\",\"special\")}if(isRegExp(r))return e.stylize(RegExp.prototype.toString.call(r),\"regexp\");if(isDate(r))return e.stylize(Date.prototype.toString.call(r),\"date\");if(isError(r))return formatError(r)}var c=\"\",a=!1,l=[\"{\",\"}\"];if(isArray(r)&&(a=!0,l=[\"[\",\"]\"]),isFunction(r)){var p=r.name?\": \"+r.name:\"\";c=\" [Function\"+p+\"]\"}if(isRegExp(r)&&(c=\" \"+RegExp.prototype.toString.call(r)),isDate(r)&&(c=\" \"+Date.prototype.toUTCString.call(r)),isError(r)&&(c=\" \"+formatError(r)),0===o.length&&(!a||0==r.length))return l[0]+c+l[1];if(t<0)return isRegExp(r)?e.stylize(RegExp.prototype.toString.call(r),\"regexp\"):e.stylize(\"[Object]\",\"special\");e.seen.push(r);var f;return f=a?formatArray(e,r,t,s,o):o.map(function(n){return formatProperty(e,r,t,s,n,a)}),e.seen.pop(),reduceToSingleString(f,c,l)}function formatPrimitive(e,r){if(isUndefined(r))return e.stylize(\"undefined\",\"undefined\");if(isString(r)){var t=\"'\"+JSON.stringify(r).replace(/^\"|\"$/g,\"\").replace(/'/g,\"\\\\'\").replace(/\\\\\"/g,'\"')+\"'\";return e.stylize(t,\"string\")}return isNumber(r)?e.stylize(\"\"+r,\"number\"):isBoolean(r)?e.stylize(\"\"+r,\"boolean\"):isNull(r)?e.stylize(\"null\",\"null\"):void 0}function formatError(e){return\"[\"+Error.prototype.toString.call(e)+\"]\"}function formatArray(e,r,t,n,i){for(var o=[],s=0,u=r.length;s-1&&(u=o?u.split(\"\\n\").map(function(e){return\" \"+e}).join(\"\\n\").substr(2):\"\\n\"+u.split(\"\\n\").map(function(e){return\" \"+e}).join(\"\\n\"))):u=e.stylize(\"[Circular]\",\"special\")),isUndefined(s)){if(o&&i.match(/^\\d+$/))return u;s=JSON.stringify(\"\"+i),s.match(/^\"([a-zA-Z_][a-zA-Z_0-9]*)\"$/)?(s=s.substr(1,s.length-2),s=e.stylize(s,\"name\")):(s=s.replace(/'/g,\"\\\\'\").replace(/\\\\\"/g,'\"').replace(/(^\"|\"$)/g,\"'\"),s=e.stylize(s,\"string\"))}return s+\": \"+u}function reduceToSingleString(e,r,t){var n=0,i=e.reduce(function(e,r){return n++,r.indexOf(\"\\n\")>=0&&n++,e+r.replace(/\\u001b\\[\\d\\d?m/g,\"\").length+1},0);return i>60?t[0]+(\"\"===r?\"\":r+\"\\n \")+\" \"+e.join(\",\\n \")+\" \"+t[1]:t[0]+r+\" \"+e.join(\", \")+\" \"+t[1]}function isArray(e){return Array.isArray(e)}function isBoolean(e){return\"boolean\"==typeof e}function isNull(e){return null===e}function isNullOrUndefined(e){return null==e}function isNumber(e){return\"number\"==typeof e}function isString(e){return\"string\"==typeof e}function isSymbol(e){return\"symbol\"==typeof e}function isUndefined(e){return void 0===e}function isRegExp(e){return isObject(e)&&\"[object RegExp]\"===objectToString(e)}function isObject(e){return\"object\"==typeof e&&null!==e}function isDate(e){return isObject(e)&&\"[object Date]\"===objectToString(e)}function isError(e){return isObject(e)&&(\"[object Error]\"===objectToString(e)||e instanceof Error)}function isFunction(e){return\"function\"==typeof e}function isPrimitive(e){return null===e||\"boolean\"==typeof e||\"number\"==typeof e||\"string\"==typeof e||\"symbol\"==typeof e||\"undefined\"==typeof e}function objectToString(e){return Object.prototype.toString.call(e)}function pad(e){return e<10?\"0\"+e.toString(10):e.toString(10)}function timestamp(){var e=new Date,r=[pad(e.getHours()),pad(e.getMinutes()),pad(e.getSeconds())].join(\":\");return[e.getDate(),months[e.getMonth()],r].join(\" \")}function hasOwnProperty(e,r){return Object.prototype.hasOwnProperty.call(e,r)}var formatRegExp=/%[sdj%]/g;exports.format=function(e){if(!isString(e)){for(var r=[],t=0;t=i)return e;switch(e){case\"%s\":return String(n[t++]);case\"%d\":return Number(n[t++]);case\"%j\":try{return JSON.stringify(n[t++])}catch(e){return\"[Circular]\"}default:return e}}),s=n[t];t>3}if(a--,1===i||2===i)o+=e.readSVarint(),n+=e.readSVarint(),1===i&&(t&&s.push(t),t=[]),t.push(new Point(o,n));else{if(7!==i)throw new Error(\"unknown command \"+i);t&&t.push(t[0].clone())}}return t&&s.push(t),s},VectorTileFeature.prototype.bbox=function(){var e=this._pbf;e.pos=this._geometry;for(var t=e.readVarint()+e.pos,r=1,i=0,a=0,o=0,n=1/0,s=-(1/0),p=1/0,h=-(1/0);e.pos>3}if(i--,1===r||2===r)a+=e.readSVarint(),o+=e.readSVarint(),as&&(s=a),oh&&(h=o);else if(7!==r)throw new Error(\"unknown command \"+r)}return[n,p,s,h]},VectorTileFeature.prototype.toGeoJSON=function(e,t,r){function i(e){for(var t=0;t>3;t=1===a?e.readString():2===a?e.readFloat():3===a?e.readDouble():4===a?e.readVarint64():5===a?e.readVarint():6===a?e.readSVarint():7===a?e.readBoolean():null}return t}var VectorTileFeature=require(\"./vectortilefeature.js\");module.exports=VectorTileLayer,VectorTileLayer.prototype.feature=function(e){if(e<0||e>=this._features.length)throw new Error(\"feature index out of bounds\");this._pbf.pos=this._features[e];var t=this._pbf.readVarint()+this._pbf.pos;return new VectorTileFeature(this._pbf,t,this.extent,this._keys,this._values)};\n},{\"./vectortilefeature.js\":36}],38:[function(require,module,exports){\nfunction fromVectorTileJs(e){var r=[];for(var o in e.layers)r.push(prepareLayer(e.layers[o]));var t=new Pbf;return vtpb.tile.write({layers:r},t),t.finish()}function fromGeojsonVt(e){var r={};for(var o in e)r[o]=new GeoJSONWrapper(e[o].features),r[o].name=o;return fromVectorTileJs({layers:r})}function prepareLayer(e){for(var r={name:e.name||\"\",version:e.version||1,extent:e.extent||4096,keys:[],values:[],features:[]},o={},t={},n=0;n>31}function encodeGeometry(e){for(var r=[],o=0,t=0,n=e.length,a=0;aArrayGroup.MAX_VERTEX_ARRAY_LENGTH)&&(e=new Segment(this.layoutVertexArray.length,this.elementArray.length),this.segments.push(e)),e},ArrayGroup.prototype.prepareSegment2=function(r){var e=this.segments2[this.segments2.length-1];return(!e||e.vertexLength+r>ArrayGroup.MAX_VERTEX_ARRAY_LENGTH)&&(e=new Segment(this.layoutVertexArray.length,this.elementArray2.length),this.segments2.push(e)),e},ArrayGroup.prototype.populatePaintArrays=function(r){var e=this;for(var t in e.layerData){var a=e.layerData[t];0!==a.paintVertexArray.bytesPerElement&&a.programConfiguration.populatePaintArray(a.layer,a.paintVertexArray,a.paintPropertyStatistics,e.layoutVertexArray.length,e.globalProperties,r)}},ArrayGroup.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},ArrayGroup.prototype.serialize=function(r){return{layoutVertexArray:this.layoutVertexArray.serialize(r),elementArray:this.elementArray&&this.elementArray.serialize(r),elementArray2:this.elementArray2&&this.elementArray2.serialize(r),paintVertexArrays:serializePaintVertexArrays(this.layerData,r),segments:this.segments,segments2:this.segments2}},ArrayGroup.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,module.exports=ArrayGroup;\n},{\"./program_configuration\":58}],45:[function(require,module,exports){\n\"use strict\";var ArrayGroup=require(\"./array_group\"),BufferGroup=require(\"./buffer_group\"),util=require(\"../util/util\"),Bucket=function(r,t){this.zoom=r.zoom,this.overscaling=r.overscaling,this.layers=r.layers,this.index=r.index,r.arrays?this.buffers=new BufferGroup(t,r.layers,r.zoom,r.arrays):this.arrays=new ArrayGroup(t,r.layers,r.zoom)};Bucket.prototype.populate=function(r,t){for(var e=this,i=0,a=r;i=EXTENT||o<0||o>=EXTENT)){var n=r.prepareSegment(4),u=n.vertexLength;addCircleVertex(r.layoutVertexArray,y,o,-1,-1),addCircleVertex(r.layoutVertexArray,y,o,1,-1),addCircleVertex(r.layoutVertexArray,y,o,1,1),addCircleVertex(r.layoutVertexArray,y,o,-1,1),r.elementArray.emplaceBack(u,u+1,u+2),r.elementArray.emplaceBack(u,u+3,u+2),n.vertexLength+=4,n.primitiveLength+=2}}r.populatePaintArrays(e.properties)},r}(Bucket);CircleBucket.programInterface=circleInterface,module.exports=CircleBucket;\n},{\"../bucket\":45,\"../element_array_type\":53,\"../extent\":54,\"../load_geometry\":56,\"../vertex_array_type\":60}],47:[function(require,module,exports){\n\"use strict\";var Bucket=require(\"../bucket\"),createVertexArrayType=require(\"../vertex_array_type\"),createElementArrayType=require(\"../element_array_type\"),loadGeometry=require(\"../load_geometry\"),earcut=require(\"earcut\"),classifyRings=require(\"../../util/classify_rings\"),EARCUT_MAX_RINGS=500,fillInterface={layoutVertexArrayType:createVertexArrayType([{name:\"a_pos\",components:2,type:\"Int16\"}]),elementArrayType:createElementArrayType(3),elementArrayType2:createElementArrayType(2),paintAttributes:[{property:\"fill-color\",type:\"Uint8\"},{property:\"fill-outline-color\",type:\"Uint8\"},{property:\"fill-opacity\",type:\"Uint8\",multiplier:255}]},FillBucket=function(e){function r(r){e.call(this,r,fillInterface)}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.addFeature=function(e){for(var r=this.arrays,t=0,a=classifyRings(loadGeometry(e),EARCUT_MAX_RINGS);tEXTENT)||e.y===r.y&&(e.y<0||e.y>EXTENT)}var Bucket=require(\"../bucket\"),createVertexArrayType=require(\"../vertex_array_type\"),createElementArrayType=require(\"../element_array_type\"),loadGeometry=require(\"../load_geometry\"),EXTENT=require(\"../extent\"),earcut=require(\"earcut\"),classifyRings=require(\"../../util/classify_rings\"),EARCUT_MAX_RINGS=500,fillExtrusionInterface={layoutVertexArrayType:createVertexArrayType([{name:\"a_pos\",components:2,type:\"Int16\"},{name:\"a_normal\",components:3,type:\"Int16\"},{name:\"a_edgedistance\",components:1,type:\"Int16\"}]),elementArrayType:createElementArrayType(3),paintAttributes:[{property:\"fill-extrusion-base\",type:\"Uint16\"},{property:\"fill-extrusion-height\",type:\"Uint16\"},{property:\"fill-extrusion-color\",type:\"Uint8\"}]},FACTOR=Math.pow(2,13),FillExtrusionBucket=function(e){function r(r){e.call(this,r,fillExtrusionInterface)}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.addFeature=function(e){for(var r=this.arrays,t=0,a=classifyRings(loadGeometry(e),EARCUT_MAX_RINGS);t=1){var A=d[h-1];if(!isBoundaryEdge(g,A)){var _=g.sub(A)._perp()._unit();addVertex(r.layoutVertexArray,g.x,g.y,_.x,_.y,0,0,m),addVertex(r.layoutVertexArray,g.x,g.y,_.x,_.y,0,1,m),m+=A.dist(g),addVertex(r.layoutVertexArray,A.x,A.y,_.x,_.y,0,0,m),addVertex(r.layoutVertexArray,A.x,A.y,_.x,_.y,0,1,m);var v=p.vertexLength;r.elementArray.emplaceBack(v,v+1,v+2),r.elementArray.emplaceBack(v+1,v+2,v+3),p.vertexLength+=4,p.primitiveLength+=2}}u.push(g.x),u.push(g.y)}}}for(var E=earcut(u,c),T=0;T>6)}var Bucket=require(\"../bucket\"),createVertexArrayType=require(\"../vertex_array_type\"),createElementArrayType=require(\"../element_array_type\"),loadGeometry=require(\"../load_geometry\"),EXTENT=require(\"../extent\"),VectorTileFeature=require(\"vector-tile\").VectorTileFeature,EXTRUDE_SCALE=63,COS_HALF_SHARP_CORNER=Math.cos(37.5*(Math.PI/180)),SHARP_CORNER_OFFSET=15,LINE_DISTANCE_BUFFER_BITS=15,LINE_DISTANCE_SCALE=.5,MAX_LINE_DISTANCE=Math.pow(2,LINE_DISTANCE_BUFFER_BITS-1)/LINE_DISTANCE_SCALE,lineInterface={layoutVertexArrayType:createVertexArrayType([{name:\"a_pos\",components:2,type:\"Int16\"},{name:\"a_data\",components:4,type:\"Uint8\"}]),paintAttributes:[{property:\"line-color\",type:\"Uint8\"},{property:\"line-blur\",multiplier:10,type:\"Uint8\"},{property:\"line-opacity\",multiplier:10,type:\"Uint8\"},{property:\"line-gap-width\",multiplier:10,type:\"Uint8\",name:\"a_gapwidth\"},{property:\"line-offset\",multiplier:1,type:\"Int8\"}],elementArrayType:createElementArrayType()},LineBucket=function(e){function t(t){e.call(this,t,lineInterface)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.addFeature=function(e){for(var t=this,r=this.layers[0].layout,i=r[\"line-join\"],a=r[\"line-cap\"],n=r[\"line-miter-limit\"],d=r[\"line-round-limit\"],s=0,u=loadGeometry(e,LINE_DISTANCE_BUFFER_BITS);s=2&&e[l-1].equals(e[l-2]);)l--;if(!(l<(u?3:2))){\"bevel\"===r&&(a=1.05);var o=SHARP_CORNER_OFFSET*(EXTENT/(512*this.overscaling)),p=e[0],c=this.arrays,_=c.prepareSegment(10*l);this.distance=0;var y,h,m,E,x,C,v,A=i,f=u?\"butt\":i,L=!0;this.e1=this.e2=this.e3=-1,u&&(y=e[l-2],x=p.sub(y)._unit()._perp());for(var V=0;V0){var b=y.dist(h);if(b>2*o){var R=y.sub(y.sub(h)._mult(o/b)._round());d.distance+=R.dist(h),d.addCurrentVertex(R,d.distance,E.mult(1),0,0,!1,_),h=R}}var g=h&&m,F=g?r:m?A:f;if(g&&\"round\"===F&&(Ia&&(F=\"bevel\"),\"bevel\"===F&&(I>2&&(F=\"flipbevel\"),I100)S=x.clone().mult(-1);else{var B=E.x*x.y-E.y*x.x>0?-1:1,k=I*E.add(x).mag()/E.sub(x).mag();S._perp()._mult(k*B)}d.addCurrentVertex(y,d.distance,S,0,0,!1,_),d.addCurrentVertex(y,d.distance,S.mult(-1),0,0,!1,_)}else if(\"bevel\"===F||\"fakeround\"===F){var D=E.x*x.y-E.y*x.x>0,P=-Math.sqrt(I*I-1);if(D?(v=0,C=P):(C=0,v=P),L||d.addCurrentVertex(y,d.distance,E,C,v,!1,_),\"fakeround\"===F){for(var U=Math.floor(8*(.5-(T-.5))),q=void 0,M=0;M=0;O--)q=E.mult((O+1)/(U+1))._add(x)._unit(),d.addPieSliceVertex(y,d.distance,q,D,_)}m&&d.addCurrentVertex(y,d.distance,x,-C,-v,!1,_)}else\"butt\"===F?(L||d.addCurrentVertex(y,d.distance,E,0,0,!1,_),m&&d.addCurrentVertex(y,d.distance,x,0,0,!1,_)):\"square\"===F?(L||(d.addCurrentVertex(y,d.distance,E,1,1,!1,_),d.e1=d.e2=-1),m&&d.addCurrentVertex(y,d.distance,x,-1,-1,!1,_)):\"round\"===F&&(L||(d.addCurrentVertex(y,d.distance,E,0,0,!1,_),d.addCurrentVertex(y,d.distance,E,1,1,!0,_),d.e1=d.e2=-1),m&&(d.addCurrentVertex(y,d.distance,x,-1,-1,!0,_),d.addCurrentVertex(y,d.distance,x,0,0,!1,_)));if(N&&V2*o){var H=y.add(m.sub(y)._mult(o/X)._round());d.distance+=H.dist(y),d.addCurrentVertex(H,d.distance,x.mult(1),0,0,!1,_),y=H}}L=!1}c.populatePaintArrays(s)}},t.prototype.addCurrentVertex=function(e,t,r,i,a,n,d){var s,u=n?1:0,l=this.arrays,o=l.layoutVertexArray,p=l.elementArray;s=r.clone(),i&&s._sub(r.perp()._mult(i)),addLineVertex(o,e,s,u,0,i,t),this.e3=d.vertexLength++,this.e1>=0&&this.e2>=0&&(p.emplaceBack(this.e1,this.e2,this.e3),d.primitiveLength++),this.e1=this.e2,this.e2=this.e3,s=r.mult(-1),a&&s._sub(r.perp()._mult(a)),addLineVertex(o,e,s,u,1,-a,t),this.e3=d.vertexLength++,this.e1>=0&&this.e2>=0&&(p.emplaceBack(this.e1,this.e2,this.e3),d.primitiveLength++),this.e1=this.e2,this.e2=this.e3,t>MAX_LINE_DISTANCE/2&&(this.distance=0,this.addCurrentVertex(e,this.distance,r,i,a,n,d))},t.prototype.addPieSliceVertex=function(e,t,r,i,a){var n=i?1:0;r=r.mult(i?-1:1);var d=this.arrays,s=d.layoutVertexArray,u=d.elementArray;addLineVertex(s,e,r,0,n,0,t),this.e3=a.vertexLength++,this.e1>=0&&this.e2>=0&&(u.emplaceBack(this.e1,this.e2,this.e3),a.primitiveLength++),i?this.e2=this.e3:this.e1=this.e3},t}(Bucket);LineBucket.programInterface=lineInterface,module.exports=LineBucket;\n},{\"../bucket\":45,\"../element_array_type\":53,\"../extent\":54,\"../load_geometry\":56,\"../vertex_array_type\":60,\"vector-tile\":34}],50:[function(require,module,exports){\n\"use strict\";function addVertex(e,t,o,r,a,i,n,l,s,c,y){e.emplaceBack(t,o,Math.round(64*r),Math.round(64*a),i/4,n/4,10*(c||0),y,10*(l||0),10*Math.min(s||25,25))}function addCollisionBoxVertex(e,t,o,r,a){return e.emplaceBack(t.x,t.y,Math.round(o.x),Math.round(o.y),10*r,10*a)}var Point=require(\"point-geometry\"),ArrayGroup=require(\"../array_group\"),BufferGroup=require(\"../buffer_group\"),createVertexArrayType=require(\"../vertex_array_type\"),createElementArrayType=require(\"../element_array_type\"),EXTENT=require(\"../extent\"),Anchor=require(\"../../symbol/anchor\"),getAnchors=require(\"../../symbol/get_anchors\"),resolveTokens=require(\"../../util/token\"),Quads=require(\"../../symbol/quads\"),Shaping=require(\"../../symbol/shaping\"),resolveText=require(\"../../symbol/resolve_text\"),mergeLines=require(\"../../symbol/mergelines\"),clipLine=require(\"../../symbol/clip_line\"),util=require(\"../../util/util\"),scriptDetection=require(\"../../util/script_detection\"),loadGeometry=require(\"../load_geometry\"),CollisionFeature=require(\"../../symbol/collision_feature\"),findPoleOfInaccessibility=require(\"../../util/find_pole_of_inaccessibility\"),classifyRings=require(\"../../util/classify_rings\"),VectorTileFeature=require(\"vector-tile\").VectorTileFeature,rtlTextPlugin=require(\"../../source/rtl_text_plugin\"),shapeText=Shaping.shapeText,shapeIcon=Shaping.shapeIcon,WritingMode=Shaping.WritingMode,getGlyphQuads=Quads.getGlyphQuads,getIconQuads=Quads.getIconQuads,elementArrayType=createElementArrayType(),layoutVertexArrayType=createVertexArrayType([{name:\"a_pos_offset\",components:4,type:\"Int16\"},{name:\"a_texture_pos\",components:2,type:\"Uint16\"},{name:\"a_data\",components:4,type:\"Uint8\"}]),symbolInterfaces={glyph:{layoutVertexArrayType:layoutVertexArrayType,elementArrayType:elementArrayType,paintAttributes:[{name:\"a_fill_color\",property:\"text-color\",type:\"Uint8\"},{name:\"a_halo_color\",property:\"text-halo-color\",type:\"Uint8\"},{name:\"a_halo_width\",property:\"text-halo-width\",type:\"Uint16\",multiplier:10},{name:\"a_halo_blur\",property:\"text-halo-blur\",type:\"Uint16\",multiplier:10},{name:\"a_opacity\",property:\"text-opacity\",type:\"Uint8\",multiplier:255}]},icon:{layoutVertexArrayType:layoutVertexArrayType,elementArrayType:elementArrayType,paintAttributes:[{name:\"a_fill_color\",property:\"icon-color\",type:\"Uint8\"},{name:\"a_halo_color\",property:\"icon-halo-color\",type:\"Uint8\"},{name:\"a_halo_width\",property:\"icon-halo-width\",type:\"Uint16\",multiplier:10},{name:\"a_halo_blur\",property:\"icon-halo-blur\",type:\"Uint16\",multiplier:10},{name:\"a_opacity\",property:\"icon-opacity\",type:\"Uint8\",multiplier:255}]},collisionBox:{layoutVertexArrayType:createVertexArrayType([{name:\"a_pos\",components:2,type:\"Int16\"},{name:\"a_extrude\",components:2,type:\"Int16\"},{name:\"a_data\",components:2,type:\"Uint8\"}]),elementArrayType:createElementArrayType(2)}},SymbolBucket=function(e){var t=this;if(this.collisionBoxArray=e.collisionBoxArray,this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.index=e.index,this.sdfIcons=e.sdfIcons,this.iconsNeedLinear=e.iconsNeedLinear,this.adjustedTextSize=e.adjustedTextSize,this.adjustedIconSize=e.adjustedIconSize,this.fontstack=e.fontstack,e.arrays){this.buffers={};for(var o in e.arrays)e.arrays[o]&&(t.buffers[o]=new BufferGroup(symbolInterfaces[o],e.layers,e.zoom,e.arrays[o]))}};SymbolBucket.prototype.populate=function(e,t){var o=this,r=this.layers[0],a=r.layout,i=a[\"text-font\"],n=a[\"icon-image\"],l=i&&(!r.isLayoutValueFeatureConstant(\"text-field\")||a[\"text-field\"]),s=n;if(this.features=[],l||s){for(var c=t.iconDependencies,y=t.glyphDependencies,p=y[i]=y[i]||{},x=0;xEXTENT||i.y<0||i.y>EXTENT);if(!x||n){var l=n||f;r.addSymbolInstance(i,a,t,o,r.layers[0],l,r.collisionBoxArray,e.index,e.sourceLayerIndex,r.index,s,h,m,y,u,g,{zoom:r.zoom},e.properties)}};if(\"line\"===b)for(var S=0,T=clipLine(e.geometry,0,0,EXTENT,EXTENT);S=0;i--)if(o.dist(a[i])7*Math.PI/4)continue}else if(r&&a&&d<=3*Math.PI/4||d>5*Math.PI/4)continue}else if(r&&a&&(d<=Math.PI/2||d>3*Math.PI/2))continue;var m=u.tl,g=u.tr,f=u.bl,b=u.br,v=u.tex,I=u.anchorPoint,S=Math.max(y+Math.log(u.minScale)/Math.LN2,p),T=Math.min(y+Math.log(u.maxScale)/Math.LN2,25);if(!(T<=S)){S===p&&(S=0);var M=Math.round(u.glyphAngle/(2*Math.PI)*256),B=e.prepareSegment(4),A=B.vertexLength;addVertex(c,I.x,I.y,m.x,m.y,v.x,v.y,S,T,p,M),addVertex(c,I.x,I.y,g.x,g.y,v.x+v.w,v.y,S,T,p,M),addVertex(c,I.x,I.y,f.x,f.y,v.x,v.y+v.h,S,T,p,M),addVertex(c,I.x,I.y,b.x,b.y,v.x+v.w,v.y+v.h,S,T,p,M),s.emplaceBack(A,A+1,A+2),s.emplaceBack(A+1,A+2,A+3),B.vertexLength+=4,B.primitiveLength+=2}}e.populatePaintArrays(n)},SymbolBucket.prototype.addToDebugBuffers=function(e){for(var t=this,o=this.arrays.collisionBox,r=o.layoutVertexArray,a=o.elementArray,i=-e.angle,n=e.yStretch,l=0,s=t.symbolInstances;lSymbolBucket.MAX_INSTANCES&&util.warnOnce(\"Too many symbols being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907\"),z>SymbolBucket.MAX_INSTANCES&&util.warnOnce(\"Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907\");var _=(o[WritingMode.vertical]?WritingMode.vertical:0)|(o[WritingMode.horizontal]?WritingMode.horizontal:0);this.symbolInstances.push({textBoxStartIndex:M,textBoxEndIndex:B,iconBoxStartIndex:A,iconBoxEndIndex:z,glyphQuads:I,iconQuads:v,anchor:e,featureIndex:l,featureProperties:g,writingModes:_})},SymbolBucket.programInterfaces=symbolInterfaces,SymbolBucket.MAX_INSTANCES=65535,module.exports=SymbolBucket;\n},{\"../../source/rtl_text_plugin\":90,\"../../symbol/anchor\":157,\"../../symbol/clip_line\":159,\"../../symbol/collision_feature\":161,\"../../symbol/get_anchors\":163,\"../../symbol/mergelines\":166,\"../../symbol/quads\":167,\"../../symbol/resolve_text\":168,\"../../symbol/shaping\":169,\"../../util/classify_rings\":195,\"../../util/find_pole_of_inaccessibility\":201,\"../../util/script_detection\":209,\"../../util/token\":211,\"../../util/util\":212,\"../array_group\":44,\"../buffer_group\":52,\"../element_array_type\":53,\"../extent\":54,\"../load_geometry\":56,\"../vertex_array_type\":60,\"point-geometry\":26,\"vector-tile\":34}],51:[function(require,module,exports){\n\"use strict\";var AttributeType={Int8:\"BYTE\",Uint8:\"UNSIGNED_BYTE\",Int16:\"SHORT\",Uint16:\"UNSIGNED_SHORT\"},Buffer=function(e,t,r){this.arrayBuffer=e.arrayBuffer,this.length=e.length,this.attributes=t.members,this.itemSize=t.bytesPerElement,this.type=r,this.arrayType=t};Buffer.fromStructArray=function(e,t){return new Buffer(e.serialize(),e.constructor.serialize(),t)},Buffer.prototype.bind=function(e){var t=e[this.type];this.buffer?e.bindBuffer(t,this.buffer):(this.gl=e,this.buffer=e.createBuffer(),e.bindBuffer(t,this.buffer),e.bufferData(t,this.arrayBuffer,e.STATIC_DRAW),this.arrayBuffer=null)},Buffer.prototype.setVertexAttribPointers=function(e,t,r){for(var f=this,i=0;i0?t+2*e:e}function translate(e,t,r,i,a){if(!t[0]&&!t[1])return e;t=Point.convert(t),\"viewport\"===r&&t._rotate(-i);for(var n=[],s=0;sr.max||d.yr.max)&&util.warnOnce(\"Geometry exceeds allowed extent, reduce your vector tile buffer size\")}return u};\n},{\"../util/util\":212,\"./extent\":54}],57:[function(require,module,exports){\n\"use strict\";var createStructArrayType=require(\"../util/struct_array\"),PosArray=createStructArrayType({members:[{name:\"a_pos\",type:\"Int16\",components:2}]});module.exports=PosArray;\n},{\"../util/struct_array\":210}],58:[function(require,module,exports){\n\"use strict\";function getPaintAttributeValue(t,r,e,i){if(!t.zoomStops)return r.getPaintValue(t.property,e,i);var a=t.zoomStops.map(function(a){return r.getPaintValue(t.property,util.extend({},e,{zoom:a}),i)});return 1===a.length?a[0]:a}function normalizePaintAttribute(t,r){var e=t.name;e||(e=t.property.replace(r.type+\"-\",\"\").replace(/-/g,\"_\"));var i=\"color\"===r._paintSpecifications[t.property].type;return util.extend({name:\"a_\"+e,components:i?4:1,multiplier:i?255:1,dimensions:i?4:1},t)}var createVertexArrayType=require(\"./vertex_array_type\"),util=require(\"../util/util\"),ProgramConfiguration=function(){this.attributes=[],this.uniforms=[],this.interpolationUniforms=[],this.pragmas={vertex:{},fragment:{}},this.cacheKey=\"\"};ProgramConfiguration.createDynamic=function(t,r,e){for(var i=new ProgramConfiguration,a=0,n=t;a90||this.lat<-90)throw new Error(\"Invalid LngLat latitude value: must be between -90 and 90\")};LngLat.prototype.wrap=function(){return new LngLat(wrap(this.lng,-180,180),this.lat)},LngLat.prototype.toArray=function(){return[this.lng,this.lat]},LngLat.prototype.toString=function(){return\"LngLat(\"+this.lng+\", \"+this.lat+\")\"},LngLat.convert=function(t){if(t instanceof LngLat)return t;if(t&&t.hasOwnProperty(\"lng\")&&t.hasOwnProperty(\"lat\"))return new LngLat(t.lng,t.lat);if(Array.isArray(t)&&2===t.length)return new LngLat(t[0],t[1]);throw new Error(\"`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, or an array of [, ]\")},module.exports=LngLat;\n},{\"../util/util\":212}],63:[function(require,module,exports){\n\"use strict\";var LngLat=require(\"./lng_lat\"),LngLatBounds=function(t,n){t&&(n?this.setSouthWest(t).setNorthEast(n):4===t.length?this.setSouthWest([t[0],t[1]]).setNorthEast([t[2],t[3]]):this.setSouthWest(t[0]).setNorthEast(t[1]))};LngLatBounds.prototype.setNorthEast=function(t){return this._ne=LngLat.convert(t),this},LngLatBounds.prototype.setSouthWest=function(t){return this._sw=LngLat.convert(t),this},LngLatBounds.prototype.extend=function(t){var n,e,s=this._sw,o=this._ne;if(t instanceof LngLat)n=t,e=t;else{if(!(t instanceof LngLatBounds))return Array.isArray(t)?t.every(Array.isArray)?this.extend(LngLatBounds.convert(t)):this.extend(LngLat.convert(t)):this;if(n=t._sw,e=t._ne,!n||!e)return this}return s||o?(s.lng=Math.min(n.lng,s.lng),s.lat=Math.min(n.lat,s.lat),o.lng=Math.max(e.lng,o.lng),o.lat=Math.max(e.lat,o.lat)):(this._sw=new LngLat(n.lng,n.lat),this._ne=new LngLat(e.lng,e.lat)),this},LngLatBounds.prototype.getCenter=function(){return new LngLat((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},LngLatBounds.prototype.getSouthWest=function(){return this._sw},LngLatBounds.prototype.getNorthEast=function(){return this._ne},LngLatBounds.prototype.getNorthWest=function(){return new LngLat(this.getWest(),this.getNorth())},LngLatBounds.prototype.getSouthEast=function(){return new LngLat(this.getEast(),this.getSouth())},LngLatBounds.prototype.getWest=function(){return this._sw.lng},LngLatBounds.prototype.getSouth=function(){return this._sw.lat},LngLatBounds.prototype.getEast=function(){return this._ne.lng},LngLatBounds.prototype.getNorth=function(){return this._ne.lat},LngLatBounds.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},LngLatBounds.prototype.toString=function(){return\"LngLatBounds(\"+this._sw.toString()+\", \"+this._ne.toString()+\")\"},LngLatBounds.convert=function(t){return!t||t instanceof LngLatBounds?t:new LngLatBounds(t)},module.exports=LngLatBounds;\n},{\"./lng_lat\":62}],64:[function(require,module,exports){\n\"use strict\";var LngLat=require(\"./lng_lat\"),Point=require(\"point-geometry\"),Coordinate=require(\"./coordinate\"),util=require(\"../util/util\"),interp=require(\"../util/interpolate\"),TileCoord=require(\"../source/tile_coord\"),EXTENT=require(\"../data/extent\"),glmatrix=require(\"@mapbox/gl-matrix\"),vec4=glmatrix.vec4,mat4=glmatrix.mat4,mat2=glmatrix.mat2,Transform=function(t,i,o){this.tileSize=512,this._renderWorldCopies=void 0===o||o,this._minZoom=t||0,this._maxZoom=i||22,this.latRange=[-85.05113,85.05113],this.width=0,this.height=0,this._center=new LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0},prototypeAccessors={minZoom:{},maxZoom:{},worldSize:{},centerPoint:{},size:{},bearing:{},pitch:{},fov:{},zoom:{},center:{},unmodified:{},x:{},y:{},point:{}};prototypeAccessors.minZoom.get=function(){return this._minZoom},prototypeAccessors.minZoom.set=function(t){this._minZoom!==t&&(this._minZoom=t,this.zoom=Math.max(this.zoom,t))},prototypeAccessors.maxZoom.get=function(){return this._maxZoom},prototypeAccessors.maxZoom.set=function(t){this._maxZoom!==t&&(this._maxZoom=t,this.zoom=Math.min(this.zoom,t))},prototypeAccessors.worldSize.get=function(){return this.tileSize*this.scale},prototypeAccessors.centerPoint.get=function(){return this.size._div(2)},prototypeAccessors.size.get=function(){return new Point(this.width,this.height)},prototypeAccessors.bearing.get=function(){return-this.angle/Math.PI*180},prototypeAccessors.bearing.set=function(t){var i=-util.wrap(t,-180,180)*Math.PI/180;this.angle!==i&&(this._unmodified=!1,this.angle=i,this._calcMatrices(),this.rotationMatrix=mat2.create(),mat2.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},prototypeAccessors.pitch.get=function(){return this._pitch/Math.PI*180},prototypeAccessors.pitch.set=function(t){var i=util.clamp(t,0,60)/180*Math.PI;this._pitch!==i&&(this._unmodified=!1,this._pitch=i,this._calcMatrices())},prototypeAccessors.fov.get=function(){return this._fov/Math.PI*180},prototypeAccessors.fov.set=function(t){t=Math.max(.01,Math.min(60,t)),this._fov!==t&&(this._unmodified=!1,this._fov=t/180*Math.PI,this._calcMatrices())},prototypeAccessors.zoom.get=function(){return this._zoom},prototypeAccessors.zoom.set=function(t){var i=Math.min(Math.max(t,this.minZoom),this.maxZoom);this._zoom!==i&&(this._unmodified=!1,this._zoom=i,this.scale=this.zoomScale(i),this.tileZoom=Math.floor(i),this.zoomFraction=i-this.tileZoom,this._constrain(),this._calcMatrices())},prototypeAccessors.center.get=function(){return this._center},prototypeAccessors.center.set=function(t){t.lat===this._center.lat&&t.lng===this._center.lng||(this._unmodified=!1,this._center=t,this._constrain(),this._calcMatrices())},Transform.prototype.coveringZoomLevel=function(t){return(t.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/t.tileSize))},Transform.prototype.coveringTiles=function(t){var i=this.coveringZoomLevel(t),o=i;if(it.maxzoom&&(i=t.maxzoom);var e=this.pointCoordinate(this.centerPoint,i),r=new Point(e.column-.5,e.row-.5),n=[this.pointCoordinate(new Point(0,0),i),this.pointCoordinate(new Point(this.width,0),i),this.pointCoordinate(new Point(this.width,this.height),i),this.pointCoordinate(new Point(0,this.height),i)];return TileCoord.cover(i,n,t.reparseOverscaled?o:i,this._renderWorldCopies).sort(function(t,i){return r.dist(t)-r.dist(i)})},Transform.prototype.resize=function(t,i){this.width=t,this.height=i,this.pixelsToGLUnits=[2/t,-2/i],this._constrain(),this._calcMatrices()},prototypeAccessors.unmodified.get=function(){return this._unmodified},Transform.prototype.zoomScale=function(t){return Math.pow(2,t)},Transform.prototype.scaleZoom=function(t){return Math.log(t)/Math.LN2},Transform.prototype.project=function(t){return new Point(this.lngX(t.lng),this.latY(t.lat))},Transform.prototype.unproject=function(t){return new LngLat(this.xLng(t.x),this.yLat(t.y))},prototypeAccessors.x.get=function(){return this.lngX(this.center.lng)},prototypeAccessors.y.get=function(){return this.latY(this.center.lat)},prototypeAccessors.point.get=function(){return new Point(this.x,this.y)},Transform.prototype.lngX=function(t){return(180+t)*this.worldSize/360},Transform.prototype.latY=function(t){var i=180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360));return(180-i)*this.worldSize/360},Transform.prototype.xLng=function(t){return 360*t/this.worldSize-180},Transform.prototype.yLat=function(t){var i=180-360*t/this.worldSize;return 360/Math.PI*Math.atan(Math.exp(i*Math.PI/180))-90},Transform.prototype.setLocationAtPoint=function(t,i){var o=this.pointCoordinate(i)._sub(this.pointCoordinate(this.centerPoint));this.center=this.coordinateLocation(this.locationCoordinate(t)._sub(o))},Transform.prototype.locationPoint=function(t){return this.coordinatePoint(this.locationCoordinate(t))},Transform.prototype.pointLocation=function(t){return this.coordinateLocation(this.pointCoordinate(t))},Transform.prototype.locationCoordinate=function(t){return new Coordinate(this.lngX(t.lng)/this.tileSize,this.latY(t.lat)/this.tileSize,this.zoom).zoomTo(this.tileZoom)},Transform.prototype.coordinateLocation=function(t){var i=t.zoomTo(this.zoom);return new LngLat(this.xLng(i.column*this.tileSize),this.yLat(i.row*this.tileSize))},Transform.prototype.pointCoordinate=function(t,i){void 0===i&&(i=this.tileZoom);var o=0,e=[t.x,t.y,0,1],r=[t.x,t.y,1,1];vec4.transformMat4(e,e,this.pixelMatrixInverse),vec4.transformMat4(r,r,this.pixelMatrixInverse);var n=e[3],s=r[3],a=e[0]/n,h=r[0]/s,c=e[1]/n,m=r[1]/s,p=e[2]/n,l=r[2]/s,u=p===l?0:(o-p)/(l-p);return new Coordinate(interp(a,h,u)/this.tileSize,interp(c,m,u)/this.tileSize,this.zoom)._zoomTo(i)},Transform.prototype.coordinatePoint=function(t){var i=t.zoomTo(this.zoom),o=[i.column*this.tileSize,i.row*this.tileSize,0,1];return vec4.transformMat4(o,o,this.pixelMatrix),new Point(o[0]/o[3],o[1]/o[3])},Transform.prototype.calculatePosMatrix=function(t,i){var o=t.toCoordinate(i),e=this.worldSize/this.zoomScale(o.zoom),r=mat4.identity(new Float64Array(16));return mat4.translate(r,r,[o.column*e,o.row*e,0]),mat4.scale(r,r,[e/EXTENT,e/EXTENT,1]),mat4.multiply(r,this.projMatrix,r),new Float32Array(r)},Transform.prototype._constrain=function(){if(this.center&&this.width&&this.height&&!this._constraining){this._constraining=!0;var t,i,o,e,r,n,s,a,h=this.size,c=this._unmodified;this.latRange&&(t=this.latY(this.latRange[1]),i=this.latY(this.latRange[0]),r=i-ti&&(a=i-l)}if(this.lngRange){var u=this.x,f=h.x/2;u-fe&&(s=e-f)}void 0===s&&void 0===a||(this.center=this.unproject(new Point(void 0!==s?s:this.x,void 0!==a?a:this.y))),this._unmodified=c,this._constraining=!1}},Transform.prototype._calcMatrices=function(){if(this.height){this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height;var t=this._fov/2,i=Math.PI/2+this._pitch,o=Math.sin(t)*this.cameraToCenterDistance/Math.sin(Math.PI-i-t),e=Math.cos(Math.PI/2-this._pitch)*o+this.cameraToCenterDistance,r=1.01*e,n=new Float64Array(16);mat4.perspective(n,this._fov,this.width/this.height,1,r),mat4.scale(n,n,[1,-1,1]),mat4.translate(n,n,[0,0,-this.cameraToCenterDistance]),mat4.rotateX(n,n,this._pitch),mat4.rotateZ(n,n,this.angle),mat4.translate(n,n,[-this.x,-this.y,0]);var s=this.worldSize/(2*Math.PI*6378137*Math.abs(Math.cos(this.center.lat*(Math.PI/180))));if(mat4.scale(n,n,[1,1,s,1]),this.projMatrix=n,n=mat4.create(),mat4.scale(n,n,[this.width/2,-this.height/2,1]),mat4.translate(n,n,[1,-1,0]),this.pixelMatrix=mat4.multiply(new Float64Array(16),n,this.projMatrix),n=mat4.invert(new Float64Array(16),this.pixelMatrix),!n)throw new Error(\"failed to invert matrix\");this.pixelMatrixInverse=n}},Object.defineProperties(Transform.prototype,prototypeAccessors),module.exports=Transform;\n},{\"../data/extent\":54,\"../source/tile_coord\":94,\"../util/interpolate\":204,\"../util/util\":212,\"./coordinate\":61,\"./lng_lat\":62,\"@mapbox/gl-matrix\":1,\"point-geometry\":26}],65:[function(require,module,exports){\n\"use strict\";var browser=require(\"./util/browser\"),mapboxgl=module.exports={};mapboxgl.version=require(\"../package.json\").version,mapboxgl.workerCount=Math.max(Math.floor(browser.hardwareConcurrency/2),1),mapboxgl.Map=require(\"./ui/map\"),mapboxgl.NavigationControl=require(\"./ui/control/navigation_control\"),mapboxgl.GeolocateControl=require(\"./ui/control/geolocate_control\"),mapboxgl.AttributionControl=require(\"./ui/control/attribution_control\"),mapboxgl.ScaleControl=require(\"./ui/control/scale_control\"),mapboxgl.FullscreenControl=require(\"./ui/control/fullscreen_control\"),mapboxgl.Popup=require(\"./ui/popup\"),mapboxgl.Marker=require(\"./ui/marker\"),mapboxgl.Style=require(\"./style/style\"),mapboxgl.LngLat=require(\"./geo/lng_lat\"),mapboxgl.LngLatBounds=require(\"./geo/lng_lat_bounds\"),mapboxgl.Point=require(\"point-geometry\"),mapboxgl.Evented=require(\"./util/evented\"),mapboxgl.supported=require(\"./util/browser\").supported;var config=require(\"./util/config\");mapboxgl.config=config;var rtlTextPlugin=require(\"./source/rtl_text_plugin\");mapboxgl.setRTLTextPlugin=rtlTextPlugin.setRTLTextPlugin,Object.defineProperty(mapboxgl,\"accessToken\",{get:function(){return config.ACCESS_TOKEN},set:function(o){config.ACCESS_TOKEN=o}});\n},{\"../package.json\":43,\"./geo/lng_lat\":62,\"./geo/lng_lat_bounds\":63,\"./source/rtl_text_plugin\":90,\"./style/style\":146,\"./ui/control/attribution_control\":173,\"./ui/control/fullscreen_control\":174,\"./ui/control/geolocate_control\":175,\"./ui/control/navigation_control\":177,\"./ui/control/scale_control\":178,\"./ui/map\":187,\"./ui/marker\":188,\"./ui/popup\":189,\"./util/browser\":192,\"./util/config\":196,\"./util/evented\":200,\"point-geometry\":26}],66:[function(require,module,exports){\n\"use strict\";function drawBackground(r,t,e){var a=r.gl,i=r.transform,n=i.tileSize,o=e.paint[\"background-color\"],l=e.paint[\"background-pattern\"],u=e.paint[\"background-opacity\"],f=!l&&1===o[3]&&1===u;if(r.isOpaquePass===f){a.disable(a.STENCIL_TEST),r.setDepthSublayer(0);var s;l?(s=r.useProgram(\"fillPattern\",r.basicFillProgramConfiguration),pattern.prepare(l,r,s),r.tileExtentPatternVAO.bind(a,s,r.tileExtentBuffer)):(s=r.useProgram(\"fill\",r.basicFillProgramConfiguration),a.uniform4fv(s.u_color,o),r.tileExtentVAO.bind(a,s,r.tileExtentBuffer)),a.uniform1f(s.u_opacity,u);for(var c=i.coveringTiles({tileSize:n}),g=0,p=c;g\":[24,[4,18,20,9,4,0]],\"?\":[18,[3,16,3,17,4,19,5,20,7,21,11,21,13,20,14,19,15,17,15,15,14,13,13,12,9,10,9,7,-1,-1,9,2,8,1,9,0,10,1,9,2]],\"@\":[27,[18,13,17,15,15,16,12,16,10,15,9,14,8,11,8,8,9,6,11,5,14,5,16,6,17,8,-1,-1,12,16,10,14,9,11,9,8,10,6,11,5,-1,-1,18,16,17,8,17,6,19,5,21,5,23,7,24,10,24,12,23,15,22,17,20,19,18,20,15,21,12,21,9,20,7,19,5,17,4,15,3,12,3,9,4,6,5,4,7,2,9,1,12,0,15,0,18,1,20,2,21,3,-1,-1,19,16,18,8,18,6,19,5]],A:[18,[9,21,1,0,-1,-1,9,21,17,0,-1,-1,4,7,14,7]],B:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,15,17,13,16,12,13,11,-1,-1,4,11,13,11,16,10,17,9,18,7,18,4,17,2,16,1,13,0,4,0]],C:[21,[18,16,17,18,15,20,13,21,9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5]],D:[21,[4,21,4,0,-1,-1,4,21,11,21,14,20,16,18,17,16,18,13,18,8,17,5,16,3,14,1,11,0,4,0]],E:[19,[4,21,4,0,-1,-1,4,21,17,21,-1,-1,4,11,12,11,-1,-1,4,0,17,0]],F:[18,[4,21,4,0,-1,-1,4,21,17,21,-1,-1,4,11,12,11]],G:[21,[18,16,17,18,15,20,13,21,9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,18,8,-1,-1,13,8,18,8]],H:[22,[4,21,4,0,-1,-1,18,21,18,0,-1,-1,4,11,18,11]],I:[8,[4,21,4,0]],J:[16,[12,21,12,5,11,2,10,1,8,0,6,0,4,1,3,2,2,5,2,7]],K:[21,[4,21,4,0,-1,-1,18,21,4,7,-1,-1,9,12,18,0]],L:[17,[4,21,4,0,-1,-1,4,0,16,0]],M:[24,[4,21,4,0,-1,-1,4,21,12,0,-1,-1,20,21,12,0,-1,-1,20,21,20,0]],N:[22,[4,21,4,0,-1,-1,4,21,18,0,-1,-1,18,21,18,0]],O:[22,[9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,19,8,19,13,18,16,17,18,15,20,13,21,9,21]],P:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,14,17,12,16,11,13,10,4,10]],Q:[22,[9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,19,8,19,13,18,16,17,18,15,20,13,21,9,21,-1,-1,12,4,18,-2]],R:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,15,17,13,16,12,13,11,4,11,-1,-1,11,11,18,0]],S:[20,[17,18,15,20,12,21,8,21,5,20,3,18,3,16,4,14,5,13,7,12,13,10,15,9,16,8,17,6,17,3,15,1,12,0,8,0,5,1,3,3]],T:[16,[8,21,8,0,-1,-1,1,21,15,21]],U:[22,[4,21,4,6,5,3,7,1,10,0,12,0,15,1,17,3,18,6,18,21]],V:[18,[1,21,9,0,-1,-1,17,21,9,0]],W:[24,[2,21,7,0,-1,-1,12,21,7,0,-1,-1,12,21,17,0,-1,-1,22,21,17,0]],X:[20,[3,21,17,0,-1,-1,17,21,3,0]],Y:[18,[1,21,9,11,9,0,-1,-1,17,21,9,11]],Z:[20,[17,21,3,0,-1,-1,3,21,17,21,-1,-1,3,0,17,0]],\"[\":[14,[4,25,4,-7,-1,-1,5,25,5,-7,-1,-1,4,25,11,25,-1,-1,4,-7,11,-7]],\"\\\\\":[14,[0,21,14,-3]],\"]\":[14,[9,25,9,-7,-1,-1,10,25,10,-7,-1,-1,3,25,10,25,-1,-1,3,-7,10,-7]],\"^\":[16,[6,15,8,18,10,15,-1,-1,3,12,8,17,13,12,-1,-1,8,17,8,0]],_:[16,[0,-2,16,-2]],\"`\":[10,[6,21,5,20,4,18,4,16,5,15,6,16,5,17]],a:[19,[15,14,15,0,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],b:[19,[4,21,4,0,-1,-1,4,11,6,13,8,14,11,14,13,13,15,11,16,8,16,6,15,3,13,1,11,0,8,0,6,1,4,3]],c:[18,[15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],d:[19,[15,21,15,0,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],e:[18,[3,8,15,8,15,10,14,12,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],f:[12,[10,21,8,21,6,20,5,17,5,0,-1,-1,2,14,9,14]],g:[19,[15,14,15,-2,14,-5,13,-6,11,-7,8,-7,6,-6,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],h:[19,[4,21,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0]],i:[8,[3,21,4,20,5,21,4,22,3,21,-1,-1,4,14,4,0]],j:[10,[5,21,6,20,7,21,6,22,5,21,-1,-1,6,14,6,-3,5,-6,3,-7,1,-7]],k:[17,[4,21,4,0,-1,-1,14,14,4,4,-1,-1,8,8,15,0]],l:[8,[4,21,4,0]],m:[30,[4,14,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0,-1,-1,15,10,18,13,20,14,23,14,25,13,26,10,26,0]],n:[19,[4,14,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0]],o:[19,[8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3,16,6,16,8,15,11,13,13,11,14,8,14]],p:[19,[4,14,4,-7,-1,-1,4,11,6,13,8,14,11,14,13,13,15,11,16,8,16,6,15,3,13,1,11,0,8,0,6,1,4,3]],q:[19,[15,14,15,-7,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],r:[13,[4,14,4,0,-1,-1,4,8,5,11,7,13,9,14,12,14]],s:[17,[14,11,13,13,10,14,7,14,4,13,3,11,4,9,6,8,11,7,13,6,14,4,14,3,13,1,10,0,7,0,4,1,3,3]],t:[12,[5,21,5,4,6,1,8,0,10,0,-1,-1,2,14,9,14]],u:[19,[4,14,4,4,5,1,7,0,10,0,12,1,15,4,-1,-1,15,14,15,0]],v:[16,[2,14,8,0,-1,-1,14,14,8,0]],w:[22,[3,14,7,0,-1,-1,11,14,7,0,-1,-1,11,14,15,0,-1,-1,19,14,15,0]],x:[17,[3,14,14,0,-1,-1,14,14,3,0]],y:[16,[2,14,8,0,-1,-1,14,14,8,0,6,-4,4,-6,2,-7,1,-7]],z:[17,[14,14,3,0,-1,-1,3,14,14,14,-1,-1,3,0,14,0]],\"{\":[14,[9,25,7,24,6,23,5,21,5,19,6,17,7,16,8,14,8,12,6,10,-1,-1,7,24,6,22,6,20,7,18,8,17,9,15,9,13,8,11,4,9,8,7,9,5,9,3,8,1,7,0,6,-2,6,-4,7,-6,-1,-1,6,8,8,6,8,4,7,2,6,1,5,-1,5,-3,6,-5,7,-6,9,-7]],\"|\":[8,[4,25,4,-7]],\"}\":[14,[5,25,7,24,8,23,9,21,9,19,8,17,7,16,6,14,6,12,8,10,-1,-1,7,24,8,22,8,20,7,18,6,17,5,15,5,13,6,11,10,9,6,7,5,5,5,3,6,1,7,0,8,-2,8,-4,7,-6,-1,-1,8,8,6,6,6,4,7,2,8,1,9,-1,9,-3,8,-5,7,-6,5,-7]],\"~\":[24,[3,6,3,8,4,11,6,12,8,12,10,11,14,8,16,7,18,7,20,8,21,10,-1,-1,3,8,4,10,6,11,8,11,10,10,14,7,16,6,18,6,20,7,21,10,21,12]]};\n},{\"../data/buffer\":51,\"../data/extent\":54,\"../data/pos_array\":57,\"../util/browser\":192,\"./vertex_array_object\":80,\"@mapbox/gl-matrix\":1}],70:[function(require,module,exports){\n\"use strict\";function drawFill(t,e,r,i){var a=t.gl;a.enable(a.STENCIL_TEST);var l=!r.paint[\"fill-pattern\"]&&r.isPaintValueFeatureConstant(\"fill-color\")&&r.isPaintValueFeatureConstant(\"fill-opacity\")&&1===r.paint[\"fill-color\"][3]&&1===r.paint[\"fill-opacity\"];t.isOpaquePass===l&&(t.setDepthSublayer(1),drawFillTiles(t,e,r,i,drawFillTile)),!t.isOpaquePass&&r.paint[\"fill-antialias\"]&&(t.lineWidth(2),t.depthMask(!1),t.setDepthSublayer(r.getPaintProperty(\"fill-outline-color\")?2:0),drawFillTiles(t,e,r,i,drawStrokeTile))}function drawFillTiles(t,e,r,i,a){for(var l=!0,n=0,o=i;n0?1/(1-r):1+r}function saturationFactor(r){return r>0?1-1/(1.001-r):-r}function getFadeValues(r,t,e,a){var i=e.paint[\"raster-fade-duration\"];if(r.sourceCache&&i>0){var o=Date.now(),n=(o-r.timeAdded)/i,u=t?(o-t.timeAdded)/i:-1,s=r.sourceCache.getSource(),c=a.coveringZoomLevel({tileSize:s.tileSize,roundZoom:s.roundZoom}),f=!t||Math.abs(t.coord.z-c)>Math.abs(r.coord.z-c),d=f&&r.refreshedUponExpiration?1:util.clamp(f?n:1-u,0,1);return r.refreshedUponExpiration&&n>=1&&(r.refreshedUponExpiration=!1),t?{opacity:1,mix:1-d}:{opacity:d,mix:0}}return{opacity:1,mix:0}}var util=require(\"../util/util\");module.exports=drawRaster;\n},{\"../util/util\":212}],74:[function(require,module,exports){\n\"use strict\";function drawSymbols(e,t,a,i){if(!e.isOpaquePass){var o=!(a.layout[\"text-allow-overlap\"]||a.layout[\"icon-allow-overlap\"]||a.layout[\"text-ignore-placement\"]||a.layout[\"icon-ignore-placement\"]),r=e.gl;o?r.disable(r.STENCIL_TEST):r.enable(r.STENCIL_TEST),e.setDepthSublayer(0),e.depthMask(!1),drawLayerSymbols(e,t,a,i,!1,a.paint[\"icon-translate\"],a.paint[\"icon-translate-anchor\"],a.layout[\"icon-rotation-alignment\"],a.layout[\"icon-rotation-alignment\"],a.layout[\"icon-size\"]),drawLayerSymbols(e,t,a,i,!0,a.paint[\"text-translate\"],a.paint[\"text-translate-anchor\"],a.layout[\"text-rotation-alignment\"],a.layout[\"text-pitch-alignment\"],a.layout[\"text-size\"]),t.map.showCollisionBoxes&&drawCollisionDebug(e,t,a,i)}}function drawLayerSymbols(e,t,a,i,o,r,n,l,s,u){if(o||!e.style.sprite||e.style.sprite.loaded()){var f=e.gl,m=\"map\"===l,p=\"map\"===s,c=p;c?f.enable(f.DEPTH_TEST):f.disable(f.DEPTH_TEST);for(var d,_,h=0,g=i;hthis.previousZoom;a--)r.changeTimes[a]=e,r.changeOpacities[a]=r.opacities[a];for(a=0;a<256;a++){var s=e-r.changeTimes[a],o=255*(i?s/i:1);a<=t?r.opacities[a]=r.changeOpacities[a]+o:r.opacities[a]=r.changeOpacities[a]-o}this.changed=!0,this.previousZoom=t},FrameHistory.prototype.bind=function(e){this.texture?(e.bindTexture(e.TEXTURE_2D,this.texture),this.changed&&(e.texSubImage2D(e.TEXTURE_2D,0,0,0,256,1,e.ALPHA,e.UNSIGNED_BYTE,this.array),this.changed=!1)):(this.texture=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.texture),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.NEAREST),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.NEAREST),e.texImage2D(e.TEXTURE_2D,0,e.ALPHA,256,1,0,e.ALPHA,e.UNSIGNED_BYTE,this.array))},module.exports=FrameHistory;\n},{}],76:[function(require,module,exports){\n\"use strict\";var util=require(\"../util/util\"),LineAtlas=function(t,i){this.width=t,this.height=i,this.nextRow=0,this.bytes=4,this.data=new Uint8Array(this.width*this.height*this.bytes),this.positions={}};LineAtlas.prototype.setSprite=function(t){this.sprite=t},LineAtlas.prototype.getDash=function(t,i){var e=t.join(\",\")+i;return this.positions[e]||(this.positions[e]=this.addDash(t,i)),this.positions[e]},LineAtlas.prototype.addDash=function(t,i){var e=this,h=i?7:0,s=2*h+1,a=128;if(this.nextRow+s>this.height)return util.warnOnce(\"LineAtlas out of space\"),null;for(var r=0,n=0;n0?r.pop():null},Painter.prototype.getViewportTexture=function(e,r){var t=this.reusableTextures.viewport;if(t)return t.width===e&&t.height===r?t:(this.gl.deleteTexture(t),void(this.reusableTextures.viewport=null))},Painter.prototype.lineWidth=function(e){this.gl.lineWidth(util.clamp(e,this.lineWidthRange[0],this.lineWidthRange[1]))},Painter.prototype.showOverdrawInspector=function(e){if(e||this._showOverdrawInspector){this._showOverdrawInspector=e;var r=this.gl;if(e){r.blendFunc(r.CONSTANT_COLOR,r.ONE);var t=8,i=1/t;r.blendColor(i,i,i,0),r.clearColor(0,0,0,1),r.clear(r.COLOR_BUFFER_BIT)}else r.blendFunc(r.ONE,r.ONE_MINUS_SRC_ALPHA)}},Painter.prototype.createProgram=function(e,r){var t=this.gl,i=t.createProgram(),a=shaders[e],s=\"#define MAPBOX_GL_JS\\n#define DEVICE_PIXEL_RATIO \"+browser.devicePixelRatio.toFixed(1)+\"\\n\";this._showOverdrawInspector&&(s+=\"#define OVERDRAW_INSPECTOR;\\n\");var o=r.applyPragmas(s+shaders.prelude.fragmentSource+a.fragmentSource,\"fragment\"),n=r.applyPragmas(s+shaders.prelude.vertexSource+a.vertexSource,\"vertex\"),l=t.createShader(t.FRAGMENT_SHADER);t.shaderSource(l,o),t.compileShader(l),t.attachShader(i,l);var h=t.createShader(t.VERTEX_SHADER);t.shaderSource(h,n),t.compileShader(h),t.attachShader(i,h),t.linkProgram(i);for(var u=t.getProgramParameter(i,t.ACTIVE_ATTRIBUTES),c={program:i,numAttributes:u},p=0;p>16,n>>16),o.uniform2f(i.u_pixel_coord_lower,65535&u,65535&n)};\n},{\"../source/pixels_to_tile_units\":87}],79:[function(require,module,exports){\n\"use strict\";var path=require(\"path\");module.exports={prelude:{fragmentSource:\"#ifdef GL_ES\\nprecision mediump float;\\n#else\\n\\n#if !defined(lowp)\\n#define lowp\\n#endif\\n\\n#if !defined(mediump)\\n#define mediump\\n#endif\\n\\n#if !defined(highp)\\n#define highp\\n#endif\\n\\n#endif\\n\",vertexSource:\"#ifdef GL_ES\\nprecision highp float;\\n#else\\n\\n#if !defined(lowp)\\n#define lowp\\n#endif\\n\\n#if !defined(mediump)\\n#define mediump\\n#endif\\n\\n#if !defined(highp)\\n#define highp\\n#endif\\n\\n#endif\\n\\nfloat evaluate_zoom_function_1(const vec4 values, const float t) {\\n if (t < 1.0) {\\n return mix(values[0], values[1], t);\\n } else if (t < 2.0) {\\n return mix(values[1], values[2], t - 1.0);\\n } else {\\n return mix(values[2], values[3], t - 2.0);\\n }\\n}\\nvec4 evaluate_zoom_function_4(const vec4 value0, const vec4 value1, const vec4 value2, const vec4 value3, const float t) {\\n if (t < 1.0) {\\n return mix(value0, value1, t);\\n } else if (t < 2.0) {\\n return mix(value1, value2, t - 1.0);\\n } else {\\n return mix(value2, value3, t - 2.0);\\n }\\n}\\n\\n\\n// To minimize the number of attributes needed in the mapbox-gl-native shaders,\\n// we encode a 4-component color into a pair of floats (i.e. a vec2) as follows:\\n// [ floor(color.r * 255) * 256 + color.g * 255,\\n// floor(color.b * 255) * 256 + color.g * 255 ]\\nvec4 decode_color(const vec2 encodedColor) {\\n float r = floor(encodedColor[0]/256.0)/255.0;\\n float g = (encodedColor[0] - r*256.0*255.0)/255.0;\\n float b = floor(encodedColor[1]/256.0)/255.0;\\n float a = (encodedColor[1] - b*256.0*255.0)/255.0;\\n return vec4(r, g, b, a);\\n}\\n\\n// Unpack a pair of paint values and interpolate between them.\\nfloat unpack_mix_vec2(const vec2 packedValue, const float t) {\\n return mix(packedValue[0], packedValue[1], t);\\n}\\n\\n// Unpack a pair of paint values and interpolate between them.\\nvec4 unpack_mix_vec4(const vec4 packedColors, const float t) {\\n vec4 minColor = decode_color(vec2(packedColors[0], packedColors[1]));\\n vec4 maxColor = decode_color(vec2(packedColors[2], packedColors[3]));\\n return mix(minColor, maxColor, t);\\n}\\n\\n// The offset depends on how many pixels are between the world origin and the edge of the tile:\\n// vec2 offset = mod(pixel_coord, size)\\n//\\n// At high zoom levels there are a ton of pixels between the world origin and the edge of the tile.\\n// The glsl spec only guarantees 16 bits of precision for highp floats. We need more than that.\\n//\\n// The pixel_coord is passed in as two 16 bit values:\\n// pixel_coord_upper = floor(pixel_coord / 2^16)\\n// pixel_coord_lower = mod(pixel_coord, 2^16)\\n//\\n// The offset is calculated in a series of steps that should preserve this precision:\\nvec2 get_pattern_pos(const vec2 pixel_coord_upper, const vec2 pixel_coord_lower,\\n const vec2 pattern_size, const float tile_units_to_pixels, const vec2 pos) {\\n\\n vec2 offset = mod(mod(mod(pixel_coord_upper, pattern_size) * 256.0, pattern_size) * 256.0 + pixel_coord_lower, pattern_size);\\n return (tile_units_to_pixels * pos + offset) / pattern_size;\\n}\\n\"},circle:{fragmentSource:\"#pragma mapbox: define lowp 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 lowp vec4 stroke_color\\n#pragma mapbox: define mediump float stroke_width\\n#pragma mapbox: define lowp float stroke_opacity\\n\\nvarying vec2 v_extrude;\\nvarying lowp float v_antialiasblur;\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp 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 lowp vec4 stroke_color\\n #pragma mapbox: initialize mediump float stroke_width\\n #pragma mapbox: initialize lowp float stroke_opacity\\n\\n float extrude_length = length(v_extrude);\\n float antialiased_blur = -max(blur, v_antialiasblur);\\n\\n float opacity_t = smoothstep(0.0, antialiased_blur, extrude_length - 1.0);\\n\\n float color_t = stroke_width < 0.01 ? 0.0 : smoothstep(\\n antialiased_blur,\\n 0.0,\\n extrude_length - radius / (radius + stroke_width)\\n );\\n\\n gl_FragColor = opacity_t * mix(color * opacity, stroke_color * stroke_opacity, color_t);\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform bool u_scale_with_map;\\nuniform vec2 u_extrude_scale;\\n\\nattribute vec2 a_pos;\\n\\n#pragma mapbox: define lowp 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 lowp vec4 stroke_color\\n#pragma mapbox: define mediump float stroke_width\\n#pragma mapbox: define lowp float stroke_opacity\\n\\nvarying vec2 v_extrude;\\nvarying lowp float v_antialiasblur;\\n\\nvoid main(void) {\\n #pragma mapbox: initialize lowp 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 lowp vec4 stroke_color\\n #pragma mapbox: initialize mediump float stroke_width\\n #pragma mapbox: initialize lowp float stroke_opacity\\n\\n // unencode the extrusion vector that we snuck into the a_pos vector\\n v_extrude = vec2(mod(a_pos, 2.0) * 2.0 - 1.0);\\n\\n vec2 extrude = v_extrude * (radius + stroke_width) * u_extrude_scale;\\n // multiply a_pos by 0.5, since we had it * 2 in order to sneak\\n // in extrusion data\\n gl_Position = u_matrix * vec4(floor(a_pos * 0.5), 0, 1);\\n\\n if (u_scale_with_map) {\\n gl_Position.xy += extrude;\\n } else {\\n gl_Position.xy += extrude * gl_Position.w;\\n }\\n\\n // This is a minimum blur distance that serves as a faux-antialiasing for\\n // the circle. since blur is a ratio of the circle's size and the intent is\\n // to keep the blur at roughly 1px, the two are inversely related.\\n v_antialiasblur = 1.0 / DEVICE_PIXEL_RATIO / (radius + stroke_width);\\n}\\n\"},collisionBox:{fragmentSource:\"uniform float u_zoom;\\nuniform float u_maxzoom;\\n\\nvarying float v_max_zoom;\\nvarying float v_placement_zoom;\\n\\nvoid main() {\\n\\n float alpha = 0.5;\\n\\n gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0) * alpha;\\n\\n if (v_placement_zoom > u_zoom) {\\n gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0) * alpha;\\n }\\n\\n if (u_zoom >= v_max_zoom) {\\n gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0) * alpha * 0.25;\\n }\\n\\n if (v_placement_zoom >= u_maxzoom) {\\n gl_FragColor = vec4(0.0, 0.0, 1.0, 1.0) * alpha * 0.2;\\n }\\n}\\n\",vertexSource:\"attribute vec2 a_pos;\\nattribute vec2 a_extrude;\\nattribute vec2 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform float u_scale;\\n\\nvarying float v_max_zoom;\\nvarying float v_placement_zoom;\\n\\nvoid main() {\\n gl_Position = u_matrix * vec4(a_pos + a_extrude / u_scale, 0.0, 1.0);\\n\\n v_max_zoom = a_data.x;\\n v_placement_zoom = a_data.y;\\n}\\n\"},debug:{fragmentSource:\"uniform lowp vec4 u_color;\\n\\nvoid main() {\\n gl_FragColor = u_color;\\n}\\n\",vertexSource:\"attribute vec2 a_pos;\\n\\nuniform mat4 u_matrix;\\n\\nvoid main() {\\n gl_Position = u_matrix * vec4(a_pos, step(32767.0, a_pos.x), 1);\\n}\\n\"},fill:{fragmentSource:\"#pragma mapbox: define lowp vec4 color\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp vec4 color\\n #pragma mapbox: initialize lowp float opacity\\n\\n gl_FragColor = color * opacity;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"attribute vec2 a_pos;\\n\\nuniform mat4 u_matrix;\\n\\n#pragma mapbox: define lowp vec4 color\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp vec4 color\\n #pragma mapbox: initialize lowp float opacity\\n\\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\\n}\\n\"},fillOutline:{fragmentSource:\"#pragma mapbox: define lowp vec4 outline_color\\n#pragma mapbox: define lowp float opacity\\n\\nvarying vec2 v_pos;\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp vec4 outline_color\\n #pragma mapbox: initialize lowp float opacity\\n\\n float dist = length(v_pos - gl_FragCoord.xy);\\n float alpha = smoothstep(1.0, 0.0, dist);\\n gl_FragColor = outline_color * (alpha * opacity);\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"attribute vec2 a_pos;\\n\\nuniform mat4 u_matrix;\\nuniform vec2 u_world;\\n\\nvarying vec2 v_pos;\\n\\n#pragma mapbox: define lowp vec4 outline_color\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp vec4 outline_color\\n #pragma mapbox: initialize lowp float opacity\\n\\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\\n v_pos = (gl_Position.xy / gl_Position.w + 1.0) / 2.0 * u_world;\\n}\\n\"},fillOutlinePattern:{fragmentSource:\"uniform vec2 u_pattern_tl_a;\\nuniform vec2 u_pattern_br_a;\\nuniform vec2 u_pattern_tl_b;\\nuniform vec2 u_pattern_br_b;\\nuniform float u_mix;\\n\\nuniform sampler2D u_image;\\n\\nvarying vec2 v_pos_a;\\nvarying vec2 v_pos_b;\\nvarying vec2 v_pos;\\n\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float opacity\\n\\n vec2 imagecoord = mod(v_pos_a, 1.0);\\n vec2 pos = mix(u_pattern_tl_a, u_pattern_br_a, imagecoord);\\n vec4 color1 = texture2D(u_image, pos);\\n\\n vec2 imagecoord_b = mod(v_pos_b, 1.0);\\n vec2 pos2 = mix(u_pattern_tl_b, u_pattern_br_b, imagecoord_b);\\n vec4 color2 = texture2D(u_image, pos2);\\n\\n // find distance to outline for alpha interpolation\\n\\n float dist = length(v_pos - gl_FragCoord.xy);\\n float alpha = smoothstep(1.0, 0.0, dist);\\n\\n\\n gl_FragColor = mix(color1, color2, u_mix) * alpha * opacity;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform vec2 u_world;\\nuniform vec2 u_pattern_size_a;\\nuniform vec2 u_pattern_size_b;\\nuniform vec2 u_pixel_coord_upper;\\nuniform vec2 u_pixel_coord_lower;\\nuniform float u_scale_a;\\nuniform float u_scale_b;\\nuniform float u_tile_units_to_pixels;\\n\\nattribute vec2 a_pos;\\n\\nvarying vec2 v_pos_a;\\nvarying vec2 v_pos_b;\\nvarying vec2 v_pos;\\n\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float opacity\\n\\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\\n\\n 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);\\n 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);\\n\\n v_pos = (gl_Position.xy / gl_Position.w + 1.0) / 2.0 * u_world;\\n}\\n\"},fillPattern:{fragmentSource:\"uniform vec2 u_pattern_tl_a;\\nuniform vec2 u_pattern_br_a;\\nuniform vec2 u_pattern_tl_b;\\nuniform vec2 u_pattern_br_b;\\nuniform float u_mix;\\n\\nuniform sampler2D u_image;\\n\\nvarying vec2 v_pos_a;\\nvarying vec2 v_pos_b;\\n\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float opacity\\n\\n vec2 imagecoord = mod(v_pos_a, 1.0);\\n vec2 pos = mix(u_pattern_tl_a, u_pattern_br_a, imagecoord);\\n vec4 color1 = texture2D(u_image, pos);\\n\\n vec2 imagecoord_b = mod(v_pos_b, 1.0);\\n vec2 pos2 = mix(u_pattern_tl_b, u_pattern_br_b, imagecoord_b);\\n vec4 color2 = texture2D(u_image, pos2);\\n\\n gl_FragColor = mix(color1, color2, u_mix) * opacity;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform vec2 u_pattern_size_a;\\nuniform vec2 u_pattern_size_b;\\nuniform vec2 u_pixel_coord_upper;\\nuniform vec2 u_pixel_coord_lower;\\nuniform float u_scale_a;\\nuniform float u_scale_b;\\nuniform float u_tile_units_to_pixels;\\n\\nattribute vec2 a_pos;\\n\\nvarying vec2 v_pos_a;\\nvarying vec2 v_pos_b;\\n\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float opacity\\n\\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\\n\\n 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);\\n 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);\\n}\\n\"},fillExtrusion:{fragmentSource:\"varying vec4 v_color;\\n#pragma mapbox: define lowp float base\\n#pragma mapbox: define lowp float height\\n#pragma mapbox: define lowp vec4 color\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float base\\n #pragma mapbox: initialize lowp float height\\n #pragma mapbox: initialize lowp vec4 color\\n\\n gl_FragColor = v_color;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform vec3 u_lightcolor;\\nuniform lowp vec3 u_lightpos;\\nuniform lowp float u_lightintensity;\\n\\nattribute vec2 a_pos;\\nattribute vec3 a_normal;\\nattribute float a_edgedistance;\\n\\nvarying vec4 v_color;\\n\\n#pragma mapbox: define lowp float base\\n#pragma mapbox: define lowp float height\\n\\n#pragma mapbox: define lowp vec4 color\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float base\\n #pragma mapbox: initialize lowp float height\\n #pragma mapbox: initialize lowp vec4 color\\n\\n float ed = a_edgedistance; // use each attrib in order to not trip a VAO assert\\n float t = mod(a_normal.x, 2.0);\\n\\n gl_Position = u_matrix * vec4(a_pos, t > 0.0 ? height : base, 1);\\n\\n // Relative luminance (how dark/bright is the surface color?)\\n float colorvalue = color.r * 0.2126 + color.g * 0.7152 + color.b * 0.0722;\\n\\n v_color = vec4(0.0, 0.0, 0.0, 1.0);\\n\\n // Add slight ambient lighting so no extrusions are totally black\\n vec4 ambientlight = vec4(0.03, 0.03, 0.03, 1.0);\\n color += ambientlight;\\n\\n // Calculate cos(theta), where theta is the angle between surface normal and diffuse light ray\\n float directional = clamp(dot(a_normal / 16384.0, u_lightpos), 0.0, 1.0);\\n\\n // Adjust directional so that\\n // the range of values for highlight/shading is narrower\\n // with lower light intensity\\n // and with lighter/brighter surface colors\\n directional = mix((1.0 - u_lightintensity), max((1.0 - colorvalue + u_lightintensity), 1.0), directional);\\n\\n // Add gradient along z axis of side surfaces\\n if (a_normal.y != 0.0) {\\n directional *= clamp((t + base) * pow(height / 150.0, 0.5), mix(0.7, 0.98, 1.0 - u_lightintensity), 1.0);\\n }\\n\\n // Assign final color based on surface + ambient light color, diffuse light directional, and light color\\n // with lower bounds adjusted to hue of light\\n // so that shading is tinted with the complementary (opposite) color to the light color\\n v_color.r += clamp(color.r * directional * u_lightcolor.r, mix(0.0, 0.3, 1.0 - u_lightcolor.r), 1.0);\\n v_color.g += clamp(color.g * directional * u_lightcolor.g, mix(0.0, 0.3, 1.0 - u_lightcolor.g), 1.0);\\n v_color.b += clamp(color.b * directional * u_lightcolor.b, mix(0.0, 0.3, 1.0 - u_lightcolor.b), 1.0);\\n}\\n\"},fillExtrusionPattern:{fragmentSource:\"uniform vec2 u_pattern_tl_a;\\nuniform vec2 u_pattern_br_a;\\nuniform vec2 u_pattern_tl_b;\\nuniform vec2 u_pattern_br_b;\\nuniform float u_mix;\\n\\nuniform sampler2D u_image;\\n\\nvarying vec2 v_pos_a;\\nvarying vec2 v_pos_b;\\nvarying vec4 v_lighting;\\n\\n#pragma mapbox: define lowp float base\\n#pragma mapbox: define lowp float height\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float base\\n #pragma mapbox: initialize lowp float height\\n\\n vec2 imagecoord = mod(v_pos_a, 1.0);\\n vec2 pos = mix(u_pattern_tl_a, u_pattern_br_a, imagecoord);\\n vec4 color1 = texture2D(u_image, pos);\\n\\n vec2 imagecoord_b = mod(v_pos_b, 1.0);\\n vec2 pos2 = mix(u_pattern_tl_b, u_pattern_br_b, imagecoord_b);\\n vec4 color2 = texture2D(u_image, pos2);\\n\\n vec4 mixedColor = mix(color1, color2, u_mix);\\n\\n gl_FragColor = mixedColor * v_lighting;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform vec2 u_pattern_size_a;\\nuniform vec2 u_pattern_size_b;\\nuniform vec2 u_pixel_coord_upper;\\nuniform vec2 u_pixel_coord_lower;\\nuniform float u_scale_a;\\nuniform float u_scale_b;\\nuniform float u_tile_units_to_pixels;\\nuniform float u_height_factor;\\n\\nuniform vec3 u_lightcolor;\\nuniform lowp vec3 u_lightpos;\\nuniform lowp float u_lightintensity;\\n\\nattribute vec2 a_pos;\\nattribute vec3 a_normal;\\nattribute float a_edgedistance;\\n\\nvarying vec2 v_pos_a;\\nvarying vec2 v_pos_b;\\nvarying vec4 v_lighting;\\nvarying float v_directional;\\n\\n#pragma mapbox: define lowp float base\\n#pragma mapbox: define lowp float height\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float base\\n #pragma mapbox: initialize lowp float height\\n\\n float t = mod(a_normal.x, 2.0);\\n float z = t > 0.0 ? height : base;\\n\\n gl_Position = u_matrix * vec4(a_pos, z, 1);\\n\\n vec2 pos = a_normal.x == 1.0 && a_normal.y == 0.0 && a_normal.z == 16384.0\\n ? a_pos // extrusion top\\n : vec2(a_edgedistance, z * u_height_factor); // extrusion side\\n\\n 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, pos);\\n 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, pos);\\n\\n v_lighting = vec4(0.0, 0.0, 0.0, 1.0);\\n float directional = clamp(dot(a_normal / 16383.0, u_lightpos), 0.0, 1.0);\\n directional = mix((1.0 - u_lightintensity), max((0.5 + u_lightintensity), 1.0), directional);\\n\\n if (a_normal.y != 0.0) {\\n directional *= clamp((t + base) * pow(height / 150.0, 0.5), mix(0.7, 0.98, 1.0 - u_lightintensity), 1.0);\\n }\\n\\n v_lighting.rgb += clamp(directional * u_lightcolor, mix(vec3(0.0), vec3(0.3), 1.0 - u_lightcolor), vec3(1.0));\\n}\\n\"},extrusionTexture:{fragmentSource:\"uniform sampler2D u_texture;\\nuniform float u_opacity;\\n\\nvarying vec2 v_pos;\\n\\nvoid main() {\\n gl_FragColor = texture2D(u_texture, v_pos) * u_opacity;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(0.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform int u_xdim;\\nuniform int u_ydim;\\nattribute vec2 a_pos;\\nvarying vec2 v_pos;\\n\\nvoid main() {\\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\\n\\n v_pos.x = a_pos.x / float(u_xdim);\\n v_pos.y = 1.0 - a_pos.y / float(u_ydim);\\n}\\n\"},line:{fragmentSource:\"#pragma mapbox: define lowp vec4 color\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n\\nvarying vec2 v_width2;\\nvarying vec2 v_normal;\\nvarying float v_gamma_scale;\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp vec4 color\\n #pragma mapbox: initialize lowp float blur\\n #pragma mapbox: initialize lowp float opacity\\n\\n // Calculate the distance of the pixel from the line in pixels.\\n float dist = length(v_normal) * v_width2.s;\\n\\n // Calculate the antialiasing fade factor. This is either when fading in\\n // the line in case of an offset line (v_width2.t) or when fading out\\n // (v_width2.s)\\n float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\\n float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\\n\\n gl_FragColor = color * (alpha * opacity);\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"\\n\\n// the distance over which the line edge fades out.\\n// Retina devices need a smaller distance to avoid aliasing.\\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\\n\\n// floor(127 / 2) == 63.0\\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\\n// there are also \\\"special\\\" normals that have a bigger length (of up to 126 in\\n// this case).\\n// #define scale 63.0\\n#define scale 0.015873016\\n\\nattribute vec2 a_pos;\\nattribute vec4 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform mediump float u_ratio;\\nuniform mediump float u_width;\\nuniform vec2 u_gl_units_to_pixels;\\n\\nvarying vec2 v_normal;\\nvarying vec2 v_width2;\\nvarying float v_gamma_scale;\\n\\n#pragma mapbox: define lowp 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\\nvoid main() {\\n #pragma mapbox: initialize lowp 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\\n vec2 a_extrude = a_data.xy - 128.0;\\n float a_direction = mod(a_data.z, 4.0) - 1.0;\\n\\n // We store the texture normals in the most insignificant bit\\n // transform y so that 0 => -1 and 1 => 1\\n // In the texture normal, x is 0 if the normal points straight up/down and 1 if it's a round cap\\n // y is 1 if the normal points up, and -1 if it points down\\n mediump vec2 normal = mod(a_pos, 2.0);\\n normal.y = sign(normal.y - 0.5);\\n v_normal = normal;\\n\\n\\n // these transformations used to be applied in the JS and native code bases. \\n // moved them into the shader for clarity and simplicity. \\n gapwidth = gapwidth / 2.0;\\n float width = u_width / 2.0;\\n offset = -1.0 * offset; \\n\\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\\n float outset = gapwidth + width * (gapwidth > 0.0 ? 2.0 : 1.0) + ANTIALIASING;\\n\\n // Scale the extrusion vector down to a normal and then up by the line width\\n // of this vertex.\\n mediump vec2 dist = outset * a_extrude * scale;\\n\\n // Calculate the offset when drawing a line that is to the side of the actual line.\\n // We do this by creating a vector that points towards the extrude, but rotate\\n // it when we're drawing round end points (a_direction = -1 or 1) since their\\n // extrude vector points in another direction.\\n mediump float u = 0.5 * a_direction;\\n mediump float t = 1.0 - abs(u);\\n mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\\n\\n // Remove the texture normal bit to get the position\\n vec2 pos = floor(a_pos * 0.5);\\n\\n vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\\n gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\\n\\n // calculate how much the perspective view squishes or stretches the extrude\\n float extrude_length_without_perspective = length(dist);\\n float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\\n v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\\n\\n v_width2 = vec2(outset, inset);\\n}\\n\"},linePattern:{fragmentSource:\"uniform vec2 u_pattern_size_a;\\nuniform vec2 u_pattern_size_b;\\nuniform vec2 u_pattern_tl_a;\\nuniform vec2 u_pattern_br_a;\\nuniform vec2 u_pattern_tl_b;\\nuniform vec2 u_pattern_br_b;\\nuniform float u_fade;\\n\\nuniform sampler2D u_image;\\n\\nvarying vec2 v_normal;\\nvarying vec2 v_width2;\\nvarying float v_linesofar;\\nvarying float v_gamma_scale;\\n\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float blur\\n #pragma mapbox: initialize lowp float opacity\\n\\n // Calculate the distance of the pixel from the line in pixels.\\n float dist = length(v_normal) * v_width2.s;\\n\\n // Calculate the antialiasing fade factor. This is either when fading in\\n // the line in case of an offset line (v_width2.t) or when fading out\\n // (v_width2.s)\\n float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\\n float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\\n\\n float x_a = mod(v_linesofar / u_pattern_size_a.x, 1.0);\\n float x_b = mod(v_linesofar / u_pattern_size_b.x, 1.0);\\n float y_a = 0.5 + (v_normal.y * v_width2.s / u_pattern_size_a.y);\\n float y_b = 0.5 + (v_normal.y * v_width2.s / u_pattern_size_b.y);\\n vec2 pos_a = mix(u_pattern_tl_a, u_pattern_br_a, vec2(x_a, y_a));\\n vec2 pos_b = mix(u_pattern_tl_b, u_pattern_br_b, vec2(x_b, y_b));\\n\\n vec4 color = mix(texture2D(u_image, pos_a), texture2D(u_image, pos_b), u_fade);\\n\\n gl_FragColor = color * alpha * opacity;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"// floor(127 / 2) == 63.0\\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\\n// there are also \\\"special\\\" normals that have a bigger length (of up to 126 in\\n// this case).\\n// #define scale 63.0\\n#define scale 0.015873016\\n\\n// We scale the distance before adding it to the buffers so that we can store\\n// long distances for long segments. Use this value to unscale the distance.\\n#define LINE_DISTANCE_SCALE 2.0\\n\\n// the distance over which the line edge fades out.\\n// Retina devices need a smaller distance to avoid aliasing.\\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\\n\\nattribute vec2 a_pos;\\nattribute vec4 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform mediump float u_ratio;\\nuniform mediump float u_width;\\nuniform vec2 u_gl_units_to_pixels;\\n\\nvarying vec2 v_normal;\\nvarying vec2 v_width2;\\nvarying float v_linesofar;\\nvarying float v_gamma_scale;\\n\\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\\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\\n vec2 a_extrude = a_data.xy - 128.0;\\n float a_direction = mod(a_data.z, 4.0) - 1.0;\\n float a_linesofar = (floor(a_data.z / 4.0) + a_data.w * 64.0) * LINE_DISTANCE_SCALE;\\n\\n // We store the texture normals in the most insignificant bit\\n // transform y so that 0 => -1 and 1 => 1\\n // In the texture normal, x is 0 if the normal points straight up/down and 1 if it's a round cap\\n // y is 1 if the normal points up, and -1 if it points down\\n mediump vec2 normal = mod(a_pos, 2.0);\\n normal.y = sign(normal.y - 0.5);\\n v_normal = normal;\\n\\n // these transformations used to be applied in the JS and native code bases. \\n // moved them into the shader for clarity and simplicity. \\n gapwidth = gapwidth / 2.0;\\n float width = u_width / 2.0;\\n offset = -1.0 * offset; \\n\\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\\n float outset = gapwidth + width * (gapwidth > 0.0 ? 2.0 : 1.0) + ANTIALIASING;\\n\\n // Scale the extrusion vector down to a normal and then up by the line width\\n // of this vertex.\\n mediump vec2 dist = outset * a_extrude * scale;\\n\\n // Calculate the offset when drawing a line that is to the side of the actual line.\\n // We do this by creating a vector that points towards the extrude, but rotate\\n // it when we're drawing round end points (a_direction = -1 or 1) since their\\n // extrude vector points in another direction.\\n mediump float u = 0.5 * a_direction;\\n mediump float t = 1.0 - abs(u);\\n mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\\n\\n // Remove the texture normal bit to get the position\\n vec2 pos = floor(a_pos * 0.5);\\n\\n vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\\n gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\\n\\n // calculate how much the perspective view squishes or stretches the extrude\\n float extrude_length_without_perspective = length(dist);\\n float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\\n v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\\n\\n v_linesofar = a_linesofar;\\n v_width2 = vec2(outset, inset);\\n}\\n\"},lineSDF:{fragmentSource:\"\\nuniform sampler2D u_image;\\nuniform float u_sdfgamma;\\nuniform float u_mix;\\n\\nvarying vec2 v_normal;\\nvarying vec2 v_width2;\\nvarying vec2 v_tex_a;\\nvarying vec2 v_tex_b;\\nvarying float v_gamma_scale;\\n\\n#pragma mapbox: define lowp vec4 color\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp vec4 color\\n #pragma mapbox: initialize lowp float blur\\n #pragma mapbox: initialize lowp float opacity\\n\\n // Calculate the distance of the pixel from the line in pixels.\\n float dist = length(v_normal) * v_width2.s;\\n\\n // Calculate the antialiasing fade factor. This is either when fading in\\n // the line in case of an offset line (v_width2.t) or when fading out\\n // (v_width2.s)\\n float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\\n float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\\n\\n float sdfdist_a = texture2D(u_image, v_tex_a).a;\\n float sdfdist_b = texture2D(u_image, v_tex_b).a;\\n float sdfdist = mix(sdfdist_a, sdfdist_b, u_mix);\\n alpha *= smoothstep(0.5 - u_sdfgamma, 0.5 + u_sdfgamma, sdfdist);\\n\\n gl_FragColor = color * (alpha * opacity);\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"// floor(127 / 2) == 63.0\\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\\n// there are also \\\"special\\\" normals that have a bigger length (of up to 126 in\\n// this case).\\n// #define scale 63.0\\n#define scale 0.015873016\\n\\n// We scale the distance before adding it to the buffers so that we can store\\n// long distances for long segments. Use this value to unscale the distance.\\n#define LINE_DISTANCE_SCALE 2.0\\n\\n// the distance over which the line edge fades out.\\n// Retina devices need a smaller distance to avoid aliasing.\\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\\n\\nattribute vec2 a_pos;\\nattribute vec4 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform mediump float u_ratio;\\nuniform vec2 u_patternscale_a;\\nuniform float u_tex_y_a;\\nuniform vec2 u_patternscale_b;\\nuniform float u_tex_y_b;\\nuniform vec2 u_gl_units_to_pixels;\\nuniform mediump float u_width;\\n\\nvarying vec2 v_normal;\\nvarying vec2 v_width2;\\nvarying vec2 v_tex_a;\\nvarying vec2 v_tex_b;\\nvarying float v_gamma_scale;\\n\\n#pragma mapbox: define lowp 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\\nvoid main() {\\n #pragma mapbox: initialize lowp 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\\n vec2 a_extrude = a_data.xy - 128.0;\\n float a_direction = mod(a_data.z, 4.0) - 1.0;\\n float a_linesofar = (floor(a_data.z / 4.0) + a_data.w * 64.0) * LINE_DISTANCE_SCALE;\\n\\n // We store the texture normals in the most insignificant bit\\n // transform y so that 0 => -1 and 1 => 1\\n // In the texture normal, x is 0 if the normal points straight up/down and 1 if it's a round cap\\n // y is 1 if the normal points up, and -1 if it points down\\n mediump vec2 normal = mod(a_pos, 2.0);\\n normal.y = sign(normal.y - 0.5);\\n v_normal = normal;\\n\\n // these transformations used to be applied in the JS and native code bases. \\n // moved them into the shader for clarity and simplicity. \\n gapwidth = gapwidth / 2.0;\\n float width = u_width / 2.0;\\n offset = -1.0 * offset;\\n \\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\\n float outset = gapwidth + width * (gapwidth > 0.0 ? 2.0 : 1.0) + ANTIALIASING;\\n\\n // Scale the extrusion vector down to a normal and then up by the line width\\n // of this vertex.\\n mediump vec2 dist =outset * a_extrude * scale;\\n\\n // Calculate the offset when drawing a line that is to the side of the actual line.\\n // We do this by creating a vector that points towards the extrude, but rotate\\n // it when we're drawing round end points (a_direction = -1 or 1) since their\\n // extrude vector points in another direction.\\n mediump float u = 0.5 * a_direction;\\n mediump float t = 1.0 - abs(u);\\n mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\\n\\n // Remove the texture normal bit to get the position\\n vec2 pos = floor(a_pos * 0.5);\\n\\n vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\\n gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\\n\\n // calculate how much the perspective view squishes or stretches the extrude\\n float extrude_length_without_perspective = length(dist);\\n float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\\n v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\\n\\n v_tex_a = vec2(a_linesofar * u_patternscale_a.x, normal.y * u_patternscale_a.y + u_tex_y_a);\\n v_tex_b = vec2(a_linesofar * u_patternscale_b.x, normal.y * u_patternscale_b.y + u_tex_y_b);\\n\\n v_width2 = vec2(outset, inset);\\n}\\n\"\n},raster:{fragmentSource:\"uniform float u_fade_t;\\nuniform float u_opacity;\\nuniform sampler2D u_image0;\\nuniform sampler2D u_image1;\\nvarying vec2 v_pos0;\\nvarying vec2 v_pos1;\\n\\nuniform float u_brightness_low;\\nuniform float u_brightness_high;\\n\\nuniform float u_saturation_factor;\\nuniform float u_contrast_factor;\\nuniform vec3 u_spin_weights;\\n\\nvoid main() {\\n\\n // read and cross-fade colors from the main and parent tiles\\n vec4 color0 = texture2D(u_image0, v_pos0);\\n vec4 color1 = texture2D(u_image1, v_pos1);\\n vec4 color = mix(color0, color1, u_fade_t);\\n color.a *= u_opacity;\\n vec3 rgb = color.rgb;\\n\\n // spin\\n rgb = vec3(\\n dot(rgb, u_spin_weights.xyz),\\n dot(rgb, u_spin_weights.zxy),\\n dot(rgb, u_spin_weights.yzx));\\n\\n // saturation\\n float average = (color.r + color.g + color.b) / 3.0;\\n rgb += (average - rgb) * u_saturation_factor;\\n\\n // contrast\\n rgb = (rgb - 0.5) * u_contrast_factor + 0.5;\\n\\n // brightness\\n vec3 u_high_vec = vec3(u_brightness_low, u_brightness_low, u_brightness_low);\\n vec3 u_low_vec = vec3(u_brightness_high, u_brightness_high, u_brightness_high);\\n\\n gl_FragColor = vec4(mix(u_high_vec, u_low_vec, rgb) * color.a, color.a);\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform vec2 u_tl_parent;\\nuniform float u_scale_parent;\\nuniform float u_buffer_scale;\\n\\nattribute vec2 a_pos;\\nattribute vec2 a_texture_pos;\\n\\nvarying vec2 v_pos0;\\nvarying vec2 v_pos1;\\n\\nvoid main() {\\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\\n v_pos0 = (((a_texture_pos / 32767.0) - 0.5) / u_buffer_scale ) + 0.5;\\n v_pos1 = (v_pos0 * u_scale_parent) + u_tl_parent;\\n}\\n\"},symbolIcon:{fragmentSource:\"uniform sampler2D u_texture;\\nuniform sampler2D u_fadetexture;\\n\\n#pragma mapbox: define lowp float opacity\\n\\nvarying vec2 v_tex;\\nvarying vec2 v_fade_tex;\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float opacity\\n\\n lowp float alpha = texture2D(u_fadetexture, v_fade_tex).a * opacity;\\n gl_FragColor = texture2D(u_texture, v_tex) * alpha;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"\\nattribute vec4 a_pos_offset;\\nattribute vec2 a_texture_pos;\\nattribute vec4 a_data;\\n\\n#pragma mapbox: define lowp float opacity\\n\\n// matrix is for the vertex position.\\nuniform mat4 u_matrix;\\n\\nuniform mediump float u_zoom;\\nuniform bool u_rotate_with_map;\\nuniform vec2 u_extrude_scale;\\n\\nuniform vec2 u_texsize;\\n\\nvarying vec2 v_tex;\\nvarying vec2 v_fade_tex;\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float opacity\\n\\n vec2 a_pos = a_pos_offset.xy;\\n vec2 a_offset = a_pos_offset.zw;\\n\\n vec2 a_tex = a_texture_pos.xy;\\n mediump float a_labelminzoom = a_data[0];\\n mediump vec2 a_zoom = a_data.pq;\\n mediump float a_minzoom = a_zoom[0];\\n mediump float a_maxzoom = a_zoom[1];\\n\\n // u_zoom is the current zoom level adjusted for the change in font size\\n mediump float z = 2.0 - step(a_minzoom, u_zoom) - (1.0 - step(a_maxzoom, u_zoom));\\n\\n vec2 extrude = u_extrude_scale * (a_offset / 64.0);\\n if (u_rotate_with_map) {\\n gl_Position = u_matrix * vec4(a_pos + extrude, 0, 1);\\n gl_Position.z += z * gl_Position.w;\\n } else {\\n gl_Position = u_matrix * vec4(a_pos, 0, 1) + vec4(extrude, 0, 0);\\n }\\n\\n v_tex = a_tex / u_texsize;\\n v_fade_tex = vec2(a_labelminzoom / 255.0, 0.0);\\n}\\n\"},symbolSDF:{fragmentSource:\"#define SDF_PX 8.0\\n#define EDGE_GAMMA 0.105/DEVICE_PIXEL_RATIO\\n\\nuniform bool u_is_halo;\\n#pragma mapbox: define lowp vec4 fill_color\\n#pragma mapbox: define lowp 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\\n\\nuniform sampler2D u_texture;\\nuniform sampler2D u_fadetexture;\\nuniform lowp float u_font_scale;\\nuniform highp float u_gamma_scale;\\n\\nvarying vec2 v_tex;\\nvarying vec2 v_fade_tex;\\nvarying float v_gamma_scale;\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp vec4 fill_color\\n #pragma mapbox: initialize lowp 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\\n\\n lowp vec4 color = fill_color;\\n highp float gamma = EDGE_GAMMA / u_gamma_scale;\\n lowp float buff = (256.0 - 64.0) / 256.0;\\n if (u_is_halo) {\\n color = halo_color;\\n gamma = (halo_blur * 1.19 / SDF_PX + EDGE_GAMMA) / u_gamma_scale;\\n buff = (6.0 - halo_width / u_font_scale) / SDF_PX;\\n }\\n\\n lowp float dist = texture2D(u_texture, v_tex).a;\\n lowp float fade_alpha = texture2D(u_fadetexture, v_fade_tex).a;\\n highp float gamma_scaled = gamma * v_gamma_scale;\\n highp float alpha = smoothstep(buff - gamma_scaled, buff + gamma_scaled, dist) * fade_alpha;\\n\\n gl_FragColor = color * (alpha * opacity);\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"const float PI = 3.141592653589793;\\n\\nattribute vec4 a_pos_offset;\\nattribute vec2 a_texture_pos;\\nattribute vec4 a_data;\\n\\n#pragma mapbox: define lowp vec4 fill_color\\n#pragma mapbox: define lowp 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\\n\\n// matrix is for the vertex position.\\nuniform mat4 u_matrix;\\n\\nuniform mediump float u_zoom;\\nuniform bool u_rotate_with_map;\\nuniform bool u_pitch_with_map;\\nuniform mediump float u_pitch;\\nuniform mediump float u_bearing;\\nuniform mediump float u_aspect_ratio;\\nuniform vec2 u_extrude_scale;\\n\\nuniform vec2 u_texsize;\\n\\nvarying vec2 v_tex;\\nvarying vec2 v_fade_tex;\\nvarying float v_gamma_scale;\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp vec4 fill_color\\n #pragma mapbox: initialize lowp 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\\n\\n vec2 a_pos = a_pos_offset.xy;\\n vec2 a_offset = a_pos_offset.zw;\\n\\n vec2 a_tex = a_texture_pos.xy;\\n mediump float a_labelminzoom = a_data[0];\\n mediump vec2 a_zoom = a_data.pq;\\n mediump float a_minzoom = a_zoom[0];\\n mediump float a_maxzoom = a_zoom[1];\\n\\n // u_zoom is the current zoom level adjusted for the change in font size\\n mediump float z = 2.0 - step(a_minzoom, u_zoom) - (1.0 - step(a_maxzoom, u_zoom));\\n\\n // pitch-alignment: map\\n // rotation-alignment: map | viewport\\n if (u_pitch_with_map) {\\n lowp float angle = u_rotate_with_map ? (a_data[1] / 256.0 * 2.0 * PI) : u_bearing;\\n lowp float asin = sin(angle);\\n lowp float acos = cos(angle);\\n mat2 RotationMatrix = mat2(acos, asin, -1.0 * asin, acos);\\n vec2 offset = RotationMatrix * a_offset;\\n vec2 extrude = u_extrude_scale * (offset / 64.0);\\n gl_Position = u_matrix * vec4(a_pos + extrude, 0, 1);\\n gl_Position.z += z * gl_Position.w;\\n // pitch-alignment: viewport\\n // rotation-alignment: map\\n } else if (u_rotate_with_map) {\\n // foreshortening factor to apply on pitched maps\\n // as a label goes from horizontal <=> vertical in angle\\n // it goes from 0% foreshortening to up to around 70% foreshortening\\n lowp float pitchfactor = 1.0 - cos(u_pitch * sin(u_pitch * 0.75));\\n\\n lowp float lineangle = a_data[1] / 256.0 * 2.0 * PI;\\n\\n // use the lineangle to position points a,b along the line\\n // project the points and calculate the label angle in projected space\\n // this calculation allows labels to be rendered unskewed on pitched maps\\n vec4 a = u_matrix * vec4(a_pos, 0, 1);\\n vec4 b = u_matrix * vec4(a_pos + vec2(cos(lineangle),sin(lineangle)), 0, 1);\\n lowp float angle = atan((b[1]/b[3] - a[1]/a[3])/u_aspect_ratio, b[0]/b[3] - a[0]/a[3]);\\n lowp float asin = sin(angle);\\n lowp float acos = cos(angle);\\n mat2 RotationMatrix = mat2(acos, -1.0 * asin, asin, acos);\\n\\n vec2 offset = RotationMatrix * (vec2((1.0-pitchfactor)+(pitchfactor*cos(angle*2.0)), 1.0) * a_offset);\\n vec2 extrude = u_extrude_scale * (offset / 64.0);\\n gl_Position = u_matrix * vec4(a_pos, 0, 1) + vec4(extrude, 0, 0);\\n gl_Position.z += z * gl_Position.w;\\n // pitch-alignment: viewport\\n // rotation-alignment: viewport\\n } else {\\n vec2 extrude = u_extrude_scale * (a_offset / 64.0);\\n gl_Position = u_matrix * vec4(a_pos, 0, 1) + vec4(extrude, 0, 0);\\n }\\n\\n v_gamma_scale = gl_Position.w;\\n\\n v_tex = a_tex / u_texsize;\\n v_fade_tex = vec2(a_labelminzoom / 255.0, 0.0);\\n}\\n\"}};\n},{\"path\":23}],80:[function(require,module,exports){\n\"use strict\";var VertexArrayObject=function(){this.boundProgram=null,this.boundVertexBuffer=null,this.boundVertexBuffer2=null,this.boundElementBuffer=null,this.boundVertexOffset=null,this.vao=null};VertexArrayObject.prototype.bind=function(e,t,r,i,n,o){void 0===e.extVertexArrayObject&&(e.extVertexArrayObject=e.getExtension(\"OES_vertex_array_object\"));var s=!this.vao||this.boundProgram!==t||this.boundVertexBuffer!==r||this.boundVertexBuffer2!==n||this.boundElementBuffer!==i||this.boundVertexOffset!==o;!e.extVertexArrayObject||s?(this.freshBind(e,t,r,i,n,o),this.gl=e):e.extVertexArrayObject.bindVertexArrayOES(this.vao)},VertexArrayObject.prototype.freshBind=function(e,t,r,i,n,o){var s,u=t.numAttributes;if(e.extVertexArrayObject)this.vao&&this.destroy(),this.vao=e.extVertexArrayObject.createVertexArrayOES(),e.extVertexArrayObject.bindVertexArrayOES(this.vao),s=0,this.boundProgram=t,this.boundVertexBuffer=r,this.boundVertexBuffer2=n,this.boundElementBuffer=i,this.boundVertexOffset=o;else{s=e.currentNumAttributes||0;for(var b=u;bthis.maxzoom?Math.pow(2,t.coord.z-this.maxzoom):1,r={type:this.type,uid:t.uid,coord:t.coord,zoom:t.coord.z,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,overscaling:i,angle:this.map.transform.angle,pitch:this.map.transform.pitch,showCollisionBoxes:this.map.showCollisionBoxes};t.workerID=this.dispatcher.send(\"loadTile\",r,function(i,r){if(t.unloadVectorData(),!t.aborted)return i?e(i):(t.loadVectorData(r,o.map.painter),t.redoWhenDone&&(t.redoWhenDone=!1,t.redoPlacement(o)),e(null))},this.workerID)},e.prototype.abortTile=function(t){t.aborted=!0},e.prototype.unloadTile=function(t){t.unloadVectorData(),this.dispatcher.send(\"removeTile\",{uid:t.uid,type:this.type,source:this.id},function(){},t.workerID)},e.prototype.onRemove=function(){this.dispatcher.broadcast(\"removeSource\",{type:this.type,source:this.id},function(){})},e.prototype.serialize=function(){return{type:this.type,data:this._data}},e}(Evented);module.exports=GeoJSONSource;\n},{\"../data/extent\":54,\"../util/evented\":200,\"../util/util\":212,\"../util/window\":194}],83:[function(require,module,exports){\n\"use strict\";var ajax=require(\"../util/ajax\"),rewind=require(\"geojson-rewind\"),GeoJSONWrapper=require(\"./geojson_wrapper\"),vtpbf=require(\"vt-pbf\"),supercluster=require(\"supercluster\"),geojsonvt=require(\"geojson-vt\"),VectorTileWorkerSource=require(\"./vector_tile_worker_source\"),GeoJSONWorkerSource=function(e){function r(r,t,o){e.call(this,r,t),o&&(this.loadGeoJSON=o),this._geoJSONIndexes={}}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.loadVectorData=function(e,r){var t=e.source,o=e.coord;if(!this._geoJSONIndexes[t])return r(null,null);var n=this._geoJSONIndexes[t].getTile(Math.min(o.z,e.maxZoom),o.x,o.y);if(!n)return r(null,null);var u=new GeoJSONWrapper(n.features);u.name=\"_geojsonTileLayer\";var a=vtpbf({layers:{_geojsonTileLayer:u}});0===a.byteOffset&&a.byteLength===a.buffer.byteLength||(a=new Uint8Array(a)),u.rawData=a.buffer,r(null,u)},r.prototype.loadData=function(e,r){var t=function(t,o){var n=this;return t?r(t):\"object\"!=typeof o?r(new Error(\"Input data is not a valid GeoJSON object.\")):(rewind(o,!0),void this._indexData(o,e,function(t,o){return t?r(t):(n._geoJSONIndexes[e.source]=o,void r(null))}))}.bind(this);this.loadGeoJSON(e,t)},r.prototype.loadGeoJSON=function(e,r){if(e.url)ajax.getJSON(e.url,r);else{if(\"string\"!=typeof e.data)return r(new Error(\"Input data is not a valid GeoJSON object.\"));try{return r(null,JSON.parse(e.data))}catch(e){return r(new Error(\"Input data is not a valid GeoJSON object.\"))}}},r.prototype.removeSource=function(e){this._geoJSONIndexes[e.source]&&delete this._geoJSONIndexes[e.source]},r.prototype._indexData=function(e,r,t){try{r.cluster?t(null,supercluster(r.superclusterOptions).load(e.features)):t(null,geojsonvt(e,r.geojsonVtOptions))}catch(e){return t(e)}},r}(VectorTileWorkerSource);module.exports=GeoJSONWorkerSource;\n},{\"../util/ajax\":191,\"./geojson_wrapper\":84,\"./vector_tile_worker_source\":96,\"geojson-rewind\":7,\"geojson-vt\":11,\"supercluster\":29,\"vt-pbf\":38}],84:[function(require,module,exports){\n\"use strict\";var Point=require(\"point-geometry\"),VectorTileFeature=require(\"vector-tile\").VectorTileFeature,EXTENT=require(\"../data/extent\"),FeatureWrapper=function(e){var t=this;if(this.type=e.type,1===e.type){this.rawGeometry=[];for(var r=0;rt)){var n=Math.pow(2,Math.min(a.coord.z,i._source.maxzoom)-Math.min(e.z,i._source.maxzoom));if(Math.floor(a.coord.x/n)===e.x&&Math.floor(a.coord.y/n)===e.y)for(o[s]=!0,r=!0;a&&a.coord.z-1>e.z;){var d=a.coord.parent(i._source.maxzoom).id;a=i._tiles[d],a&&a.hasData()&&(delete o[s],o[d]=!0)}}}return r},t.prototype.findLoadedParent=function(e,t,o){for(var i=this,r=e.z-1;r>=t;r--){e=e.parent(i._source.maxzoom);var s=i._tiles[e.id];if(s&&s.hasData())return o[e.id]=!0,s;if(i._cache.has(e.id))return o[e.id]=!0,i._cache.getWithoutRemoving(e.id)}},t.prototype.updateCacheSize=function(e){var t=Math.ceil(e.width/e.tileSize)+1,o=Math.ceil(e.height/e.tileSize)+1,i=t*o,r=5;this._cache.setMaxSize(Math.floor(i*r))},t.prototype.update=function(e){var o=this;if(this.transform=e,this._sourceLoaded){var i,r,s,a;this.updateCacheSize(e);var n=(this._source.roundZoom?Math.round:Math.floor)(this.getZoom(e)),d=Math.max(n-t.maxOverzooming,this._source.minzoom),c=Math.max(n+t.maxUnderzooming,this._source.minzoom),h={};this._coveredTiles={};var u;for(u=this.used?this._source.coord?[this._source.coord]:e.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}):[],i=0;i=Date.now())&&(o.findLoadedChildren(r,c,h)&&(h[_]=!0),a=o.findLoadedParent(r,d,l),a&&o.addTile(a.coord))}var f;for(f in l)h[f]||(o._coveredTiles[f]=!0);for(f in l)h[f]=!0;var T=util.keysDifference(this._tiles,h);for(i=0;ithis._source.maxzoom?Math.pow(2,r-this._source.maxzoom):1;t=new Tile(o,this._source.tileSize*s,this._source.maxzoom),this.loadTile(t,this._tileLoaded.bind(this,t,e.id,t.state))}return t.uses++,this._tiles[e.id]=t,i||this._source.fire(\"dataloading\",{tile:t,coord:t.coord,dataType:\"source\"}),t},t.prototype._setTileReloadTimer=function(e,t){var o=this,i=t.getExpiryTimeout();i&&(this._timers[e]=setTimeout(function(){o.reloadTile(e,\"expired\"),o._timers[e]=void 0},i))},t.prototype._setCacheInvalidationTimer=function(e,t){var o=this,i=t.getExpiryTimeout();i&&(this._cacheTimers[e]=setTimeout(function(){o._cache.remove(e),o._cacheTimers[e]=void 0},i))},t.prototype.removeTile=function(e){var t=this._tiles[e];if(t&&(t.uses--,delete this._tiles[e],this._timers[e]&&(clearTimeout(this._timers[e]),this._timers[e]=void 0),!(t.uses>0)))if(t.hasData()){var o=t.coord.wrapped().id;this._cache.add(o,t),this._setCacheInvalidationTimer(o,t)}else t.aborted=!0,this.abortTile(t),this.unloadTile(t)},t.prototype.clearTiles=function(){var e=this;for(var t in e._tiles)e.removeTile(t);this._cache.reset()},t.prototype.tilesIn=function(e){for(var t=this,o={},i=this.getIds(),r=1/0,s=1/0,a=-(1/0),n=-(1/0),d=e[0].zoom,c=0;c=0&&p[1].y>=0){for(var _=[],f=0;fo)r=!1;else if(t)if(this.expirationTimei.row){var o=t;t=i,i=o}return{x0:t.column,y0:t.row,x1:i.column,y1:i.row,dx:i.column-t.column,dy:i.row-t.row}}function scanSpans(t,i,o,r,e){var n=Math.max(o,Math.floor(i.y0)),h=Math.min(r,Math.ceil(i.y1));if(t.x0===i.x0&&t.y0===i.y0?t.x0+i.dy/t.dy*t.dx0,l=i.dx<0,u=n;ua.dy&&(h=s,s=a,a=h),s.dy>d.dy&&(h=s,s=d,d=h),a.dy>d.dy&&(h=a,a=d,d=h),s.dy&&scanSpans(d,s,r,e,n),a.dy&&scanSpans(d,a,r,e,n)}function getQuadkey(t,i,o){for(var r,e=\"\",n=t;n>0;n--)r=1<t?new TileCoord(this.z-1,this.x,this.y,this.w):new TileCoord(this.z-1,Math.floor(this.x/2),Math.floor(this.y/2),this.w)},TileCoord.prototype.wrapped=function(){return new TileCoord(this.z,this.x,this.y,0)},TileCoord.prototype.children=function(t){if(this.z>=t)return[new TileCoord(this.z+1,this.x,this.y,this.w)];var i=this.z+1,o=2*this.x,r=2*this.y;return[new TileCoord(i,o,r,this.w),new TileCoord(i,o+1,r,this.w),new TileCoord(i,o,r+1,this.w),new TileCoord(i,o+1,r+1,this.w)]},TileCoord.cover=function(t,i,o,r){function e(t,i,e){var s,a,d,y;if(e>=0&&e<=n)for(s=t;sthis.maxzoom?Math.pow(2,e.coord.z-this.maxzoom):1,r={url:normalizeURL(e.coord.url(this.tiles,this.maxzoom,this.scheme),this.url),uid:e.uid,coord:e.coord,zoom:e.coord.z,tileSize:this.tileSize*o,type:this.type,source:this.id,overscaling:o,angle:this.map.transform.angle,pitch:this.map.transform.pitch,showCollisionBoxes:this.map.showCollisionBoxes};e.workerID&&\"expired\"!==e.state?\"loading\"===e.state?e.reloadCallback=t:this.dispatcher.send(\"reloadTile\",r,i.bind(this),e.workerID):e.workerID=this.dispatcher.send(\"loadTile\",r,i.bind(this))},t.prototype.abortTile=function(e){this.dispatcher.send(\"abortTile\",{uid:e.uid,type:this.type,source:this.id},null,e.workerID)},t.prototype.unloadTile=function(e){e.unloadVectorData(),this.dispatcher.send(\"removeTile\",{uid:e.uid,type:this.type,source:this.id},null,e.workerID)},t}(Evented);module.exports=VectorTileSource;\n},{\"../util/evented\":200,\"../util/mapbox\":208,\"../util/util\":212,\"./load_tilejson\":86}],96:[function(require,module,exports){\n\"use strict\";var ajax=require(\"../util/ajax\"),vt=require(\"vector-tile\"),Protobuf=require(\"pbf\"),WorkerTile=require(\"./worker_tile\"),util=require(\"../util/util\"),VectorTileWorkerSource=function(e,r,t){this.actor=e,this.layerIndex=r,t&&(this.loadVectorData=t),this.loading={},this.loaded={}};VectorTileWorkerSource.prototype.loadTile=function(e,r){function t(e,t){return delete this.loading[o][i],e?r(e):t?(a.vectorTile=t,a.parse(t,this.layerIndex,this.actor,function(e,o,i){if(e)return r(e);var a={};t.expires&&(a.expires=t.expires),t.cacheControl&&(a.cacheControl=t.cacheControl),r(null,util.extend({rawTileData:t.rawData},o,a),i)}),this.loaded[o]=this.loaded[o]||{},void(this.loaded[o][i]=a)):r(null,null)}var o=e.source,i=e.uid;this.loading[o]||(this.loading[o]={});var a=this.loading[o][i]=new WorkerTile(e);a.abort=this.loadVectorData(e,t.bind(this))},VectorTileWorkerSource.prototype.reloadTile=function(e,r){function t(e,t){if(this.reloadCallback){var o=this.reloadCallback;delete this.reloadCallback,this.parse(this.vectorTile,a.layerIndex,a.actor,o)}r(e,t)}var o=this.loaded[e.source],i=e.uid,a=this;if(o&&o[i]){var l=o[i];\"parsing\"===l.status?l.reloadCallback=r:\"done\"===l.status&&l.parse(l.vectorTile,this.layerIndex,this.actor,t.bind(l))}},VectorTileWorkerSource.prototype.abortTile=function(e){var r=this.loading[e.source],t=e.uid;r&&r[t]&&r[t].abort&&(r[t].abort(),delete r[t])},VectorTileWorkerSource.prototype.removeTile=function(e){var r=this.loaded[e.source],t=e.uid;r&&r[t]&&delete r[t]},VectorTileWorkerSource.prototype.loadVectorData=function(e,r){function t(e,t){if(e)return r(e);var o=new vt.VectorTile(new Protobuf(t.data));o.rawData=t.data,o.cacheControl=t.cacheControl,o.expires=t.expires,r(e,o)}var o=ajax.getArrayBuffer(e.url,t.bind(this));return function(){o.abort()}},VectorTileWorkerSource.prototype.redoPlacement=function(e,r){var t=this.loaded[e.source],o=this.loading[e.source],i=e.uid;if(t&&t[i]){var a=t[i],l=a.redoPlacement(e.angle,e.pitch,e.showCollisionBoxes);l.result&&r(null,l.result,l.transferables)}else o&&o[i]&&(o[i].angle=e.angle)},module.exports=VectorTileWorkerSource;\n},{\"../util/ajax\":191,\"../util/util\":212,\"./worker_tile\":99,\"pbf\":25,\"vector-tile\":34}],97:[function(require,module,exports){\n\"use strict\";var ajax=require(\"../util/ajax\"),ImageSource=require(\"./image_source\"),VideoSource=function(t){function e(e,o,i,r){t.call(this,e,o,i,r),this.roundZoom=!0,this.type=\"video\",this.options=o}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.load=function(){var t=this,e=this.options;this.urls=e.urls,ajax.getVideo(e.urls,function(e,o){if(e)return t.fire(\"error\",{error:e});t.video=o,t.video.loop=!0;var i;t.video.addEventListener(\"playing\",function(){i=t.map.style.animationLoop.set(1/0),t.map._rerender()}),t.video.addEventListener(\"pause\",function(){t.map.style.animationLoop.cancel(i)}),t.map&&t.video.play(),t._finishLoading()})},e.prototype.getVideo=function(){return this.video},e.prototype.onAdd=function(t){this.map||(this.load(),this.map=t,this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},e.prototype.prepare=function(){!this.tile||this.video.readyState<2||this._prepareImage(this.map.painter.gl,this.video)},e.prototype.serialize=function(){return{type:\"video\",urls:this.urls,coordinates:this.coordinates}},e}(ImageSource);module.exports=VideoSource;\n},{\"../util/ajax\":191,\"./image_source\":85}],98:[function(require,module,exports){\n\"use strict\";var Actor=require(\"../util/actor\"),StyleLayerIndex=require(\"../style/style_layer_index\"),VectorTileWorkerSource=require(\"./vector_tile_worker_source\"),GeoJSONWorkerSource=require(\"./geojson_worker_source\"),globalRTLTextPlugin=require(\"./rtl_text_plugin\"),Worker=function(e){var r=this;this.self=e,this.actor=new Actor(e,this),this.layerIndexes={},this.workerSourceTypes={vector:VectorTileWorkerSource,geojson:GeoJSONWorkerSource},this.workerSources={},this.self.registerWorkerSource=function(e,o){if(r.workerSourceTypes[e])throw new Error('Worker source with name \"'+e+'\" already registered.');r.workerSourceTypes[e]=o},this.self.registerRTLTextPlugin=function(e){if(globalRTLTextPlugin.applyArabicShaping||globalRTLTextPlugin.processBidirectionalText)throw new Error(\"RTL text plugin already registered.\");globalRTLTextPlugin.applyArabicShaping=e.applyArabicShaping,globalRTLTextPlugin.processBidirectionalText=e.processBidirectionalText}};Worker.prototype.setLayers=function(e,r){this.getLayerIndex(e).replace(r)},Worker.prototype.updateLayers=function(e,r){this.getLayerIndex(e).update(r.layers,r.removedIds,r.symbolOrder)},Worker.prototype.loadTile=function(e,r,o){this.getWorkerSource(e,r.type).loadTile(r,o)},Worker.prototype.reloadTile=function(e,r,o){this.getWorkerSource(e,r.type).reloadTile(r,o)},Worker.prototype.abortTile=function(e,r){this.getWorkerSource(e,r.type).abortTile(r)},Worker.prototype.removeTile=function(e,r){this.getWorkerSource(e,r.type).removeTile(r)},Worker.prototype.removeSource=function(e,r){var o=this.getWorkerSource(e,r.type);void 0!==o.removeSource&&o.removeSource(r)},Worker.prototype.redoPlacement=function(e,r,o){this.getWorkerSource(e,r.type).redoPlacement(r,o)},Worker.prototype.loadWorkerSource=function(e,r,o){try{this.self.importScripts(r.url),o()}catch(e){o(e)}},Worker.prototype.loadRTLTextPlugin=function(e,r,o){try{globalRTLTextPlugin.applyArabicShaping||globalRTLTextPlugin.processBidirectionalText||this.self.importScripts(r)}catch(e){o(e)}},Worker.prototype.getLayerIndex=function(e){var r=this.layerIndexes[e];return r||(r=this.layerIndexes[e]=new StyleLayerIndex),r},Worker.prototype.getWorkerSource=function(e,r){var o=this;if(this.workerSources[e]||(this.workerSources[e]={}),!this.workerSources[e][r]){var t={send:function(r,t,i,n){o.actor.send(r,t,i,n,e)}};this.workerSources[e][r]=new this.workerSourceTypes[r](t,this.getLayerIndex(e))}return this.workerSources[e][r]},module.exports=function(e){return new Worker(e)};\n},{\"../style/style_layer_index\":154,\"../util/actor\":190,\"./geojson_worker_source\":83,\"./rtl_text_plugin\":90,\"./vector_tile_worker_source\":96}],99:[function(require,module,exports){\n\"use strict\";function recalculateLayers(e,i){for(var r=0,o=e.layers;r=B.maxzoom||B.layout&&\"none\"===B.layout.visibility)){for(var b=0,k=x;b=0;w--){var A=n[i.symbolOrder[w]];A&&t.symbolBuckets.push(A)}if(0===this.symbolBuckets.length)return T(new CollisionTile(this.angle,this.pitch,this.collisionBoxArray));var D=0,I=Object.keys(c.iconDependencies),O=util.mapObject(c.glyphDependencies,function(e){return Object.keys(e).map(Number)}),L=function(e){if(e)return o(e);if(D++,2===D){for(var i=new CollisionTile(t.angle,t.pitch,t.collisionBoxArray),r=0,s=t.symbolBuckets;r\"===i||\"<=\"===i||\">=\"===i?compileComparisonOp(e[1],e[2],i,!0):\"any\"===i?compileLogicalOp(e.slice(1),\"||\"):\"all\"===i?compileLogicalOp(e.slice(1),\"&&\"):\"none\"===i?compileNegation(compileLogicalOp(e.slice(1),\"||\")):\"in\"===i?compileInOp(e[1],e.slice(2)):\"!in\"===i?compileNegation(compileInOp(e[1],e.slice(2))):\"has\"===i?compileHasOp(e[1]):\"!has\"===i?compileNegation(compileHasOp(e[1])):\"true\";return\"(\"+n+\")\"}function compilePropertyReference(e){return\"$type\"===e?\"f.type\":\"$id\"===e?\"f.id\":\"p[\"+JSON.stringify(e)+\"]\"}function compileComparisonOp(e,i,n,r){var o=compilePropertyReference(e),t=\"$type\"===e?types.indexOf(i):JSON.stringify(i);return(r?\"typeof \"+o+\"=== typeof \"+t+\"&&\":\"\")+o+n+t}function compileLogicalOp(e,i){return e.map(compile).join(i)}function compileInOp(e,i){\"$type\"===e&&(i=i.map(function(e){return types.indexOf(e)}));var n=JSON.stringify(i.sort(compare)),r=compilePropertyReference(e);return i.length<=200?n+\".indexOf(\"+r+\") !== -1\":\"function(v, a, i, j) {while (i <= j) { var m = (i + j) >> 1; if (a[m] === v) return true; if (a[m] > v) j = m - 1; else i = m + 1;}return false; }(\"+r+\", \"+n+\",0,\"+(i.length-1)+\")\"}function compileHasOp(e){return\"$id\"===e?'\"id\" in f':JSON.stringify(e)+\" in p\"}function compileNegation(e){return\"!(\"+e+\")\"}function compare(e,i){return ei?1:0}module.exports=createFilter;var types=[\"Unknown\",\"Point\",\"LineString\",\"Polygon\"];\n},{}],104:[function(require,module,exports){\n\"use strict\";function xyz2lab(r){return r>t3?Math.pow(r,1/3):r/t2+t0}function lab2xyz(r){return r>t1?r*r*r:t2*(r-t0)}function xyz2rgb(r){return 255*(r<=.0031308?12.92*r:1.055*Math.pow(r,1/2.4)-.055)}function rgb2xyz(r){return r/=255,r<=.04045?r/12.92:Math.pow((r+.055)/1.055,2.4)}function rgbToLab(r){var t=rgb2xyz(r[0]),a=rgb2xyz(r[1]),n=rgb2xyz(r[2]),b=xyz2lab((.4124564*t+.3575761*a+.1804375*n)/Xn),o=xyz2lab((.2126729*t+.7151522*a+.072175*n)/Yn),g=xyz2lab((.0193339*t+.119192*a+.9503041*n)/Zn);return[116*o-16,500*(b-o),200*(o-g),r[3]]}function labToRgb(r){var t=(r[0]+16)/116,a=isNaN(r[1])?t:t+r[1]/500,n=isNaN(r[2])?t:t-r[2]/200;return t=Yn*lab2xyz(t),a=Xn*lab2xyz(a),n=Zn*lab2xyz(n),[xyz2rgb(3.2404542*a-1.5371385*t-.4985314*n),xyz2rgb(-.969266*a+1.8760108*t+.041556*n),xyz2rgb(.0556434*a-.2040259*t+1.0572252*n),r[3]]}function rgbToHcl(r){var t=rgbToLab(r),a=t[0],n=t[1],b=t[2],o=Math.atan2(b,n)*rad2deg;return[o<0?o+360:o,Math.sqrt(n*n+b*b),a,r[3]]}function hclToRgb(r){var t=r[0]*deg2rad,a=r[1],n=r[2];return labToRgb([n,Math.cos(t)*a,Math.sin(t)*a,r[3]])}var Xn=.95047,Yn=1,Zn=1.08883,t0=4/29,t1=6/29,t2=3*t1*t1,t3=t1*t1*t1,deg2rad=Math.PI/180,rad2deg=180/Math.PI;module.exports={lab:{forward:rgbToLab,reverse:labToRgb},hcl:{forward:rgbToHcl,reverse:hclToRgb}};\n},{}],105:[function(require,module,exports){\n\"use strict\";function identityFunction(t){return t}function createFunction(t,e){var o,n=\"color\"===e.type;if(isFunctionDefinition(t)){var r=t.stops&&\"object\"==typeof t.stops[0][0],a=r||void 0!==t.property,i=r||!a,s=t.type||(\"interpolated\"===e.function?\"exponential\":\"interval\");n&&(t=extend({},t),t.stops&&(t.stops=t.stops.map(function(t){return[t[0],parseColor(t[1])]})),t.default?t.default=parseColor(t.default):t.default=parseColor(e.default));var u,p,l;if(\"exponential\"===s)u=evaluateExponentialFunction;else if(\"interval\"===s)u=evaluateIntervalFunction;else if(\"categorical\"===s){u=evaluateCategoricalFunction,p=Object.create(null);for(var c=0,f=t.stops;c=t.stops[n-1][0])return t.stops[n-1][1];var r=binarySearchForIndex(t.stops,o);return t.stops[r][1]}function evaluateExponentialFunction(t,e,o){var n=void 0!==t.base?t.base:1;if(\"number\"!==getType(o))return coalesce(t.default,e.default);var r=t.stops.length;if(1===r)return t.stops[0][1];if(o<=t.stops[0][0])return t.stops[0][1];if(o>=t.stops[r-1][0])return t.stops[r-1][1];var a=binarySearchForIndex(t.stops,o);return interpolate(o,n,t.stops[a][0],t.stops[a+1][0],t.stops[a][1],t.stops[a+1][1])}function evaluateIdentityFunction(t,e,o){return\"color\"===e.type?o=parseColor(o):getType(o)!==e.type&&(o=void 0),coalesce(o,t.default,e.default)}function binarySearchForIndex(t,e){for(var o,n,r=t.length,a=0,i=r-1,s=0;a<=i;){if(s=Math.floor((a+i)/2),o=t[s][0],n=t[s+1][0],e>=o&&ee&&(i=s-1)}return Math.max(s-1,0)}function interpolate(t,e,o,n,r,a){return\"function\"==typeof r?function(){var i=r.apply(void 0,arguments),s=a.apply(void 0,arguments);if(void 0!==i&&void 0!==s)return interpolate(t,e,o,n,i,s)}:r.length?interpolateArray(t,e,o,n,r,a):interpolateNumber(t,e,o,n,r,a)}function interpolateNumber(t,e,o,n,r,a){var i,s=n-o,u=t-o;return i=1===e?u/s:(Math.pow(e,u)-1)/(Math.pow(e,s)-1),r*(1-i)+a*i}function interpolateArray(t,e,o,n,r,a){for(var i=[],s=0;s255?255:e}function clamp_css_float(e){return e<0?0:e>1?1:e}function parse_css_int(e){return clamp_css_byte(\"%\"===e[e.length-1]?parseFloat(e)/100*255:parseInt(e))}function parse_css_float(e){return clamp_css_float(\"%\"===e[e.length-1]?parseFloat(e)/100:parseFloat(e))}function css_hue_to_rgb(e,r,l){return l<0?l+=1:l>1&&(l-=1),6*l<1?e+(r-e)*l*6:2*l<1?r:3*l<2?e+(r-e)*(2/3-l)*6:e}function parseCSSColor(e){var r=e.replace(/ /g,\"\").toLowerCase();if(r in kCSSColorTable)return kCSSColorTable[r].slice();if(\"#\"===r[0]){if(4===r.length){var l=parseInt(r.substr(1),16);return l>=0&&l<=4095?[(3840&l)>>4|(3840&l)>>8,240&l|(240&l)>>4,15&l|(15&l)<<4,1]:null}if(7===r.length){var l=parseInt(r.substr(1),16);return l>=0&&l<=16777215?[(16711680&l)>>16,(65280&l)>>8,255&l,1]:null}return null}var a=r.indexOf(\"(\"),t=r.indexOf(\")\");if(a!==-1&&t+1===r.length){var n=r.substr(0,a),s=r.substr(a+1,t-(a+1)).split(\",\"),o=1;switch(n){case\"rgba\":if(4!==s.length)return null;o=parse_css_float(s.pop());case\"rgb\":return 3!==s.length?null:[parse_css_int(s[0]),parse_css_int(s[1]),parse_css_int(s[2]),o];case\"hsla\":if(4!==s.length)return null;o=parse_css_float(s.pop());case\"hsl\":if(3!==s.length)return null;var i=(parseFloat(s[0])%360+360)%360/360,u=parse_css_float(s[1]),g=parse_css_float(s[2]),d=g<=.5?g*(u+1):g+u-g*u,c=2*g-d;return[clamp_css_byte(255*css_hue_to_rgb(c,d,i+1/3)),clamp_css_byte(255*css_hue_to_rgb(c,d,i)),clamp_css_byte(255*css_hue_to_rgb(c,d,i-1/3)),o];default:return null}}return null}var kCSSColorTable={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],rebeccapurple:[102,51,153,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};try{exports.parseCSSColor=parseCSSColor}catch(e){}\n},{}],108:[function(require,module,exports){\nfunction sss(r){var e,t,s,n,u,a;switch(typeof r){case\"object\":if(null===r)return null;if(isArray(r)){for(s=\"[\",t=r.length-1,e=0;e-1&&(s+=sss(r[e])),s+\"]\"}for(n=objKeys(r).sort(),t=n.length,s=\"{\",u=n[e=0],a=t>0&&void 0!==r[u];e15?\"\\\\u00\"+e.toString(16):\"\\\\u000\"+e.toString(16)}};module.exports=function(r){if(void 0!==r)return\"\"+sss(r)},module.exports.stringSearch=strReg,module.exports.stringReplace=strReplace;\n},{}],109:[function(require,module,exports){\nfunction isObjectLike(r){return!!r&&\"object\"==typeof r}function arraySome(r,e){for(var a=-1,t=r.length;++as))return!1;for(;++c-1&&t%1==0&&t<=MAX_SAFE_INTEGER}function isObject(t){var e=typeof t;return!!t&&(\"object\"==e||\"function\"==e)}function isObjectLike(t){return!!t&&\"object\"==typeof t}var MAX_SAFE_INTEGER=9007199254740991,argsTag=\"[object Arguments]\",funcTag=\"[object Function]\",genTag=\"[object GeneratorFunction]\",objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,objectToString=objectProto.toString,propertyIsEnumerable=objectProto.propertyIsEnumerable;module.exports=isArguments;\n},{}],113:[function(require,module,exports){\nfunction isObjectLike(t){return!!t&&\"object\"==typeof t}function getNative(t,r){var e=null==t?void 0:t[r];return isNative(e)?e:void 0}function isLength(t){return\"number\"==typeof t&&t>-1&&t%1==0&&t<=MAX_SAFE_INTEGER}function isFunction(t){return isObject(t)&&objToString.call(t)==funcTag}function isObject(t){var r=typeof t;return!!t&&(\"object\"==r||\"function\"==r)}function isNative(t){return null!=t&&(isFunction(t)?reIsNative.test(fnToString.call(t)):isObjectLike(t)&&reIsHostCtor.test(t))}var arrayTag=\"[object Array]\",funcTag=\"[object Function]\",reIsHostCtor=/^\\[object .+?Constructor\\]$/,objectProto=Object.prototype,fnToString=Function.prototype.toString,hasOwnProperty=objectProto.hasOwnProperty,objToString=objectProto.toString,reIsNative=RegExp(\"^\"+fnToString.call(hasOwnProperty).replace(/[\\\\^$.*+?()[\\]{}|]/g,\"\\\\$&\").replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g,\"$1.*?\")+\"$\"),nativeIsArray=getNative(Array,\"isArray\"),MAX_SAFE_INTEGER=9007199254740991,isArray=nativeIsArray||function(t){return isObjectLike(t)&&isLength(t.length)&&objToString.call(t)==arrayTag};module.exports=isArray;\n},{}],114:[function(require,module,exports){\nfunction isEqual(a,l,i,e){i=\"function\"==typeof i?bindCallback(i,e,3):void 0;var s=i?i(a,l):void 0;return void 0===s?baseIsEqual(a,l,i):!!s}var baseIsEqual=require(\"lodash._baseisequal\"),bindCallback=require(\"lodash._bindcallback\");module.exports=isEqual;\n},{\"lodash._baseisequal\":109,\"lodash._bindcallback\":110}],115:[function(require,module,exports){\nfunction isLength(a){return\"number\"==typeof a&&a>-1&&a%1==0&&a<=MAX_SAFE_INTEGER}function isObjectLike(a){return!!a&&\"object\"==typeof a}function isTypedArray(a){return isObjectLike(a)&&isLength(a.length)&&!!typedArrayTags[objectToString.call(a)]}var MAX_SAFE_INTEGER=9007199254740991,argsTag=\"[object Arguments]\",arrayTag=\"[object Array]\",boolTag=\"[object Boolean]\",dateTag=\"[object Date]\",errorTag=\"[object Error]\",funcTag=\"[object Function]\",mapTag=\"[object Map]\",numberTag=\"[object Number]\",objectTag=\"[object Object]\",regexpTag=\"[object RegExp]\",setTag=\"[object Set]\",stringTag=\"[object String]\",weakMapTag=\"[object WeakMap]\",arrayBufferTag=\"[object ArrayBuffer]\",dataViewTag=\"[object DataView]\",float32Tag=\"[object Float32Array]\",float64Tag=\"[object Float64Array]\",int8Tag=\"[object Int8Array]\",int16Tag=\"[object Int16Array]\",int32Tag=\"[object Int32Array]\",uint8Tag=\"[object Uint8Array]\",uint8ClampedTag=\"[object Uint8ClampedArray]\",uint16Tag=\"[object Uint16Array]\",uint32Tag=\"[object Uint32Array]\",typedArrayTags={};typedArrayTags[float32Tag]=typedArrayTags[float64Tag]=typedArrayTags[int8Tag]=typedArrayTags[int16Tag]=typedArrayTags[int32Tag]=typedArrayTags[uint8Tag]=typedArrayTags[uint8ClampedTag]=typedArrayTags[uint16Tag]=typedArrayTags[uint32Tag]=!0,typedArrayTags[argsTag]=typedArrayTags[arrayTag]=typedArrayTags[arrayBufferTag]=typedArrayTags[boolTag]=typedArrayTags[dataViewTag]=typedArrayTags[dateTag]=typedArrayTags[errorTag]=typedArrayTags[funcTag]=typedArrayTags[mapTag]=typedArrayTags[numberTag]=typedArrayTags[objectTag]=typedArrayTags[regexpTag]=typedArrayTags[setTag]=typedArrayTags[stringTag]=typedArrayTags[weakMapTag]=!1;var objectProto=Object.prototype,objectToString=objectProto.toString;module.exports=isTypedArray;\n},{}],116:[function(require,module,exports){\nfunction baseProperty(e){return function(t){return null==t?void 0:t[e]}}function isArrayLike(e){return null!=e&&isLength(getLength(e))}function isIndex(e,t){return e=\"number\"==typeof e||reIsUint.test(e)?+e:-1,t=null==t?MAX_SAFE_INTEGER:t,e>-1&&e%1==0&&e-1&&e%1==0&&e<=MAX_SAFE_INTEGER}function shimKeys(e){for(var t=keysIn(e),r=t.length,n=r&&e.length,s=!!n&&isLength(n)&&(isArray(e)||isArguments(e)),o=-1,i=[];++o0;++n\":{},\">=\":{},\"<\":{},\"<=\":{},\"in\":{},\"!in\":{},\"all\":{},\"any\":{},\"none\":{},\"has\":{},\"!has\":{}}},\"geometry_type\":{\"type\":\"enum\",\"values\":{\"Point\":{},\"LineString\":{},\"Polygon\":{}}},\"function\":{\"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\":false}},\"function_stop\":{\"type\":\"array\",\"minimum\":0,\"maximum\":22,\"value\":[\"number\",\"color\"],\"length\":2},\"light\":{\"anchor\":{\"type\":\"enum\",\"default\":\"viewport\",\"values\":{\"map\":{},\"viewport\":{}},\"transition\":false},\"position\":{\"type\":\"array\",\"default\":[1.15,210,30],\"length\":3,\"value\":\"number\",\"transition\":true,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":false},\"color\":{\"type\":\"color\",\"default\":\"#ffffff\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":false,\"transition\":true},\"intensity\":{\"type\":\"number\",\"default\":0.5,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":false,\"transition\":true}},\"paint\":[\"paint_fill\",\"paint_line\",\"paint_circle\",\"paint_fill-extrusion\",\"paint_symbol\",\"paint_raster\",\"paint_background\"],\"paint_fill\":{\"fill-antialias\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":true},\"fill-opacity\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true},\"fill-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[{\"!\":\"fill-pattern\"}]},\"fill-outline-color\":{\"type\":\"color\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[{\"!\":\"fill-pattern\"},{\"fill-antialias\":true}]},\"fill-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\"},\"fill-translate-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"fill-translate\"]},\"fill-pattern\":{\"type\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"transition\":true}},\"paint_fill-extrusion\":{\"fill-extrusion-opacity\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":false,\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true},\"fill-extrusion-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[{\"!\":\"fill-extrusion-pattern\"}]},\"fill-extrusion-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\"},\"fill-extrusion-translate-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"fill-extrusion-translate\"]},\"fill-extrusion-pattern\":{\"type\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"transition\":true},\"fill-extrusion-height\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"default\":0,\"minimum\":0,\"units\":\"meters\",\"transition\":true},\"fill-extrusion-base\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"default\":0,\"minimum\":0,\"units\":\"meters\",\"transition\":true,\"requires\":[\"fill-extrusion-height\"]}},\"paint_line\":{\"line-opacity\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true},\"line-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[{\"!\":\"line-pattern\"}]},\"line-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\"},\"line-translate-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"line-translate\"]},\"line-width\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\"},\"line-gap-width\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\"},\"line-offset\":{\"type\":\"number\",\"default\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\"},\"line-blur\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\"},\"line-dasharray\":{\"type\":\"array\",\"value\":\"number\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"minimum\":0,\"transition\":true,\"units\":\"line widths\",\"requires\":[{\"!\":\"line-pattern\"}]},\"line-pattern\":{\"type\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"transition\":true}},\"paint_circle\":{\"circle-radius\":{\"type\":\"number\",\"default\":5,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\"},\"circle-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true},\"circle-blur\":{\"type\":\"number\",\"default\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true},\"circle-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true},\"circle-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\"},\"circle-translate-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"circle-translate\"]},\"circle-pitch-scale\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\"},\"circle-stroke-width\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\"},\"circle-stroke-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true},\"circle-stroke-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true}},\"paint_symbol\":{\"icon-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[\"icon-image\"]},\"icon-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[\"icon-image\"]},\"icon-halo-color\":{\"type\":\"color\",\"default\":\"rgba(0, 0, 0, 0)\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[\"icon-image\"]},\"icon-halo-width\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"icon-image\"]},\"icon-halo-blur\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"icon-image\"]},\"icon-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"icon-image\"]},\"icon-translate-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"icon-image\",\"icon-translate\"]},\"text-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[\"text-field\"]},\"text-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[\"text-field\"]},\"text-halo-color\":{\"type\":\"color\",\"default\":\"rgba(0, 0, 0, 0)\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[\"text-field\"]},\"text-halo-width\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"text-field\"]},\"text-halo-blur\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"text-field\"]},\"text-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"text-field\"]},\"text-translate-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"text-field\",\"text-translate\"]}},\"paint_raster\":{\"raster-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true},\"raster-hue-rotate\":{\"type\":\"number\",\"default\":0,\"period\":360,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"degrees\"},\"raster-brightness-min\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"default\":0,\"minimum\":0,\"maximum\":1,\"transition\":true},\"raster-brightness-max\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true},\"raster-saturation\":{\"type\":\"number\",\"default\":0,\"minimum\":-1,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true},\"raster-contrast\":{\"type\":\"number\",\"default\":0,\"minimum\":-1,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true},\"raster-fade-duration\":{\"type\":\"number\",\"default\":300,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"milliseconds\"}},\"paint_background\":{\"background-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"requires\":[{\"!\":\"background-pattern\"}]},\"background-pattern\":{\"type\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"transition\":true},\"background-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true}},\"transition\":{\"duration\":{\"type\":\"number\",\"default\":300,\"minimum\":0,\"units\":\"milliseconds\"},\"delay\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"units\":\"milliseconds\"}}}\n},{}],119:[function(require,module,exports){\n\"use strict\";module.exports=function(r){for(var t=arguments,e=1;e7)return[new ValidationError(u,a,\"constants have been deprecated as of v8\")];if(!(a in l.constants))return[new ValidationError(u,a,'constant \"%s\" not found',a)];e=extend({},e,{value:l.constants[a]})}return n.function&&\"object\"===getType(a)?r(e):n.type&&i[n.type]?i[n.type](e):t(extend({},e,{valueSpec:n.type?o[n.type]:n}))};\n},{\"../error/validation_error\":102,\"../util/extend\":119,\"../util/get_type\":120,\"./validate_array\":125,\"./validate_boolean\":126,\"./validate_color\":127,\"./validate_constants\":128,\"./validate_enum\":129,\"./validate_filter\":130,\"./validate_function\":131,\"./validate_layer\":133,\"./validate_light\":135,\"./validate_number\":136,\"./validate_object\":137,\"./validate_source\":140,\"./validate_string\":141}],125:[function(require,module,exports){\n\"use strict\";var getType=require(\"../util/get_type\"),validate=require(\"./validate\"),ValidationError=require(\"../error/validation_error\");module.exports=function(e){var r=e.value,t=e.valueSpec,a=e.style,n=e.styleSpec,l=e.key,i=e.arrayElementValidator||validate;if(\"array\"!==getType(r))return[new ValidationError(l,r,\"array expected, %s found\",getType(r))];if(t.length&&r.length!==t.length)return[new ValidationError(l,r,\"array length %d expected, length %d found\",t.length,r.length)];if(t[\"min-length\"]&&r.length7)return t?[new ValidationError(e,t,\"constants have been deprecated as of v8\")]:[];var o=getType(t);if(\"object\"!==o)return[new ValidationError(e,t,\"object expected, %s found\",o)];var n=[];for(var i in t)\"@\"!==i[0]&&n.push(new ValidationError(e+\".\"+i,t[i],'constants must start with \"@\"'));return n};\n},{\"../error/validation_error\":102,\"../util/get_type\":120}],129:[function(require,module,exports){\n\"use strict\";var ValidationError=require(\"../error/validation_error\"),unbundle=require(\"../util/unbundle_jsonlint\");module.exports=function(e){var r=e.key,n=e.value,u=e.valueSpec,o=[];return Array.isArray(u.values)?u.values.indexOf(unbundle(n))===-1&&o.push(new ValidationError(r,n,\"expected one of [%s], %s found\",u.values.join(\", \"),n)):Object.keys(u.values).indexOf(unbundle(n))===-1&&o.push(new ValidationError(r,n,\"expected one of [%s], %s found\",Object.keys(u.values).join(\", \"),n)),o};\n},{\"../error/validation_error\":102,\"../util/unbundle_jsonlint\":123}],130:[function(require,module,exports){\n\"use strict\";var ValidationError=require(\"../error/validation_error\"),validateEnum=require(\"./validate_enum\"),getType=require(\"../util/get_type\"),unbundle=require(\"../util/unbundle_jsonlint\");module.exports=function e(r){var t,a=r.value,n=r.key,l=r.styleSpec,s=[];if(\"array\"!==getType(a))return[new ValidationError(n,a,\"array expected, %s found\",getType(a))];if(a.length<1)return[new ValidationError(n,a,\"filter array must have at least 1 element\")];switch(s=s.concat(validateEnum({key:n+\"[0]\",value:a[0],valueSpec:l.filter_operator,style:r.style,styleSpec:r.styleSpec})),unbundle(a[0])){case\"<\":case\"<=\":case\">\":case\">=\":a.length>=2&&\"$type\"===unbundle(a[1])&&s.push(new ValidationError(n,a,'\"$type\" cannot be use with operator \"%s\"',a[0]));case\"==\":case\"!=\":3!==a.length&&s.push(new ValidationError(n,a,'filter array for operator \"%s\" must have 3 elements',a[0]));case\"in\":case\"!in\":a.length>=2&&(t=getType(a[1]),\"string\"!==t&&s.push(new ValidationError(n+\"[1]\",a[1],\"string expected, %s found\",t)));for(var o=2;ounbundle(r[0].zoom))return[new ValidationError(o,r[0].zoom,\"stop zoom values must appear in ascending order\")];unbundle(r[0].zoom)!==l&&(l=unbundle(r[0].zoom),i=void 0,s={}),t=t.concat(validateObject({key:o+\"[0]\",value:r[0],valueSpec:{zoom:{}},style:e.style,styleSpec:e.styleSpec,objectElementValidators:{zoom:validateNumber,value:a}}))}else t=t.concat(a({key:o+\"[0]\",value:r[0],valueSpec:{},style:e.style,styleSpec:e.styleSpec}));return t.concat(validate({key:o+\"[1]\",value:r[1],valueSpec:u,style:e.style,styleSpec:e.styleSpec}))}function a(e){var t=getType(e.value),r=unbundle(e.value);if(n){if(t!==n)return[new ValidationError(e.key,e.value,\"%s stop domain type must match previous stop domain type %s\",t,n)]}else n=t;if(\"number\"!==t&&\"string\"!==t&&\"boolean\"!==t)return[new ValidationError(e.key,e.value,\"stop domain value must be a number, string, or boolean\")];if(\"number\"!==t&&\"categorical\"!==p){var a=\"number expected, %s found\";return u[\"property-function\"]&&void 0===p&&(a+='\\nIf you intended to use a categorical function, specify `\"type\": \"categorical\"`.'),[new ValidationError(e.key,e.value,a,t)]}return\"categorical\"!==p||\"number\"!==t||isFinite(r)&&Math.floor(r)===r?\"number\"===t&&void 0!==i&&r=8&&(d&&!e.valueSpec[\"property-function\"]?v.push(new ValidationError(e.key,e.value,\"property functions not supported\")):y&&!e.valueSpec[\"zoom-function\"]&&v.push(new ValidationError(e.key,e.value,\"zoom functions not supported\"))),\"categorical\"!==p&&!c||void 0!==e.value.property||v.push(new ValidationError(e.key,e.value,'\"property\" property is required')),v};\n},{\"../error/validation_error\":102,\"../util/get_type\":120,\"../util/unbundle_jsonlint\":123,\"./validate\":124,\"./validate_array\":125,\"./validate_number\":136,\"./validate_object\":137}],132:[function(require,module,exports){\n\"use strict\";var ValidationError=require(\"../error/validation_error\"),validateString=require(\"./validate_string\");module.exports=function(r){var e=r.value,t=r.key,a=validateString(r);return a.length?a:(e.indexOf(\"{fontstack}\")===-1&&a.push(new ValidationError(t,e,'\"glyphs\" url must include a \"{fontstack}\" token')),e.indexOf(\"{range}\")===-1&&a.push(new ValidationError(t,e,'\"glyphs\" url must include a \"{range}\" token')),a)};\n},{\"../error/validation_error\":102,\"./validate_string\":141}],133:[function(require,module,exports){\n\"use strict\";var ValidationError=require(\"../error/validation_error\"),unbundle=require(\"../util/unbundle_jsonlint\"),validateObject=require(\"./validate_object\"),validateFilter=require(\"./validate_filter\"),validatePaintProperty=require(\"./validate_paint_property\"),validateLayoutProperty=require(\"./validate_layout_property\"),extend=require(\"../util/extend\");module.exports=function(e){var r=[],t=e.value,a=e.key,i=e.style,l=e.styleSpec;t.type||t.ref||r.push(new ValidationError(a,t,'either \"type\" or \"ref\" is required'));var u=unbundle(t.type),n=unbundle(t.ref);if(t.id)for(var o=unbundle(t.id),s=0;sm.maximum?[new ValidationError(r,i,\"%s is greater than the maximum value %s\",i,m.maximum)]:[]};\n},{\"../error/validation_error\":102,\"../util/get_type\":120}],137:[function(require,module,exports){\n\"use strict\";var ValidationError=require(\"../error/validation_error\"),getType=require(\"../util/get_type\"),validateSpec=require(\"./validate\");module.exports=function(e){var r=e.key,t=e.value,i=e.valueSpec||{},a=e.objectElementValidators||{},o=e.style,l=e.styleSpec,n=[],u=getType(t);if(\"object\"!==u)return[new ValidationError(r,t,\"object expected, %s found\",u)];for(var d in t){var p=d.split(\".\")[0],s=i[p]||i[\"*\"],c=void 0;if(a[p])c=a[p];else if(i[p])c=validateSpec;else if(a[\"*\"])c=a[\"*\"];else{if(!i[\"*\"]){n.push(new ValidationError(r,t[d],'unknown property \"%s\"',d));continue}c=validateSpec}n=n.concat(c({key:(r?r+\".\":r)+d,value:t[d],valueSpec:s,style:o,styleSpec:l,object:t,objectKey:d}))}for(var v in i)i[v].required&&void 0===i[v].default&&void 0===t[v]&&n.push(new ValidationError(r,t,'missing required property \"%s\"',v));return n};\n},{\"../error/validation_error\":102,\"../util/get_type\":120,\"./validate\":124}],138:[function(require,module,exports){\n\"use strict\";var validateProperty=require(\"./validate_property\");module.exports=function(r){return validateProperty(r,\"paint\")};\n},{\"./validate_property\":139}],139:[function(require,module,exports){\n\"use strict\";var validate=require(\"./validate\"),ValidationError=require(\"../error/validation_error\"),getType=require(\"../util/get_type\");module.exports=function(e,t){var r=e.key,i=e.style,a=e.styleSpec,n=e.value,o=e.objectKey,l=a[t+\"_\"+e.layerType];if(!l)return[];var y=o.match(/^(.*)-transition$/);if(\"paint\"===t&&y&&l[y[1]]&&l[y[1]].transition)return validate({key:r,value:n,valueSpec:a.transition,style:i,styleSpec:a});var p=e.valueSpec||l[o];if(!p)return[new ValidationError(r,n,'unknown property \"%s\"',o)];var s;if(\"string\"===getType(n)&&p[\"property-function\"]&&!p.tokens&&(s=/^{([^}]+)}$/.exec(n)))return[new ValidationError(r,n,'\"%s\" does not support interpolation syntax\\nUse an identity property function instead: `{ \"type\": \"identity\", \"property\": %s` }`.',o,JSON.stringify(s[1]))];var u=[];return\"symbol\"===e.layerType&&\"text-field\"===o&&i&&!i.glyphs&&u.push(new ValidationError(r,n,'use of \"text-field\" requires a style \"glyphs\" property')),u.concat(validate({key:e.key,value:n,valueSpec:p,style:i,styleSpec:a}))};\n},{\"../error/validation_error\":102,\"../util/get_type\":120,\"./validate\":124}],140:[function(require,module,exports){\n\"use strict\";var ValidationError=require(\"../error/validation_error\"),unbundle=require(\"../util/unbundle_jsonlint\"),validateObject=require(\"./validate_object\"),validateEnum=require(\"./validate_enum\");module.exports=function(e){var a=e.value,t=e.key,r=e.styleSpec,l=e.style;if(!a.type)return[new ValidationError(t,a,'\"type\" is required')];var u=unbundle(a.type),i=[];switch(u){case\"vector\":case\"raster\":if(i=i.concat(validateObject({key:t,value:a,valueSpec:r.source_tile,style:e.style,styleSpec:r})),\"url\"in a)for(var s in a)[\"type\",\"url\",\"tileSize\"].indexOf(s)<0&&i.push(new ValidationError(t+\".\"+s,a[s],'a source with a \"url\" property may not include a \"%s\" property',s));return i;case\"geojson\":return validateObject({key:t,value:a,valueSpec:r.source_geojson,style:l,styleSpec:r});case\"video\":return validateObject({key:t,value:a,valueSpec:r.source_video,style:l,styleSpec:r});case\"image\":return validateObject({key:t,value:a,valueSpec:r.source_image,style:l,styleSpec:r});case\"canvas\":return validateObject({key:t,value:a,valueSpec:r.source_canvas,style:l,styleSpec:r});default:return validateEnum({key:t+\".type\",value:a.type,valueSpec:{values:[\"vector\",\"raster\",\"geojson\",\"video\",\"image\",\"canvas\"]},style:l,styleSpec:r})}};\n},{\"../error/validation_error\":102,\"../util/unbundle_jsonlint\":123,\"./validate_enum\":129,\"./validate_object\":137}],141:[function(require,module,exports){\n\"use strict\";var getType=require(\"../util/get_type\"),ValidationError=require(\"../error/validation_error\");module.exports=function(r){var e=r.value,t=r.key,i=getType(e);return\"string\"!==i?[new ValidationError(t,e,\"string expected, %s found\",i)]:[]};\n},{\"../error/validation_error\":102,\"../util/get_type\":120}],142:[function(require,module,exports){\n\"use strict\";function validateStyleMin(e,a){a=a||latestStyleSpec;var t=[];return t=t.concat(validate({key:\"\",value:e,valueSpec:a.$root,styleSpec:a,style:e,objectElementValidators:{glyphs:validateGlyphsURL,\"*\":function(){return[]}}})),a.$version>7&&e.constants&&(t=t.concat(validateConstants({key:\"constants\",value:e.constants,style:e,styleSpec:a}))),sortErrors(t)}function sortErrors(e){return[].concat(e).sort(function(e,a){return e.line-a.line})}function wrapCleanErrors(e){return function(){return sortErrors(e.apply(this,arguments))}}var validateConstants=require(\"./validate/validate_constants\"),validate=require(\"./validate/validate\"),latestStyleSpec=require(\"./reference/latest\"),validateGlyphsURL=require(\"./validate/validate_glyphs_url\");validateStyleMin.source=wrapCleanErrors(require(\"./validate/validate_source\")),validateStyleMin.light=wrapCleanErrors(require(\"./validate/validate_light\")),validateStyleMin.layer=wrapCleanErrors(require(\"./validate/validate_layer\")),validateStyleMin.filter=wrapCleanErrors(require(\"./validate/validate_filter\")),validateStyleMin.paintProperty=wrapCleanErrors(require(\"./validate/validate_paint_property\")),validateStyleMin.layoutProperty=wrapCleanErrors(require(\"./validate/validate_layout_property\")),module.exports=validateStyleMin;\n},{\"./reference/latest\":117,\"./validate/validate\":124,\"./validate/validate_constants\":128,\"./validate/validate_filter\":130,\"./validate/validate_glyphs_url\":132,\"./validate/validate_layer\":133,\"./validate/validate_layout_property\":134,\"./validate/validate_light\":135,\"./validate/validate_paint_property\":138,\"./validate/validate_source\":140}],143:[function(require,module,exports){\n\"use strict\";var AnimationLoop=function(){this.n=0,this.times=[]};AnimationLoop.prototype.stopped=function(){return this.times=this.times.filter(function(t){return t.time>=(new Date).getTime()}),!this.times.length},AnimationLoop.prototype.set=function(t){return this.times.push({id:this.n,time:t+(new Date).getTime()}),this.n++},AnimationLoop.prototype.cancel=function(t){this.times=this.times.filter(function(i){return i.id!==t})},module.exports=AnimationLoop;\n},{}],144:[function(require,module,exports){\n\"use strict\";var Evented=require(\"../util/evented\"),ajax=require(\"../util/ajax\"),browser=require(\"../util/browser\"),normalizeURL=require(\"../util/mapbox\").normalizeSpriteURL,SpritePosition=function(){this.x=0,this.y=0,this.width=0,this.height=0,this.pixelRatio=1,this.sdf=!1},ImageSprite=function(t){function i(i,e){var a=this;t.call(this),this.base=i,this.retina=browser.devicePixelRatio>1,this.setEventedParent(e);var r=this.retina?\"@2x\":\"\";ajax.getJSON(normalizeURL(i,r,\".json\"),function(t,i){return t?void a.fire(\"error\",{error:t}):(a.data=i,void(a.imgData&&a.fire(\"data\",{dataType:\"style\"})))}),ajax.getImage(normalizeURL(i,r,\".png\"),function(t,i){if(t)return void a.fire(\"error\",{error:t});a.imgData=browser.getImageData(i);for(var e=0;e1!==this.retina){var e=new i(this.base);e.on(\"data\",function(){t.data=e.data,t.imgData=e.imgData,t.width=e.width,t.retina=e.retina})}},i.prototype.getSpritePosition=function(t){if(!this.loaded())return new SpritePosition;var i=this.data&&this.data[t];return i&&this.imgData?i:new SpritePosition},i}(Evented);module.exports=ImageSprite;\n},{\"../util/ajax\":191,\"../util/browser\":192,\"../util/evented\":200,\"../util/mapbox\":208}],145:[function(require,module,exports){\n\"use strict\";var styleSpec=require(\"../style-spec/reference/latest\"),util=require(\"../util/util\"),Evented=require(\"../util/evented\"),validateStyle=require(\"./validate_style\"),StyleDeclaration=require(\"./style_declaration\"),StyleTransition=require(\"./style_transition\"),TRANSITION_SUFFIX=\"-transition\",Light=function(t){function i(i){t.call(this),this.properties=[\"anchor\",\"color\",\"position\",\"intensity\"],this._specifications=styleSpec.light,this.set(i)}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.set=function(t){var i=this;if(!this._validate(validateStyle.light,t)){this._declarations={},this._transitions={},this._transitionOptions={},this.calculated={},t=util.extend({anchor:this._specifications.anchor.default,color:this._specifications.color.default,position:this._specifications.position.default,intensity:this._specifications.intensity.default},t);for(var e=0,o=i.properties;eMath.floor(e)&&(t.lastIntegerZoom=Math.floor(e+1),t.lastIntegerZoomTime=Date.now()),t.lastZoom=e},t.prototype._checkLoaded=function(){if(!this._loaded)throw new Error(\"Style is not done loading\")},t.prototype.update=function(e,t){var r=this;if(this._changed){var i=Object.keys(this._updatedLayers),o=Object.keys(this._removedLayers);(i.length||o.length||this._updatedSymbolOrder)&&this._updateWorkerLayers(i,o);for(var s in r._updatedSources){var a=r._updatedSources[s];\"reload\"===a?r._reloadSource(s):\"clear\"===a&&r._clearSource(s)}this._applyClasses(e,t),this._resetUpdates(),this.fire(\"data\",{dataType:\"style\"})}},t.prototype._updateWorkerLayers=function(e,t){var r=this,i=this._updatedSymbolOrder?this._order.filter(function(e){return\"symbol\"===r._layers[e].type}):null;this.dispatcher.broadcast(\"updateLayers\",{layers:this._serializeLayers(e),removedIds:t,symbolOrder:i})},t.prototype._resetUpdates=function(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSymbolOrder=!1,this._updatedSources={},this._updatedPaintProps={},this._updatedAllPaintProps=!1},t.prototype.setState=function(e){var t=this;if(this._checkLoaded(),validateStyle.emitErrors(this,validateStyle(e)))return!1;e=util.extend({},e),e.layers=deref(e.layers);var r=diff(this.serialize(),e).filter(function(e){return!(e.command in ignoredDiffOperations)});if(0===r.length)return!1;var i=r.filter(function(e){return!(e.command in supportedDiffOperations)});if(i.length>0)throw new Error(\"Unimplemented: \"+i.map(function(e){return e.command}).join(\", \")+\".\");return r.forEach(function(e){\"setTransition\"!==e.command&&t[e.command].apply(t,e.args)}),this.stylesheet=e,!0},t.prototype.addSource=function(e,t,r){var i=this;if(this._checkLoaded(),void 0!==this.sourceCaches[e])throw new Error(\"There is already a source with this ID\");if(!t.type)throw new Error(\"The type property must be defined, but the only the following properties were given: \"+Object.keys(t)+\".\");var o=[\"vector\",\"raster\",\"geojson\",\"video\",\"image\",\"canvas\"],s=o.indexOf(t.type)>=0;if(!s||!this._validate(validateStyle.source,\"sources.\"+e,t,null,r)){var a=this.sourceCaches[e]=new SourceCache(e,t,this.dispatcher);a.style=this,a.setEventedParent(this,function(){return{isSourceLoaded:i.loaded(),source:a.serialize(),sourceId:e}}),a.onAdd(this.map),this._changed=!0}},t.prototype.removeSource=function(e){if(this._checkLoaded(),void 0===this.sourceCaches[e])throw new Error(\"There is no source with this ID\");var t=this.sourceCaches[e];delete this.sourceCaches[e],delete this._updatedSources[e],t.setEventedParent(null),t.clearTiles(),t.onRemove&&t.onRemove(this.map),this._changed=!0},t.prototype.getSource=function(e){return this.sourceCaches[e]&&this.sourceCaches[e].getSource()},t.prototype.addLayer=function(e,t,r){this._checkLoaded();var i=e.id;if(\"object\"==typeof e.source&&(this.addSource(i,e.source),e=util.extend(e,{source:i})),!this._validate(validateStyle.layer,\"layers.\"+i,e,{arrayIndex:-1},r)){var o=StyleLayer.create(e);this._validateLayer(o),o.setEventedParent(this,{layer:{id:i}});var s=t?this._order.indexOf(t):this._order.length;if(this._order.splice(s,0,i),this._layers[i]=o,this._removedLayers[i]&&o.source){var a=this._removedLayers[i];delete this._removedLayers[i],this._updatedSources[o.source]=a.type!==o.type?\"clear\":\"reload\"}this._updateLayer(o),\"symbol\"===o.type&&(this._updatedSymbolOrder=!0),this.updateClasses(i)}},t.prototype.moveLayer=function(e,t){this._checkLoaded(),this._changed=!0;var r=this._layers[e];if(!r)return void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be moved.\")});var i=this._order.indexOf(e);this._order.splice(i,1);var o=t?this._order.indexOf(t):this._order.length;this._order.splice(o,0,e),\"symbol\"===r.type&&(this._updatedSymbolOrder=!0,r.source&&!this._updatedSources[r.source]&&(this._updatedSources[r.source]=\"reload\"))},t.prototype.removeLayer=function(e){this._checkLoaded();var t=this._layers[e];if(!t)return void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be removed.\")});t.setEventedParent(null);var r=this._order.indexOf(e);this._order.splice(r,1),\"symbol\"===t.type&&(this._updatedSymbolOrder=!0),this._changed=!0,this._removedLayers[e]=t,delete this._layers[e],delete this._updatedLayers[e],delete this._updatedPaintProps[e]},t.prototype.getLayer=function(e){return this._layers[e]},t.prototype.setLayerZoomRange=function(e,t,r){this._checkLoaded();var i=this.getLayer(e);return i?void(i.minzoom===t&&i.maxzoom===r||(null!=t&&(i.minzoom=t),null!=r&&(i.maxzoom=r),this._updateLayer(i))):void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot have zoom extent.\")})},t.prototype.setFilter=function(e,t){this._checkLoaded();var r=this.getLayer(e);return r?void(null!==t&&void 0!==t&&this._validate(validateStyle.filter,\"layers.\"+r.id+\".filter\",t)||util.deepEqual(r.filter,t)||(r.filter=util.clone(t),this._updateLayer(r))):void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be filtered.\")})},t.prototype.getFilter=function(e){return util.clone(this.getLayer(e).filter)},t.prototype.setLayoutProperty=function(e,t,r){this._checkLoaded();var i=this.getLayer(e);return i?void(util.deepEqual(i.getLayoutProperty(t),r)||(i.setLayoutProperty(t,r),this._updateLayer(i))):void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be styled.\")})},t.prototype.getLayoutProperty=function(e,t){return this.getLayer(e).getLayoutProperty(t)},t.prototype.setPaintProperty=function(e,t,r,i){this._checkLoaded();var o=this.getLayer(e);if(!o)return void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be styled.\")});if(!util.deepEqual(o.getPaintProperty(t,i),r)){var s=o.isPaintValueFeatureConstant(t);o.setPaintProperty(t,r,i);var a=!(r&&MapboxGLFunction.isFunctionDefinition(r)&&\"$zoom\"!==r.property&&void 0!==r.property);a&&s||this._updateLayer(o),this.updateClasses(e,t)}},t.prototype.getPaintProperty=function(e,t,r){return this.getLayer(e).getPaintProperty(t,r)},t.prototype.getTransition=function(){return util.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},t.prototype.updateClasses=function(e,t){if(this._changed=!0,e){var r=this._updatedPaintProps;r[e]||(r[e]={}),r[e][t||\"all\"]=!0}else this._updatedAllPaintProps=!0},t.prototype.serialize=function(){var e=this;return util.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:util.mapObject(this.sourceCaches,function(e){return e.serialize()}),layers:this._order.map(function(t){return e._layers[t].serialize()})},function(e){return void 0!==e})},t.prototype._updateLayer=function(e){this._updatedLayers[e.id]=!0,e.source&&!this._updatedSources[e.source]&&(this._updatedSources[e.source]=\"reload\"),this._changed=!0},t.prototype._flattenRenderedFeatures=function(e){for(var t=this,r=[],i=this._order.length-1;i>=0;i--)for(var o=t._order[i],s=0,a=e;s=this.maxzoom)||\"none\"===this.layout.visibility)},i.prototype.updatePaintTransitions=function(t,i,a,e,n){for(var o=this,r=util.extend({},this._paintDeclarations[\"\"]),s=0;s=this.endTime)return e;var a=this.oldTransition.calculate(t,i,this.startTime),n=util.easeCubicInOut((o-this.startTime-this.delay)/this.duration);return this.interp(a,e,n)},StyleTransition.prototype._calculateTargetValue=function(t,i){if(!this.zoomTransitioned)return this.declaration.calculate(t,i);var o=t.zoom,e=this.zoomHistory.lastIntegerZoom,a=o>e?2:.5,n=this.declaration.calculate({zoom:o>e?o-1:o+1},i),r=this.declaration.calculate({zoom:o},i),s=Math.min((Date.now()-this.zoomHistory.lastIntegerZoomTime)/this.duration,1),l=Math.abs(o-e),u=interpolate(s,1,l);return void 0!==n&&void 0!==r?{from:n,fromScale:a,to:r,toScale:1,t:u}:void 0},module.exports=StyleTransition;\n},{\"../util/interpolate\":204,\"../util/util\":212}],156:[function(require,module,exports){\n\"use strict\";module.exports=require(\"../style-spec/validate_style.min\"),module.exports.emitErrors=function(r,e){if(e&&e.length){for(var t=0;t-a/2;){if(s--,s<0)return!1;f-=e[s].dist(i),i=e[s]}f+=e[s].dist(e[s+1]),s++;for(var l=[],o=0;f
r;)o-=l.shift().angleDelta;if(o>n)return!1;s++,f+=c.dist(g)}return!0}module.exports=checkMaxAngle;\n},{}],159:[function(require,module,exports){\n\"use strict\";function clipLine(n,x,y,o,e){for(var r=[],t=0;t=o&&w.x>=o||(P.x>=o?P=new Point(o,P.y+(w.y-P.y)*((o-P.x)/(w.x-P.x)))._round():w.x>=o&&(w=new Point(o,P.y+(w.y-P.y)*((o-P.x)/(w.x-P.x)))._round()),P.y>=e&&w.y>=e||(P.y>=e?P=new Point(P.x+(w.x-P.x)*((e-P.y)/(w.y-P.y)),e)._round():w.y>=e&&(w=new Point(P.x+(w.x-P.x)*((e-P.y)/(w.y-P.y)),e)._round()),u&&P.equals(u[u.length-1])||(u=[P],r.push(u)),u.push(w)))))}return r}var Point=require(\"point-geometry\");module.exports=clipLine;\n},{\"point-geometry\":26}],160:[function(require,module,exports){\n\"use strict\";var createStructArrayType=require(\"../util/struct_array\"),Point=require(\"point-geometry\"),CollisionBoxArray=createStructArrayType({members:[{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:\"Float32\",name:\"maxScale\"},{type:\"Uint32\",name:\"featureIndex\"},{type:\"Uint16\",name:\"sourceLayerIndex\"},{type:\"Uint16\",name:\"bucketIndex\"},{type:\"Int16\",name:\"bbox0\"},{type:\"Int16\",name:\"bbox1\"},{type:\"Int16\",name:\"bbox2\"},{type:\"Int16\",name:\"bbox3\"},{type:\"Float32\",name:\"placementScale\"}]});Object.defineProperty(CollisionBoxArray.prototype.StructType.prototype,\"anchorPoint\",{get:function(){return new Point(this.anchorPointX,this.anchorPointY)}}),module.exports=CollisionBoxArray;\n},{\"../util/struct_array\":210,\"point-geometry\":26}],161:[function(require,module,exports){\n\"use strict\";var CollisionFeature=function(t,e,i,o,s,a,n,r,l,d,u){var h=n.top*r-l,x=n.bottom*r+l,f=n.left*r-l,m=n.right*r+l;if(this.boxStartIndex=t.length,d){var _=x-h,b=m-f;if(_>0)if(_=Math.max(10*r,_),u){var v=e[i.segment+1].sub(e[i.segment])._unit()._mult(b),c=[i.sub(v),i.add(v)];this._addLineCollisionBoxes(t,c,i,0,b,_,o,s,a)}else this._addLineCollisionBoxes(t,e,i,i.segment,b,_,o,s,a)}else t.emplaceBack(i.x,i.y,f,h,m,x,1/0,o,s,a,0,0,0,0,0);this.boxEndIndex=t.length};CollisionFeature.prototype._addLineCollisionBoxes=function(t,e,i,o,s,a,n,r,l){var d=a/2,u=Math.floor(s/d),h=-a/2,x=this.boxes,f=i,m=o+1,_=h;do{if(m--,m<0)return x;_-=e[m].dist(f),f=e[m]}while(_>-s/2);for(var b=e[m].dist(e[m+1]),v=0;v=e.length)return x;b=e[m].dist(e[m+1])}var g=c-_,p=e[m],C=e[m+1],B=C.sub(p)._unit()._mult(g)._add(p)._round(),M=Math.max(Math.abs(c-h)-d/2,0),y=s/2/M;t.emplaceBack(B.x,B.y,-a/2,-a/2,a/2,a/2,y,n,r,l,0,0,0,0,0)}return x},module.exports=CollisionFeature;\n},{}],162:[function(require,module,exports){\n\"use strict\";var Point=require(\"point-geometry\"),EXTENT=require(\"../data/extent\"),Grid=require(\"grid-index\"),intersectionTests=require(\"../util/intersection_tests\"),CollisionTile=function(t,e,i){if(\"object\"==typeof t){var r=t;i=e,t=r.angle,e=r.pitch,this.grid=new Grid(r.grid),this.ignoredGrid=new Grid(r.ignoredGrid)}else this.grid=new Grid(EXTENT,12,6),this.ignoredGrid=new Grid(EXTENT,12,0);this.minScale=.5,this.maxScale=2,this.angle=t,this.pitch=e;var a=Math.sin(t),o=Math.cos(t);if(this.rotationMatrix=[o,-a,a,o],this.reverseRotationMatrix=[o,a,-a,o],this.yStretch=1/Math.cos(e/180*Math.PI),this.yStretch=Math.pow(this.yStretch,1.3),this.collisionBoxArray=i,0===i.length){i.emplaceBack();var n=32767;i.emplaceBack(0,0,0,-n,0,n,n,0,0,0,0,0,0,0,0,0),i.emplaceBack(EXTENT,0,0,-n,0,n,n,0,0,0,0,0,0,0,0,0),i.emplaceBack(0,0,-n,0,n,0,n,0,0,0,0,0,0,0,0,0),i.emplaceBack(0,EXTENT,-n,0,n,0,n,0,0,0,0,0,0,0,0,0)}this.tempCollisionBox=i.get(0),this.edges=[i.get(1),i.get(2),i.get(3),i.get(4)]};CollisionTile.prototype.serialize=function(t){var e=this.grid.toArrayBuffer(),i=this.ignoredGrid.toArrayBuffer();return t&&(t.push(e),t.push(i)),{angle:this.angle,pitch:this.pitch,grid:e,ignoredGrid:i}},CollisionTile.prototype.placeCollisionFeature=function(t,e,i){for(var r=this,a=this.collisionBoxArray,o=this.minScale,n=this.rotationMatrix,l=this.yStretch,h=t.boxStartIndex;h=r.maxScale)return o}if(i){var S=void 0;if(r.angle){var P=r.reverseRotationMatrix,b=new Point(s.x1,s.y1).matMult(P),T=new Point(s.x2,s.y1).matMult(P),w=new Point(s.x1,s.y2).matMult(P),N=new Point(s.x2,s.y2).matMult(P);S=r.tempCollisionBox,S.anchorPointX=s.anchorPoint.x,S.anchorPointY=s.anchorPoint.y,S.x1=Math.min(b.x,T.x,w.x,N.x),S.y1=Math.min(b.y,T.x,w.x,N.x),S.x2=Math.max(b.x,T.x,w.x,N.x),S.y2=Math.max(b.y,T.x,w.x,N.x),S.maxScale=s.maxScale}else S=s;for(var B=0;B=r.maxScale)return o}}}return o},CollisionTile.prototype.queryRenderedSymbols=function(t,e){var i={},r=[];if(0===t.length||0===this.grid.length&&0===this.ignoredGrid.length)return r;for(var a=this.collisionBoxArray,o=this.rotationMatrix,n=this.yStretch,l=[],h=1/0,s=1/0,x=-(1/0),c=-(1/0),g=0;gS.maxScale)){var T=S.anchorPoint.matMult(o),w=T.x+S.x1/e,N=T.y+S.y1/e*n,B=T.x+S.x2/e,G=T.y+S.y2/e*n,E=[new Point(w,N),new Point(B,N),new Point(B,G),new Point(w,G)];intersectionTests.polygonIntersectsPolygon(l,E)&&(i[P][b]=!0,r.push(u[v]))}}return r},CollisionTile.prototype.getPlacementScale=function(t,e,i,r,a){var o=e.x-r.x,n=e.y-r.y,l=(a.x1-i.x2)/o,h=(a.x2-i.x1)/o,s=(a.y1-i.y2)*this.yStretch/n,x=(a.y2-i.y1)*this.yStretch/n;(isNaN(l)||isNaN(h))&&(l=h=1),(isNaN(s)||isNaN(x))&&(s=x=1);var c=Math.min(Math.max(l,h),Math.max(s,x)),g=a.maxScale,y=i.maxScale;return c>g&&(c=g),c>y&&(c=y),c>t&&c>=a.placementScale&&(t=c),t},CollisionTile.prototype.insertCollisionFeature=function(t,e,i){for(var r=this,a=i?this.ignoredGrid:this.grid,o=this.collisionBoxArray,n=t.boxStartIndex;n=0&&k=0&&q=0&&p+c<=s){var M=new Anchor(k,q,y,f)._round();n&&!checkMaxAngle(e,M,l,n,a)||x.push(M)}}g+=A}return i||x.length||o||(x=resample(e,g/2,t,n,a,l,o,!0,h)),x}var interpolate=require(\"../util/interpolate\"),Anchor=require(\"../symbol/anchor\"),checkMaxAngle=require(\"./check_max_angle\");module.exports=getAnchors;\n},{\"../symbol/anchor\":157,\"../util/interpolate\":204,\"./check_max_angle\":158}],164:[function(require,module,exports){\n\"use strict\";var ShelfPack=require(\"@mapbox/shelf-pack\"),util=require(\"../util/util\"),SIZE_GROWTH_RATE=4,DEFAULT_SIZE=128,MAX_SIZE=2048,GlyphAtlas=function(){this.width=DEFAULT_SIZE,this.height=DEFAULT_SIZE,this.atlas=new ShelfPack(this.width,this.height),this.index={},this.ids={},this.data=new Uint8Array(this.width*this.height)};GlyphAtlas.prototype.getGlyphs=function(){var t,i,e,h=this,r={};for(var s in h.ids)t=s.split(\"#\"),i=t[0],e=t[1],r[i]||(r[i]=[]),r[i].push(e);return r},GlyphAtlas.prototype.getRects=function(){var t,i,e,h=this,r={};for(var s in h.ids)t=s.split(\"#\"),i=t[0],e=t[1],r[i]||(r[i]={}),r[i][e]=h.index[s];return r},GlyphAtlas.prototype.addGlyph=function(t,i,e,h){var r=this;if(!e)return null;var s=i+\"#\"+e.id;if(this.index[s])return this.ids[s].indexOf(t)<0&&this.ids[s].push(t),this.index[s];if(!e.bitmap)return null;var a=e.width+2*h,E=e.height+2*h,n=1,l=a+2*n,T=E+2*n;l+=4-l%4,T+=4-T%4;var u=this.atlas.packOne(l,T);if(u||(this.resize(),u=this.atlas.packOne(l,T)),!u)return util.warnOnce(\"glyph bitmap overflow\"),null;this.index[s]=u,this.ids[s]=[t];for(var d=this.data,p=e.bitmap,A=0;A=MAX_SIZE||e>=MAX_SIZE)){this.texture&&(this.gl&&this.gl.deleteTexture(this.texture),this.texture=null),this.width*=SIZE_GROWTH_RATE,this.height*=SIZE_GROWTH_RATE,this.atlas.resize(this.width,this.height);for(var h=new ArrayBuffer(this.width*this.height),r=0;r65535)return a(\"glyphs > 65535 not supported\");void 0===this.loading[t]&&(this.loading[t]={});var l=this.loading[t];if(l[e])l[e].push(a);else{l[e]=[a];var i=256*e+\"-\"+(256*e+255),r=glyphUrl(t,i,this.url);ajax.getArrayBuffer(r,function(t,a){for(var i=!t&&new Glyphs(new Protobuf(a.data)),r=0;r1?2:1,this.canvas&&(this.canvas.width=this.width*this.pixelRatio,this.canvas.height=this.height*this.pixelRatio)),this.sprite=t},i.prototype.addIcons=function(t,i){for(var e=this,r=0;r1||(b?(clearTimeout(b),b=null,h(\"dblclick\",t)):b=setTimeout(l,300))}function i(e){f(\"touchmove\",e)}function c(e){f(\"touchend\",e)}function d(e){f(\"touchcancel\",e)}function l(){b=null}function s(e){var t=DOM.mousePos(g,e);t.equals(L)&&h(\"click\",e)}function v(e){h(\"dblclick\",e),e.preventDefault()}function m(t){var n=e.dragRotate&&e.dragRotate.isActive();E||n?E&&(p=t):h(\"contextmenu\",t),t.preventDefault()}function h(t,n){var o=DOM.mousePos(g,n);return e.fire(t,{lngLat:e.unproject(o),point:o,originalEvent:n})}function f(t,n){var o=DOM.touchPos(g,n),r=o.reduce(function(e,t,n,o){return e.add(t.div(o.length))},new Point(0,0));return e.fire(t,{lngLat:e.unproject(r),point:r,lngLats:o.map(function(t){return e.unproject(t)},this),points:o,originalEvent:n})}var g=e.getCanvasContainer(),p=null,E=!1,L=null,b=null;for(var q in handlers)e[q]=new handlers[q](e,t),t.interactive&&t[q]&&e[q].enable(t[q]);g.addEventListener(\"mouseout\",n,!1),g.addEventListener(\"mousedown\",o,!1),g.addEventListener(\"mouseup\",r,!1),g.addEventListener(\"mousemove\",a,!1),g.addEventListener(\"touchstart\",u,!1),g.addEventListener(\"touchend\",c,!1),g.addEventListener(\"touchmove\",i,!1),g.addEventListener(\"touchcancel\",d,!1),g.addEventListener(\"click\",s,!1),g.addEventListener(\"dblclick\",v,!1),g.addEventListener(\"contextmenu\",m,!1)};\n},{\"../util/dom\":199,\"./handler/box_zoom\":179,\"./handler/dblclick_zoom\":180,\"./handler/drag_pan\":181,\"./handler/drag_rotate\":182,\"./handler/keyboard\":183,\"./handler/scroll_zoom\":184,\"./handler/touch_zoom_rotate\":185,\"point-geometry\":26}],172:[function(require,module,exports){\n\"use strict\";var util=require(\"../util/util\"),interpolate=require(\"../util/interpolate\"),browser=require(\"../util/browser\"),LngLat=require(\"../geo/lng_lat\"),LngLatBounds=require(\"../geo/lng_lat_bounds\"),Point=require(\"point-geometry\"),Evented=require(\"../util/evented\"),Camera=function(t){function i(i,e){t.call(this),this.moving=!1,this.transform=i,this._bearingSnap=e.bearingSnap}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.getCenter=function(){return this.transform.center},i.prototype.setCenter=function(t,i){return this.jumpTo({center:t},i),this},i.prototype.panBy=function(t,i,e){return this.panTo(this.transform.center,util.extend({offset:Point.convert(t).mult(-1)},i),e),this},i.prototype.panTo=function(t,i,e){return this.easeTo(util.extend({center:t},i),e)},i.prototype.getZoom=function(){return this.transform.zoom},i.prototype.setZoom=function(t,i){return this.jumpTo({zoom:t},i),this},i.prototype.zoomTo=function(t,i,e){return this.easeTo(util.extend({zoom:t},i),e)},i.prototype.zoomIn=function(t,i){return this.zoomTo(this.getZoom()+1,t,i),this},i.prototype.zoomOut=function(t,i){return this.zoomTo(this.getZoom()-1,t,i),this},i.prototype.getBearing=function(){return this.transform.bearing},i.prototype.setBearing=function(t,i){return this.jumpTo({bearing:t},i),this},i.prototype.rotateTo=function(t,i,e){return this.easeTo(util.extend({bearing:t},i),e)},i.prototype.resetNorth=function(t,i){return this.rotateTo(0,util.extend({duration:1e3},t),i),this},i.prototype.snapToNorth=function(t,i){return Math.abs(this.getBearing())i?1:0}),[\"bottom\",\"left\",\"right\",\"top\"]))return void util.warnOnce(\"options.padding must be a positive number, or an Object with keys 'bottom', 'left', 'right', 'top'\");t=LngLatBounds.convert(t);var n=[i.padding.left-i.padding.right,i.padding.top-i.padding.bottom],r=Math.min(i.padding.right,i.padding.left),s=Math.min(i.padding.top,i.padding.bottom);i.offset=[i.offset[0]+n[0],i.offset[1]+n[1]];var a=Point.convert(i.offset),h=this.transform,u=h.project(t.getNorthWest()),p=h.project(t.getSouthEast()),c=p.sub(u),g=(h.width-2*r-2*Math.abs(a.x))/c.x,m=(h.height-2*s-2*Math.abs(a.y))/c.y;return m<0||g<0?void util.warnOnce(\"Map cannot fit within canvas with the given bounds, padding, and/or offset.\"):(i.center=h.unproject(u.add(p).div(2)),i.zoom=Math.min(h.scaleZoom(h.scale*Math.min(g,m)),i.maxZoom),i.bearing=0,i.linear?this.easeTo(i,e):this.flyTo(i,e))},i.prototype.jumpTo=function(t,i){this.stop();var e=this.transform,o=!1,n=!1,r=!1;return\"zoom\"in t&&e.zoom!==+t.zoom&&(o=!0,e.zoom=+t.zoom),\"center\"in t&&(e.center=LngLat.convert(t.center)),\"bearing\"in t&&e.bearing!==+t.bearing&&(n=!0,e.bearing=+t.bearing),\"pitch\"in t&&e.pitch!==+t.pitch&&(r=!0,e.pitch=+t.pitch),this.fire(\"movestart\",i).fire(\"move\",i),o&&this.fire(\"zoomstart\",i).fire(\"zoom\",i).fire(\"zoomend\",i),n&&this.fire(\"rotate\",i),r&&this.fire(\"pitch\",i),this.fire(\"moveend\",i)},i.prototype.easeTo=function(t,i){var e=this;this.stop(),t=util.extend({offset:[0,0],duration:500,easing:util.ease},t);var o,n,r=this.transform,s=Point.convert(t.offset),a=this.getZoom(),h=this.getBearing(),u=this.getPitch(),p=\"zoom\"in t?+t.zoom:a,c=\"bearing\"in t?this._normalizeBearing(t.bearing,h):h,g=\"pitch\"in t?+t.pitch:u;\"center\"in t?(o=LngLat.convert(t.center),n=r.centerPoint.add(s)):\"around\"in t?(o=LngLat.convert(t.around),n=r.locationPoint(o)):(n=r.centerPoint.add(s),o=r.pointLocation(n));var m=r.locationPoint(o);return t.animate===!1&&(t.duration=0),this.zooming=p!==a,this.rotating=h!==c,this.pitching=g!==u,t.smoothEasing&&0!==t.duration&&(t.easing=this._smoothOutEasing(t.duration)),t.noMoveStart||(this.moving=!0,this.fire(\"movestart\",i)),this.zooming&&this.fire(\"zoomstart\",i),clearTimeout(this._onEaseEnd),this._ease(function(t){this.zooming&&(r.zoom=interpolate(a,p,t)),this.rotating&&(r.bearing=interpolate(h,c,t)),this.pitching&&(r.pitch=interpolate(u,g,t)),r.setLocationAtPoint(o,m.add(n.sub(m)._mult(t))),this.fire(\"move\",i),this.zooming&&this.fire(\"zoom\",i),this.rotating&&this.fire(\"rotate\",i),this.pitching&&this.fire(\"pitch\",i)},function(){t.delayEndEvents?e._onEaseEnd=setTimeout(e._easeToEnd.bind(e,i),t.delayEndEvents):e._easeToEnd(i)},t),this},i.prototype._easeToEnd=function(t){var i=this.zooming;this.moving=!1,this.zooming=!1,this.rotating=!1,this.pitching=!1,i&&this.fire(\"zoomend\",t),this.fire(\"moveend\",t)},i.prototype.flyTo=function(t,i){function e(t){var i=(y*y-z*z+(t?-1:1)*E*E*_*_)/(2*(t?y:z)*E*_);return Math.log(Math.sqrt(i*i+1)-i)}function o(t){return(Math.exp(t)-Math.exp(-t))/2}function n(t){return(Math.exp(t)+Math.exp(-t))/2}function r(t){return o(t)/n(t)}this.stop(),t=util.extend({offset:[0,0],speed:1.2,curve:1.42,easing:util.ease},t);var s=this.transform,a=Point.convert(t.offset),h=this.getZoom(),u=this.getBearing(),p=this.getPitch(),c=\"center\"in t?LngLat.convert(t.center):this.getCenter(),g=\"zoom\"in t?+t.zoom:h,m=\"bearing\"in t?this._normalizeBearing(t.bearing,u):u,f=\"pitch\"in t?+t.pitch:p;Math.abs(s.center.lng)+Math.abs(c.lng)>180&&(s.center.lng>0&&c.lng<0?c.lng+=360:s.center.lng<0&&c.lng>0&&(c.lng-=360));var d=s.zoomScale(g-h),l=s.point,v=\"center\"in t?s.project(c).sub(a.div(d)):l,b=t.curve,z=Math.max(s.width,s.height),y=z/d,_=v.sub(l).mag();if(\"minZoom\"in t){var M=util.clamp(Math.min(t.minZoom,h,g),s.minZoom,s.maxZoom),T=z/s.zoomScale(M-h);b=Math.sqrt(T/_*2)}var E=b*b,x=e(0),L=function(t){return n(x)/n(x+b*t)},Z=function(t){return z*((n(x)*r(x+b*t)-o(x))/E)/_},P=(e(1)-x)/b;if(Math.abs(_)<1e-6){if(Math.abs(z-y)<1e-6)return this.easeTo(t,i);var j=y=0)return!1;return!0}),this._container.innerHTML=i.join(\" | \"),this._editLink=null}},AttributionControl.prototype._updateCompact=function(){var t=this._map.getCanvasContainer().offsetWidth<=640;this._container.classList[t?\"add\":\"remove\"](\"compact\")},module.exports=AttributionControl;\n},{\"../../util/dom\":199,\"../../util/util\":212}],174:[function(require,module,exports){\n\"use strict\";var DOM=require(\"../../util/dom\"),util=require(\"../../util/util\"),window=require(\"../../util/window\"),FullscreenControl=function(){this._fullscreen=!1,util.bindAll([\"_onClickFullscreen\",\"_changeIcon\"],this),\"onfullscreenchange\"in window.document?this._fullscreenchange=\"fullscreenchange\":\"onmozfullscreenchange\"in window.document?this._fullscreenchange=\"mozfullscreenchange\":\"onwebkitfullscreenchange\"in window.document?this._fullscreenchange=\"webkitfullscreenchange\":\"onmsfullscreenchange\"in window.document&&(this._fullscreenchange=\"MSFullscreenChange\")};FullscreenControl.prototype.onAdd=function(e){var n=\"mapboxgl-ctrl\",t=this._container=DOM.create(\"div\",n+\" mapboxgl-ctrl-group\"),l=this._fullscreenButton=DOM.create(\"button\",n+\"-icon \"+n+\"-fullscreen\",this._container);return l.setAttribute(\"aria-label\",\"Toggle fullscreen\"),l.type=\"button\",this._fullscreenButton.addEventListener(\"click\",this._onClickFullscreen),this._mapContainer=e.getContainer(),window.document.addEventListener(this._fullscreenchange,this._changeIcon),t},FullscreenControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},FullscreenControl.prototype._isFullscreen=function(){return this._fullscreen},FullscreenControl.prototype._changeIcon=function(e){if(e.target===this._mapContainer){this._fullscreen=!this._fullscreen;var n=\"mapboxgl-ctrl\";this._fullscreenButton.classList.toggle(n+\"-shrink\"),this._fullscreenButton.classList.toggle(n+\"-fullscreen\")}},FullscreenControl.prototype._onClickFullscreen=function(){this._isFullscreen()?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._mapContainer.requestFullscreen?this._mapContainer.requestFullscreen():this._mapContainer.mozRequestFullScreen?this._mapContainer.mozRequestFullScreen():this._mapContainer.msRequestFullscreen?this._mapContainer.msRequestFullscreen():this._mapContainer.webkitRequestFullscreen&&this._mapContainer.webkitRequestFullscreen()},module.exports=FullscreenControl;\n},{\"../../util/dom\":199,\"../../util/util\":212,\"../../util/window\":194}],175:[function(require,module,exports){\n\"use strict\";function checkGeolocationSupport(t){void 0!==supportsGeolocation?t(supportsGeolocation):void 0!==window.navigator.permissions?window.navigator.permissions.query({name:\"geolocation\"}).then(function(o){supportsGeolocation=\"denied\"!==o.state,t(supportsGeolocation)}):(supportsGeolocation=!!window.navigator.geolocation,t(supportsGeolocation))}var Evented=require(\"../../util/evented\"),DOM=require(\"../../util/dom\"),window=require(\"../../util/window\"),util=require(\"../../util/util\"),defaultGeoPositionOptions={enableHighAccuracy:!1,timeout:6e3},className=\"mapboxgl-ctrl\",supportsGeolocation,GeolocateControl=function(t){function o(o){t.call(this),this.options=o||{},util.bindAll([\"_onSuccess\",\"_onError\",\"_finish\",\"_setupUI\"],this)}return t&&(o.__proto__=t),o.prototype=Object.create(t&&t.prototype),o.prototype.constructor=o,o.prototype.onAdd=function(t){return this._map=t,this._container=DOM.create(\"div\",className+\" \"+className+\"-group\"),checkGeolocationSupport(this._setupUI),this._container},o.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map=void 0},o.prototype._onSuccess=function(t){this._map.jumpTo({center:[t.coords.longitude,t.coords.latitude],zoom:17,bearing:0,pitch:0}),this.fire(\"geolocate\",t),this._finish()},o.prototype._onError=function(t){this.fire(\"error\",t),this._finish()},o.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},o.prototype._setupUI=function(t){t!==!1&&(this._container.addEventListener(\"contextmenu\",function(t){return t.preventDefault()}),this._geolocateButton=DOM.create(\"button\",className+\"-icon \"+className+\"-geolocate\",this._container),this._geolocateButton.type=\"button\",this._geolocateButton.setAttribute(\"aria-label\",\"Geolocate\"),this.options.watchPosition&&this._geolocateButton.setAttribute(\"aria-pressed\",!1),this._geolocateButton.addEventListener(\"click\",this._onClickGeolocate.bind(this)))},o.prototype._onClickGeolocate=function(){var t=util.extend(defaultGeoPositionOptions,this.options&&this.options.positionOptions||{});this.options.watchPosition?void 0!==this._geolocationWatchID?(this._geolocateButton.classList.remove(\"watching\"),this._geolocateButton.setAttribute(\"aria-pressed\",!1),window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0):(this._geolocateButton.classList.add(\"watching\"),this._geolocateButton.setAttribute(\"aria-pressed\",!0),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,t)):(window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,t),this._timeoutId=setTimeout(this._finish,1e4))},o}(Evented);module.exports=GeolocateControl;\n},{\"../../util/dom\":199,\"../../util/evented\":200,\"../../util/util\":212,\"../../util/window\":194}],176:[function(require,module,exports){\n\"use strict\";var DOM=require(\"../../util/dom\"),util=require(\"../../util/util\"),LogoControl=function(){util.bindAll([\"_updateLogo\"],this)};LogoControl.prototype.onAdd=function(o){return this._map=o,this._container=DOM.create(\"div\",\"mapboxgl-ctrl\"),this._map.on(\"sourcedata\",this._updateLogo),this._updateLogo(),this._container},LogoControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off(\"sourcedata\",this._updateLogo)},LogoControl.prototype.getDefaultPosition=function(){return\"bottom-left\"},LogoControl.prototype._updateLogo=function(o){if(o&&\"metadata\"===o.sourceDataType)if(!this._container.childNodes.length&&this._logoRequired()){var t=DOM.create(\"a\",\"mapboxgl-ctrl-logo\");t.target=\"_blank\",t.href=\"https://www.mapbox.com/\",t.setAttribute(\"aria-label\",\"Mapbox logo\"),this._container.appendChild(t),this._map.off(\"data\",this._updateLogo)}else this._container.childNodes.length&&!this._logoRequired()&&this.onRemove()},LogoControl.prototype._logoRequired=function(){if(this._map.style){var o=this._map.style.sourceCaches;for(var t in o){var e=o[t].getSource();if(e.mapbox_logo)return!0}return!1}},module.exports=LogoControl;\n},{\"../../util/dom\":199,\"../../util/util\":212}],177:[function(require,module,exports){\n\"use strict\";function copyMouseEvent(t){return new window.MouseEvent(t.type,{button:2,buttons:2,bubbles:!0,cancelable:!0,detail:t.detail,view:t.view,screenX:t.screenX,screenY:t.screenY,clientX:t.clientX,clientY:t.clientY,movementX:t.movementX,movementY:t.movementY,ctrlKey:t.ctrlKey,shiftKey:t.shiftKey,altKey:t.altKey,metaKey:t.metaKey})}var DOM=require(\"../../util/dom\"),window=require(\"../../util/window\"),util=require(\"../../util/util\"),className=\"mapboxgl-ctrl\",NavigationControl=function(){util.bindAll([\"_rotateCompassArrow\"],this)};NavigationControl.prototype._rotateCompassArrow=function(){var t=\"rotate(\"+this._map.transform.angle*(180/Math.PI)+\"deg)\";this._compassArrow.style.transform=t},NavigationControl.prototype.onAdd=function(t){return this._map=t,this._container=DOM.create(\"div\",className+\" \"+className+\"-group\",t.getContainer()),this._container.addEventListener(\"contextmenu\",this._onContextMenu.bind(this)),this._zoomInButton=this._createButton(className+\"-icon \"+className+\"-zoom-in\",\"Zoom In\",t.zoomIn.bind(t)),this._zoomOutButton=this._createButton(className+\"-icon \"+className+\"-zoom-out\",\"Zoom Out\",t.zoomOut.bind(t)),this._compass=this._createButton(className+\"-icon \"+className+\"-compass\",\"Reset North\",t.resetNorth.bind(t)),this._compassArrow=DOM.create(\"span\",className+\"-compass-arrow\",this._compass),this._compass.addEventListener(\"mousedown\",this._onCompassDown.bind(this)),this._onCompassMove=this._onCompassMove.bind(this),this._onCompassUp=this._onCompassUp.bind(this),this._map.on(\"rotate\",this._rotateCompassArrow),this._rotateCompassArrow(),this._container},NavigationControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off(\"rotate\",this._rotateCompassArrow),this._map=void 0},NavigationControl.prototype._onContextMenu=function(t){t.preventDefault()},NavigationControl.prototype._onCompassDown=function(t){0===t.button&&(DOM.disableDrag(),window.document.addEventListener(\"mousemove\",this._onCompassMove),window.document.addEventListener(\"mouseup\",this._onCompassUp),this._map.getCanvasContainer().dispatchEvent(copyMouseEvent(t)),t.stopPropagation())},NavigationControl.prototype._onCompassMove=function(t){0===t.button&&(this._map.getCanvasContainer().dispatchEvent(copyMouseEvent(t)),t.stopPropagation())},NavigationControl.prototype._onCompassUp=function(t){0===t.button&&(window.document.removeEventListener(\"mousemove\",this._onCompassMove),window.document.removeEventListener(\"mouseup\",this._onCompassUp),DOM.enableDrag(),this._map.getCanvasContainer().dispatchEvent(copyMouseEvent(t)),t.stopPropagation())},NavigationControl.prototype._createButton=function(t,o,e){var n=DOM.create(\"button\",t,this._container);return n.type=\"button\",n.setAttribute(\"aria-label\",o),n.addEventListener(\"click\",function(){e()}),n},module.exports=NavigationControl;\n},{\"../../util/dom\":199,\"../../util/util\":212,\"../../util/window\":194}],178:[function(require,module,exports){\n\"use strict\";function updateScale(t,e,o){var n=o&&o.maxWidth||100,i=t._container.clientHeight/2,a=getDistance(t.unproject([0,i]),t.unproject([n,i]));if(o&&\"imperial\"===o.unit){var r=3.2808*a;if(r>5280){var l=r/5280;setScale(e,n,l,\"mi\")}else setScale(e,n,r,\"ft\")}else setScale(e,n,a,\"m\")}function setScale(t,e,o,n){var i=getRoundNum(o),a=i/o;\"m\"===n&&i>=1e3&&(i/=1e3,n=\"km\"),t.style.width=e*a+\"px\",t.innerHTML=i+n}function getDistance(t,e){var o=6371e3,n=Math.PI/180,i=t.lat*n,a=e.lat*n,r=Math.sin(i)*Math.sin(a)+Math.cos(i)*Math.cos(a)*Math.cos((e.lng-t.lng)*n),l=o*Math.acos(Math.min(r,1));return l}function getRoundNum(t){var e=Math.pow(10,(\"\"+Math.floor(t)).length-1),o=t/e;return o=o>=10?10:o>=5?5:o>=3?3:o>=2?2:1,e*o}var DOM=require(\"../../util/dom\"),util=require(\"../../util/util\"),ScaleControl=function(t){this.options=t,util.bindAll([\"_onMove\"],this)};ScaleControl.prototype.getDefaultPosition=function(){return\"bottom-left\"},ScaleControl.prototype._onMove=function(){updateScale(this._map,this._container,this.options)},ScaleControl.prototype.onAdd=function(t){return this._map=t,this._container=DOM.create(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-scale\",t.getContainer()),this._map.on(\"move\",this._onMove),this._onMove(),this._container},ScaleControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off(\"move\",this._onMove),this._map=void 0},module.exports=ScaleControl;\n},{\"../../util/dom\":199,\"../../util/util\":212}],179:[function(require,module,exports){\n\"use strict\";var DOM=require(\"../../util/dom\"),LngLatBounds=require(\"../../geo/lng_lat_bounds\"),util=require(\"../../util/util\"),window=require(\"../../util/window\"),BoxZoomHandler=function(o){this._map=o,this._el=o.getCanvasContainer(),this._container=o.getContainer(),util.bindAll([\"_onMouseDown\",\"_onMouseMove\",\"_onMouseUp\",\"_onKeyDown\"],this)};BoxZoomHandler.prototype.isEnabled=function(){return!!this._enabled},BoxZoomHandler.prototype.isActive=function(){return!!this._active},BoxZoomHandler.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener(\"mousedown\",this._onMouseDown,!1),this._enabled=!0)},BoxZoomHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener(\"mousedown\",this._onMouseDown),this._enabled=!1)},BoxZoomHandler.prototype._onMouseDown=function(o){o.shiftKey&&0===o.button&&(window.document.addEventListener(\"mousemove\",this._onMouseMove,!1),window.document.addEventListener(\"keydown\",this._onKeyDown,!1),window.document.addEventListener(\"mouseup\",this._onMouseUp,!1),DOM.disableDrag(),this._startPos=DOM.mousePos(this._el,o),this._active=!0)},BoxZoomHandler.prototype._onMouseMove=function(o){var e=this._startPos,t=DOM.mousePos(this._el,o);this._box||(this._box=DOM.create(\"div\",\"mapboxgl-boxzoom\",this._container),this._container.classList.add(\"mapboxgl-crosshair\"),this._fireEvent(\"boxzoomstart\",o));var n=Math.min(e.x,t.x),i=Math.max(e.x,t.x),s=Math.min(e.y,t.y),r=Math.max(e.y,t.y);DOM.setTransform(this._box,\"translate(\"+n+\"px,\"+s+\"px)\"),this._box.style.width=i-n+\"px\",this._box.style.height=r-s+\"px\"},BoxZoomHandler.prototype._onMouseUp=function(o){if(0===o.button){var e=this._startPos,t=DOM.mousePos(this._el,o),n=(new LngLatBounds).extend(this._map.unproject(e)).extend(this._map.unproject(t));this._finish(),e.x===t.x&&e.y===t.y?this._fireEvent(\"boxzoomcancel\",o):this._map.fitBounds(n,{linear:!0}).fire(\"boxzoomend\",{originalEvent:o,boxZoomBounds:n})}},BoxZoomHandler.prototype._onKeyDown=function(o){27===o.keyCode&&(this._finish(),this._fireEvent(\"boxzoomcancel\",o))},BoxZoomHandler.prototype._finish=function(){this._active=!1,window.document.removeEventListener(\"mousemove\",this._onMouseMove,!1),window.document.removeEventListener(\"keydown\",this._onKeyDown,!1),window.document.removeEventListener(\"mouseup\",this._onMouseUp,!1),this._container.classList.remove(\"mapboxgl-crosshair\"),this._box&&(this._box.parentNode.removeChild(this._box),this._box=null),DOM.enableDrag()},BoxZoomHandler.prototype._fireEvent=function(o,e){return this._map.fire(o,{originalEvent:e})},module.exports=BoxZoomHandler;\n},{\"../../geo/lng_lat_bounds\":63,\"../../util/dom\":199,\"../../util/util\":212,\"../../util/window\":194}],180:[function(require,module,exports){\n\"use strict\";var DoubleClickZoomHandler=function(o){this._map=o,this._onDblClick=this._onDblClick.bind(this)};DoubleClickZoomHandler.prototype.isEnabled=function(){return!!this._enabled},DoubleClickZoomHandler.prototype.enable=function(){this.isEnabled()||(this._map.on(\"dblclick\",this._onDblClick),this._enabled=!0)},DoubleClickZoomHandler.prototype.disable=function(){this.isEnabled()&&(this._map.off(\"dblclick\",this._onDblClick),this._enabled=!1)},DoubleClickZoomHandler.prototype._onDblClick=function(o){this._map.zoomTo(this._map.getZoom()+(o.originalEvent.shiftKey?-1:1),{around:o.lngLat},o)},module.exports=DoubleClickZoomHandler;\n},{}],181:[function(require,module,exports){\n\"use strict\";var DOM=require(\"../../util/dom\"),util=require(\"../../util/util\"),window=require(\"../../util/window\"),inertiaLinearity=.3,inertiaEasing=util.bezier(0,0,inertiaLinearity,1),inertiaMaxSpeed=1400,inertiaDeceleration=2500,DragPanHandler=function(t){this._map=t,this._el=t.getCanvasContainer(),util.bindAll([\"_onDown\",\"_onMove\",\"_onUp\",\"_onTouchEnd\",\"_onMouseUp\"],this)};DragPanHandler.prototype.isEnabled=function(){return!!this._enabled},DragPanHandler.prototype.isActive=function(){return!!this._active},DragPanHandler.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener(\"mousedown\",this._onDown),this._el.addEventListener(\"touchstart\",this._onDown),this._enabled=!0)},DragPanHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener(\"mousedown\",this._onDown),this._el.removeEventListener(\"touchstart\",this._onDown),this._enabled=!1)},DragPanHandler.prototype._onDown=function(t){this._ignoreEvent(t)||this.isActive()||(t.touches?(window.document.addEventListener(\"touchmove\",this._onMove),window.document.addEventListener(\"touchend\",this._onTouchEnd)):(window.document.addEventListener(\"mousemove\",this._onMove),window.document.addEventListener(\"mouseup\",this._onMouseUp)),window.addEventListener(\"blur\",this._onMouseUp),this._active=!1,this._startPos=this._pos=DOM.mousePos(this._el,t),this._inertia=[[Date.now(),this._pos]])},DragPanHandler.prototype._onMove=function(t){if(!this._ignoreEvent(t)){this.isActive()||(this._active=!0,this._map.moving=!0,this._fireEvent(\"dragstart\",t),this._fireEvent(\"movestart\",t));var e=DOM.mousePos(this._el,t),n=this._map;n.stop(),this._drainInertiaBuffer(),this._inertia.push([Date.now(),e]),n.transform.setLocationAtPoint(n.transform.pointLocation(this._pos),e),this._fireEvent(\"drag\",t),this._fireEvent(\"move\",t),this._pos=e,t.preventDefault()}},DragPanHandler.prototype._onUp=function(t){var e=this;if(this.isActive()){this._active=!1,this._fireEvent(\"dragend\",t),this._drainInertiaBuffer();var n=function(){e._map.moving=!1,e._fireEvent(\"moveend\",t)},i=this._inertia;if(i.length<2)return void n();var o=i[i.length-1],r=i[0],a=o[1].sub(r[1]),s=(o[0]-r[0])/1e3;if(0===s||o[1].equals(r[1]))return void n();var u=a.mult(inertiaLinearity/s),d=u.mag();d>inertiaMaxSpeed&&(d=inertiaMaxSpeed,u._unit()._mult(d));var h=d/(inertiaDeceleration*inertiaLinearity),v=u.mult(-h/2);this._map.panBy(v,{duration:1e3*h,easing:inertiaEasing,noMoveStart:!0},{originalEvent:t})}},DragPanHandler.prototype._onMouseUp=function(t){this._ignoreEvent(t)||(this._onUp(t),window.document.removeEventListener(\"mousemove\",this._onMove),window.document.removeEventListener(\"mouseup\",this._onMouseUp),window.removeEventListener(\"blur\",this._onMouseUp))},DragPanHandler.prototype._onTouchEnd=function(t){this._ignoreEvent(t)||(this._onUp(t),window.document.removeEventListener(\"touchmove\",this._onMove),window.document.removeEventListener(\"touchend\",this._onTouchEnd))},DragPanHandler.prototype._fireEvent=function(t,e){return this._map.fire(t,{originalEvent:e})},DragPanHandler.prototype._ignoreEvent=function(t){var e=this._map;if(e.boxZoom&&e.boxZoom.isActive())return!0;if(e.dragRotate&&e.dragRotate.isActive())return!0;if(t.touches)return t.touches.length>1;if(t.ctrlKey)return!0;var n=1,i=0;return\"mousemove\"===t.type?t.buttons&0===n:t.button&&t.button!==i},DragPanHandler.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now(),n=160;t.length>0&&e-t[0][0]>n;)t.shift()},module.exports=DragPanHandler;\n},{\"../../util/dom\":199,\"../../util/util\":212,\"../../util/window\":194}],182:[function(require,module,exports){\n\"use strict\";var DOM=require(\"../../util/dom\"),util=require(\"../../util/util\"),window=require(\"../../util/window\"),inertiaLinearity=.25,inertiaEasing=util.bezier(0,0,inertiaLinearity,1),inertiaMaxSpeed=180,inertiaDeceleration=720,DragRotateHandler=function(t,e){this._map=t,this._el=t.getCanvasContainer(),this._bearingSnap=e.bearingSnap,this._pitchWithRotate=e.pitchWithRotate!==!1,util.bindAll([\"_onDown\",\"_onMove\",\"_onUp\"],this)};DragRotateHandler.prototype.isEnabled=function(){return!!this._enabled},DragRotateHandler.prototype.isActive=function(){return!!this._active},DragRotateHandler.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener(\"mousedown\",this._onDown),this._enabled=!0)},DragRotateHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener(\"mousedown\",this._onDown),this._enabled=!1)},DragRotateHandler.prototype._onDown=function(t){this._ignoreEvent(t)||this.isActive()||(window.document.addEventListener(\"mousemove\",this._onMove),window.document.addEventListener(\"mouseup\",this._onUp),window.addEventListener(\"blur\",this._onUp),this._active=!1,this._inertia=[[Date.now(),this._map.getBearing()]],this._startPos=this._pos=DOM.mousePos(this._el,t),this._center=this._map.transform.centerPoint,t.preventDefault())},DragRotateHandler.prototype._onMove=function(t){if(!this._ignoreEvent(t)){this.isActive()||(this._active=!0,this._map.moving=!0,this._fireEvent(\"rotatestart\",t),this._fireEvent(\"movestart\",t));var e=this._map;e.stop();var i=this._pos,n=DOM.mousePos(this._el,t),r=.8*(i.x-n.x),a=(i.y-n.y)*-.5,o=e.getBearing()-r,s=e.getPitch()-a,h=this._inertia,v=h[h.length-1];this._drainInertiaBuffer(),h.push([Date.now(),e._normalizeBearing(o,v[1])]),e.transform.bearing=o,this._pitchWithRotate&&(e.transform.pitch=s),this._fireEvent(\"rotate\",t),this._fireEvent(\"move\",t),this._pos=n}},DragRotateHandler.prototype._onUp=function(t){var e=this;if(!this._ignoreEvent(t)&&(window.document.removeEventListener(\"mousemove\",this._onMove),window.document.removeEventListener(\"mouseup\",this._onUp),window.removeEventListener(\"blur\",this._onUp),this.isActive())){this._active=!1,this._fireEvent(\"rotateend\",t),this._drainInertiaBuffer();var i=this._map,n=i.getBearing(),r=this._inertia,a=function(){Math.abs(n)inertiaMaxSpeed&&(p=inertiaMaxSpeed);var l=p/(inertiaDeceleration*inertiaLinearity),g=u*p*(l/2);v+=g,Math.abs(i._normalizeBearing(v,0))1;var i=t.ctrlKey?1:2,n=t.ctrlKey?0:2,r=t.button;return\"undefined\"!=typeof InstallTrigger&&2===t.button&&t.ctrlKey&&window.navigator.platform.toUpperCase().indexOf(\"MAC\")>=0&&(r=0),\"mousemove\"===t.type?t.buttons&0===i:!this.isActive()&&r!==n},DragRotateHandler.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now(),i=160;t.length>0&&e-t[0][0]>i;)t.shift()},module.exports=DragRotateHandler;\n},{\"../../util/dom\":199,\"../../util/util\":212,\"../../util/window\":194}],183:[function(require,module,exports){\n\"use strict\";function easeOut(e){return e*(2-e)}var panStep=100,bearingStep=15,pitchStep=10,KeyboardHandler=function(e){this._map=e,this._el=e.getCanvasContainer(),this._onKeyDown=this._onKeyDown.bind(this)};KeyboardHandler.prototype.isEnabled=function(){return!!this._enabled},KeyboardHandler.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener(\"keydown\",this._onKeyDown,!1),this._enabled=!0)},KeyboardHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener(\"keydown\",this._onKeyDown),this._enabled=!1)},KeyboardHandler.prototype._onKeyDown=function(e){if(!(e.altKey||e.ctrlKey||e.metaKey)){var t=0,n=0,a=0,i=0,r=0;switch(e.keyCode){case 61:case 107:case 171:case 187:t=1;break;case 189:case 109:case 173:t=-1;break;case 37:e.shiftKey?n=-1:(e.preventDefault(),i=-1);break;case 39:e.shiftKey?n=1:(e.preventDefault(),i=1);break;case 38:e.shiftKey?a=1:(e.preventDefault(),r=-1);break;case 40:e.shiftKey?a=-1:(r=1,e.preventDefault())}var s=this._map,o=s.getZoom(),d={duration:300,delayEndEvents:500,easing:easeOut,zoom:t?Math.round(o)+t*(e.shiftKey?2:1):o,bearing:s.getBearing()+n*bearingStep,pitch:s.getPitch()+a*pitchStep,offset:[-i*panStep,-r*panStep],center:s.getCenter()};s.easeTo(d,{originalEvent:e})}},module.exports=KeyboardHandler;\n},{}],184:[function(require,module,exports){\n\"use strict\";var DOM=require(\"../../util/dom\"),util=require(\"../../util/util\"),browser=require(\"../../util/browser\"),window=require(\"../../util/window\"),ua=window.navigator.userAgent.toLowerCase(),firefox=ua.indexOf(\"firefox\")!==-1,safari=ua.indexOf(\"safari\")!==-1&&ua.indexOf(\"chrom\")===-1,ScrollZoomHandler=function(e){this._map=e,this._el=e.getCanvasContainer(),util.bindAll([\"_onWheel\",\"_onTimeout\"],this)};ScrollZoomHandler.prototype.isEnabled=function(){return!!this._enabled},ScrollZoomHandler.prototype.enable=function(e){this.isEnabled()||(this._el.addEventListener(\"wheel\",this._onWheel,!1),this._el.addEventListener(\"mousewheel\",this._onWheel,!1),this._enabled=!0,this._aroundCenter=e&&\"center\"===e.around)},ScrollZoomHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener(\"wheel\",this._onWheel),this._el.removeEventListener(\"mousewheel\",this._onWheel),this._enabled=!1)},ScrollZoomHandler.prototype._onWheel=function(e){var t;\"wheel\"===e.type?(t=e.deltaY,firefox&&e.deltaMode===window.WheelEvent.DOM_DELTA_PIXEL&&(t/=browser.devicePixelRatio),e.deltaMode===window.WheelEvent.DOM_DELTA_LINE&&(t*=40)):\"mousewheel\"===e.type&&(t=-e.wheelDeltaY,safari&&(t/=3));var o=browser.now(),i=o-(this._time||0);this._pos=DOM.mousePos(this._el,e),this._time=o,0!==t&&t%4.000244140625===0?this._type=\"wheel\":0!==t&&Math.abs(t)<4?this._type=\"trackpad\":i>400?(this._type=null,this._lastValue=t,this._timeout=setTimeout(this._onTimeout,40)):this._type||(this._type=Math.abs(i*t)<200?\"trackpad\":\"wheel\",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,t+=this._lastValue)),e.shiftKey&&t&&(t/=4),this._type&&this._zoom(-t,e),e.preventDefault()},ScrollZoomHandler.prototype._onTimeout=function(){this._type=\"wheel\",this._zoom(-this._lastValue)},ScrollZoomHandler.prototype._zoom=function(e,t){if(0!==e){var o=this._map,i=2/(1+Math.exp(-Math.abs(e/100)));e<0&&0!==i&&(i=1/i);var l=o.ease?o.ease.to:o.transform.scale,s=o.transform.scaleZoom(l*i);o.zoomTo(s,{duration:\"wheel\"===this._type?200:0,around:this._aroundCenter?o.getCenter():o.unproject(this._pos),delayEndEvents:200,smoothEasing:!0},{originalEvent:t})}},module.exports=ScrollZoomHandler;\n},{\"../../util/browser\":192,\"../../util/dom\":199,\"../../util/util\":212,\"../../util/window\":194}],185:[function(require,module,exports){\n\"use strict\";var DOM=require(\"../../util/dom\"),util=require(\"../../util/util\"),window=require(\"../../util/window\"),inertiaLinearity=.15,inertiaEasing=util.bezier(0,0,inertiaLinearity,1),inertiaDeceleration=12,inertiaMaxSpeed=2.5,significantScaleThreshold=.15,significantRotateThreshold=4,TouchZoomRotateHandler=function(t){this._map=t,this._el=t.getCanvasContainer(),util.bindAll([\"_onStart\",\"_onMove\",\"_onEnd\"],this)};TouchZoomRotateHandler.prototype.isEnabled=function(){return!!this._enabled},TouchZoomRotateHandler.prototype.enable=function(t){this.isEnabled()||(this._el.addEventListener(\"touchstart\",this._onStart,!1),this._enabled=!0,this._aroundCenter=t&&\"center\"===t.around)},TouchZoomRotateHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener(\"touchstart\",this._onStart),this._enabled=!1)},TouchZoomRotateHandler.prototype.disableRotation=function(){this._rotationDisabled=!0},TouchZoomRotateHandler.prototype.enableRotation=function(){this._rotationDisabled=!1},TouchZoomRotateHandler.prototype._onStart=function(t){if(2===t.touches.length){var e=DOM.mousePos(this._el,t.touches[0]),o=DOM.mousePos(this._el,t.touches[1]);this._startVec=e.sub(o),this._startScale=this._map.transform.scale,this._startBearing=this._map.transform.bearing,this._gestureIntent=void 0,this._inertia=[],window.document.addEventListener(\"touchmove\",this._onMove,!1),window.document.addEventListener(\"touchend\",this._onEnd,!1)}},TouchZoomRotateHandler.prototype._onMove=function(t){if(2===t.touches.length){var e=DOM.mousePos(this._el,t.touches[0]),o=DOM.mousePos(this._el,t.touches[1]),i=e.add(o).div(2),n=e.sub(o),a=n.mag()/this._startVec.mag(),r=this._rotationDisabled?0:180*n.angleWith(this._startVec)/Math.PI,s=this._map;if(this._gestureIntent){var h={duration:0,around:s.unproject(i)};\"rotate\"===this._gestureIntent&&(h.bearing=this._startBearing+r),\"zoom\"!==this._gestureIntent&&\"rotate\"!==this._gestureIntent||(h.zoom=s.transform.scaleZoom(this._startScale*a)),s.stop(),this._drainInertiaBuffer(),this._inertia.push([Date.now(),a,i]),s.easeTo(h,{originalEvent:t})}else{var u=Math.abs(1-a)>significantScaleThreshold,d=Math.abs(r)>significantRotateThreshold;d?this._gestureIntent=\"rotate\":u&&(this._gestureIntent=\"zoom\"),this._gestureIntent&&(this._startVec=n,this._startScale=s.transform.scale,this._startBearing=s.transform.bearing)}t.preventDefault()}},TouchZoomRotateHandler.prototype._onEnd=function(t){window.document.removeEventListener(\"touchmove\",this._onMove),window.document.removeEventListener(\"touchend\",this._onEnd),this._drainInertiaBuffer();var e=this._inertia,o=this._map;if(e.length<2)return void o.snapToNorth({},{originalEvent:t});var i=e[e.length-1],n=e[0],a=o.transform.scaleZoom(this._startScale*i[1]),r=o.transform.scaleZoom(this._startScale*n[1]),s=a-r,h=(i[0]-n[0])/1e3,u=i[2];if(0===h||a===r)return void o.snapToNorth({},{originalEvent:t});var d=s*inertiaLinearity/h;Math.abs(d)>inertiaMaxSpeed&&(d=d>0?inertiaMaxSpeed:-inertiaMaxSpeed);var l=1e3*Math.abs(d/(inertiaDeceleration*inertiaLinearity)),c=a+d*l/2e3;c<0&&(c=0),o.easeTo({zoom:c,duration:l,easing:inertiaEasing,around:this._aroundCenter?o.getCenter():o.unproject(u)},{originalEvent:t})},TouchZoomRotateHandler.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now(),o=160;t.length>2&&e-t[0][0]>o;)t.shift()},module.exports=TouchZoomRotateHandler;\n},{\"../../util/dom\":199,\"../../util/util\":212,\"../../util/window\":194}],186:[function(require,module,exports){\n\"use strict\";var util=require(\"../util/util\"),window=require(\"../util/window\"),Hash=function(){util.bindAll([\"_onHashChange\",\"_updateHash\"],this)};Hash.prototype.addTo=function(t){return this._map=t,window.addEventListener(\"hashchange\",this._onHashChange,!1),this._map.on(\"moveend\",this._updateHash),this},Hash.prototype.remove=function(){return window.removeEventListener(\"hashchange\",this._onHashChange,!1),this._map.off(\"moveend\",this._updateHash),delete this._map,this},Hash.prototype._onHashChange=function(){var t=window.location.hash.replace(\"#\",\"\").split(\"/\");return t.length>=3&&(this._map.jumpTo({center:[+t[2],+t[1]],zoom:+t[0],bearing:+(t[3]||0),pitch:+(t[4]||0)}),!0)},Hash.prototype._updateHash=function(){var t=this._map.getCenter(),e=this._map.getZoom(),a=this._map.getBearing(),h=this._map.getPitch(),i=Math.max(0,Math.ceil(Math.log(e)/Math.LN2)),n=\"#\"+Math.round(100*e)/100+\"/\"+t.lat.toFixed(i)+\"/\"+t.lng.toFixed(i);(a||h)&&(n+=\"/\"+Math.round(10*a)/10),h&&(n+=\"/\"+Math.round(h)),window.history.replaceState(\"\",\"\",n)},module.exports=Hash;\n},{\"../util/util\":212,\"../util/window\":194}],187:[function(require,module,exports){\n\"use strict\";function removeNode(t){t.parentNode&&t.parentNode.removeChild(t)}var util=require(\"../util/util\"),browser=require(\"../util/browser\"),window=require(\"../util/window\"),DOM=require(\"../util/dom\"),Style=require(\"../style/style\"),AnimationLoop=require(\"../style/animation_loop\"),Painter=require(\"../render/painter\"),Transform=require(\"../geo/transform\"),Hash=require(\"./hash\"),bindHandlers=require(\"./bind_handlers\"),Camera=require(\"./camera\"),LngLat=require(\"../geo/lng_lat\"),LngLatBounds=require(\"../geo/lng_lat_bounds\"),Point=require(\"point-geometry\"),AttributionControl=require(\"./control/attribution_control\"),LogoControl=require(\"./control/logo_control\"),isSupported=require(\"mapbox-gl-supported\"),defaultMinZoom=0,defaultMaxZoom=22,defaultOptions={center:[0,0],zoom:0,bearing:0,pitch:0,minZoom:defaultMinZoom,maxZoom:defaultMaxZoom,interactive:!0,scrollZoom:!0,boxZoom:!0,dragRotate:!0,dragPan:!0,keyboard:!0,doubleClickZoom:!0,touchZoomRotate:!0,bearingSnap:7,hash:!1,attributionControl:!0,failIfMajorPerformanceCaveat:!1,preserveDrawingBuffer:!1,trackResize:!0,renderWorldCopies:!0,refreshExpiredTiles:!0},Map=function(t){function e(e){var o=this;if(e=util.extend({},defaultOptions,e),null!=e.minZoom&&null!=e.maxZoom&&e.minZoom>e.maxZoom)throw new Error(\"maxZoom must be greater than minZoom\");var i=new Transform(e.minZoom,e.maxZoom,e.renderWorldCopies);if(t.call(this,i,e),this._interactive=e.interactive,this._failIfMajorPerformanceCaveat=e.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=e.preserveDrawingBuffer,this._trackResize=e.trackResize,this._bearingSnap=e.bearingSnap,this._refreshExpiredTiles=e.refreshExpiredTiles,\"string\"==typeof e.container){if(this._container=window.document.getElementById(e.container),!this._container)throw new Error(\"Container '\"+e.container+\"' not found.\")}else this._container=e.container;this.animationLoop=new AnimationLoop,e.maxBounds&&this.setMaxBounds(e.maxBounds),util.bindAll([\"_onWindowOnline\",\"_onWindowResize\",\"_contextLost\",\"_contextRestored\",\"_update\",\"_render\",\"_onData\",\"_onDataLoading\"],this),this._setupContainer(),this._setupPainter(),this.on(\"move\",this._update.bind(this,!1)),this.on(\"zoom\",this._update.bind(this,!0)),this.on(\"moveend\",function(){o.animationLoop.set(300),o._rerender()}),\"undefined\"!=typeof window&&(window.addEventListener(\"online\",this._onWindowOnline,!1),window.addEventListener(\"resize\",this._onWindowResize,!1)),bindHandlers(this,e),this._hash=e.hash&&(new Hash).addTo(this),this._hash&&this._hash._onHashChange()||this.jumpTo({center:e.center,zoom:e.zoom,bearing:e.bearing,pitch:e.pitch}),this._classes=[],this.resize(),e.classes&&this.setClasses(e.classes),e.style&&this.setStyle(e.style),e.attributionControl&&this.addControl(new AttributionControl),this.addControl(new LogoControl,e.logoPosition),this.on(\"style.load\",function(){this.transform.unmodified&&this.jumpTo(this.style.stylesheet),this.style.update(this._classes,{transition:!1})}),this.on(\"data\",this._onData),this.on(\"dataloading\",this._onDataLoading)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var o={showTileBoundaries:{},showCollisionBoxes:{},showOverdrawInspector:{},repaint:{},vertices:{}};return e.prototype.addControl=function(t,e){void 0===e&&t.getDefaultPosition&&(e=t.getDefaultPosition()),void 0===e&&(e=\"top-right\");var o=t.onAdd(this),i=this._controlPositions[e];return e.indexOf(\"bottom\")!==-1?i.insertBefore(o,i.firstChild):i.appendChild(o),this},e.prototype.removeControl=function(t){return t.onRemove(this),this},e.prototype.addClass=function(t,e){return util.warnOnce(\"Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.\"),this._classes.indexOf(t)>=0||\"\"===t?this:(this._classes.push(t),this._classOptions=e,this.style&&this.style.updateClasses(),this._update(!0))},e.prototype.removeClass=function(t,e){util.warnOnce(\"Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.\");var o=this._classes.indexOf(t);return o<0||\"\"===t?this:(this._classes.splice(o,1),this._classOptions=e,this.style&&this.style.updateClasses(),this._update(!0))},e.prototype.setClasses=function(t,e){util.warnOnce(\"Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.\");for(var o={},i=0;i=0},e.prototype.getClasses=function(){return util.warnOnce(\"Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.\"),this._classes},e.prototype.resize=function(){var t=this._containerDimensions(),e=t[0],o=t[1];return this._resizeCanvas(e,o),this.transform.resize(e,o),this.painter.resize(e,o),this.fire(\"movestart\").fire(\"move\").fire(\"resize\").fire(\"moveend\")},e.prototype.getBounds=function(){var t=new LngLatBounds(this.transform.pointLocation(new Point(0,this.transform.height)),this.transform.pointLocation(new Point(this.transform.width,0)));return(this.transform.angle||this.transform.pitch)&&(t.extend(this.transform.pointLocation(new Point(this.transform.size.x,0))),t.extend(this.transform.pointLocation(new Point(0,this.transform.size.y)))),t},e.prototype.setMaxBounds=function(t){if(t){var e=LngLatBounds.convert(t);this.transform.lngRange=[e.getWest(),e.getEast()],this.transform.latRange=[e.getSouth(),e.getNorth()],this.transform._constrain(),this._update()}else null!==t&&void 0!==t||(this.transform.lngRange=[],this.transform.latRange=[],this._update());return this},e.prototype.setMinZoom=function(t){if(t=null===t||void 0===t?defaultMinZoom:t,t>=defaultMinZoom&&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\")},e.prototype.getMaxZoom=function(){return this.transform.maxZoom},e.prototype.project=function(t){return this.transform.locationPoint(LngLat.convert(t))},e.prototype.unproject=function(t){return this.transform.pointLocation(Point.convert(t))},e.prototype.queryRenderedFeatures=function(){function t(t){return t instanceof Point||Array.isArray(t)}var e,o={};return 2===arguments.length?(e=arguments[0],o=arguments[1]):1===arguments.length&&t(arguments[0])?e=arguments[0]:1===arguments.length&&(o=arguments[0]),this.style.queryRenderedFeatures(this._makeQueryGeometry(e),o,this.transform.zoom,this.transform.angle)},e.prototype._makeQueryGeometry=function(t){var e=this;void 0===t&&(t=[Point.convert([0,0]),Point.convert([this.transform.width,this.transform.height])]);var o,i=t instanceof Point||\"number\"==typeof t[0];if(i){var r=Point.convert(t);o=[r]}else{var s=[Point.convert(t[0]),Point.convert(t[1])];o=[s[0],new Point(s[1].x,s[0].y),s[1],new Point(s[0].x,s[1].y),s[0]]}return o=o.map(function(t){return e.transform.pointCoordinate(t)})},e.prototype.querySourceFeatures=function(t,e){return this.style.querySourceFeatures(t,e)},e.prototype.setStyle=function(t,e){var o=(!e||e.diff!==!1)&&this.style&&t&&!(t instanceof Style)&&\"string\"!=typeof t;if(o)try{return this.style.setState(t)&&this._update(!0),this}catch(t){util.warnOnce(\"Unable to perform style diff: \"+(t.message||t.error||t)+\". Rebuilding the style from scratch.\")}return this.style&&(this.style.setEventedParent(null),this.style._remove(),this.off(\"rotate\",this.style._redoPlacement),this.off(\"pitch\",this.style._redoPlacement)),t?(t instanceof Style?this.style=t:this.style=new Style(t,this),this.style.setEventedParent(this,{style:this.style}),this.on(\"rotate\",this.style._redoPlacement),this.on(\"pitch\",this.style._redoPlacement),this):(this.style=null,this)},e.prototype.getStyle=function(){if(this.style)return this.style.serialize()},e.prototype.addSource=function(t,e){return this.style.addSource(t,e),this._update(!0),this},e.prototype.isSourceLoaded=function(t){var e=this.style&&this.style.sourceCaches[t];return void 0===e?void this.fire(\"error\",{error:new Error(\"There is no source with ID '\"+t+\"'\")}):e.loaded()},e.prototype.addSourceType=function(t,e,o){return this.style.addSourceType(t,e,o)},e.prototype.removeSource=function(t){return this.style.removeSource(t),this._update(!0),this},e.prototype.getSource=function(t){return this.style.getSource(t)},e.prototype.addImage=function(t,e,o){this.style.spriteAtlas.addImage(t,e,o)},e.prototype.removeImage=function(t){this.style.spriteAtlas.removeImage(t)},e.prototype.addLayer=function(t,e){return this.style.addLayer(t,e),this._update(!0),this},e.prototype.moveLayer=function(t,e){return this.style.moveLayer(t,e),this._update(!0),this},e.prototype.removeLayer=function(t){return this.style.removeLayer(t),this._update(!0),this},e.prototype.getLayer=function(t){return this.style.getLayer(t)},e.prototype.setFilter=function(t,e){return this.style.setFilter(t,e),this._update(!0),this},e.prototype.setLayerZoomRange=function(t,e,o){return this.style.setLayerZoomRange(t,e,o),this._update(!0),this},e.prototype.getFilter=function(t){return this.style.getFilter(t)},e.prototype.setPaintProperty=function(t,e,o,i){return this.style.setPaintProperty(t,e,o,i),this._update(!0),this},e.prototype.getPaintProperty=function(t,e,o){return this.style.getPaintProperty(t,e,o)},e.prototype.setLayoutProperty=function(t,e,o){return this.style.setLayoutProperty(t,e,o),this._update(!0),this},e.prototype.getLayoutProperty=function(t,e){return this.style.getLayoutProperty(t,e)},e.prototype.setLight=function(t){return this.style.setLight(t),this._update(!0),this},e.prototype.getLight=function(){return this.style.getLight()},e.prototype.getContainer=function(){return this._container},e.prototype.getCanvasContainer=function(){return this._canvasContainer},e.prototype.getCanvas=function(){return this._canvas},e.prototype._containerDimensions=function(){var t=0,e=0;return this._container&&(t=this._container.offsetWidth||400,e=this._container.offsetHeight||300),[t,e]},e.prototype._setupContainer=function(){var t=this._container;t.classList.add(\"mapboxgl-map\");var e=this._canvasContainer=DOM.create(\"div\",\"mapboxgl-canvas-container\",t);this._interactive&&e.classList.add(\"mapboxgl-interactive\"),this._canvas=DOM.create(\"canvas\",\"mapboxgl-canvas\",e),this._canvas.style.position=\"absolute\",this._canvas.addEventListener(\"webglcontextlost\",this._contextLost,!1),this._canvas.addEventListener(\"webglcontextrestored\",this._contextRestored,!1),this._canvas.setAttribute(\"tabindex\",0),this._canvas.setAttribute(\"aria-label\",\"Map\");var o=this._containerDimensions();this._resizeCanvas(o[0],o[1]);var i=this._controlContainer=DOM.create(\"div\",\"mapboxgl-control-container\",t),r=this._controlPositions={};[\"top-left\",\"top-right\",\"bottom-left\",\"bottom-right\"].forEach(function(t){r[t]=DOM.create(\"div\",\"mapboxgl-ctrl-\"+t,i)})},e.prototype._resizeCanvas=function(t,e){var o=window.devicePixelRatio||1;this._canvas.width=o*t,this._canvas.height=o*e,this._canvas.style.width=t+\"px\",this._canvas.style.height=e+\"px\"},e.prototype._setupPainter=function(){var t=util.extend({failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer},isSupported.webGLContextAttributes),e=this._canvas.getContext(\"webgl\",t)||this._canvas.getContext(\"experimental-webgl\",t);return e?void(this.painter=new Painter(e,this.transform)):void this.fire(\"error\",{error:new Error(\"Failed to initialize WebGL\")})},e.prototype._contextLost=function(t){t.preventDefault(),this._frameId&&browser.cancelFrame(this._frameId),this.fire(\"webglcontextlost\",{originalEvent:t})},e.prototype._contextRestored=function(t){this._setupPainter(),this.resize(),this._update(),this.fire(\"webglcontextrestored\",{originalEvent:t})},e.prototype.loaded=function(){return!this._styleDirty&&!this._sourcesDirty&&!(!this.style||!this.style.loaded())},e.prototype._update=function(t){return this.style?(this._styleDirty=this._styleDirty||t,this._sourcesDirty=!0,this._rerender(),this):this},e.prototype._render=function(){return this.style&&this._styleDirty&&(this._styleDirty=!1,this.style.update(this._classes,this._classOptions),this._classOptions=null,this.style._recalculate(this.transform.zoom)),this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.rotating,zooming:this.zooming}),this.fire(\"render\"),this.loaded()&&!this._loaded&&(this._loaded=!0,this.fire(\"load\")),this._frameId=null,this.animationLoop.stopped()||(this._styleDirty=!0),(this._sourcesDirty||this._repaint||this._styleDirty)&&this._rerender(),this},e.prototype.remove=function(){this._hash&&this._hash.remove(),browser.cancelFrame(this._frameId),this.setStyle(null),\"undefined\"!=typeof window&&(window.removeEventListener(\"resize\",this._onWindowResize,!1),window.removeEventListener(\"online\",this._onWindowOnline,!1));var t=this.painter.gl.getExtension(\"WEBGL_lose_context\");t&&t.loseContext(),removeNode(this._canvasContainer),removeNode(this._controlContainer),this._container.classList.remove(\"mapboxgl-map\"),this.fire(\"remove\")},e.prototype._rerender=function(){this.style&&!this._frameId&&(this._frameId=browser.frame(this._render))},e.prototype._onWindowOnline=function(){this._update()},e.prototype._onWindowResize=function(){this._trackResize&&this.stop().resize()._update()},o.showTileBoundaries.get=function(){return!!this._showTileBoundaries},o.showTileBoundaries.set=function(t){this._showTileBoundaries!==t&&(this._showTileBoundaries=t,this._update())},o.showCollisionBoxes.get=function(){return!!this._showCollisionBoxes},o.showCollisionBoxes.set=function(t){this._showCollisionBoxes!==t&&(this._showCollisionBoxes=t,this.style._redoPlacement())},o.showOverdrawInspector.get=function(){return!!this._showOverdrawInspector},o.showOverdrawInspector.set=function(t){this._showOverdrawInspector!==t&&(this._showOverdrawInspector=t,this._update())},o.repaint.get=function(){return!!this._repaint},o.repaint.set=function(t){this._repaint=t,this._update()},o.vertices.get=function(){return!!this._vertices},o.vertices.set=function(t){this._vertices=t,this._update()},e.prototype._onData=function(t){this._update(\"style\"===t.dataType),this.fire(t.dataType+\"data\",t)},e.prototype._onDataLoading=function(t){this.fire(t.dataType+\"dataloading\",t)},Object.defineProperties(e.prototype,o),e}(Camera);module.exports=Map;\n},{\"../geo/lng_lat\":62,\"../geo/lng_lat_bounds\":63,\"../geo/transform\":64,\"../render/painter\":77,\"../style/animation_loop\":143,\"../style/style\":146,\"../util/browser\":192,\"../util/dom\":199,\"../util/util\":212,\"../util/window\":194,\"./bind_handlers\":171,\"./camera\":172,\"./control/attribution_control\":173,\"./control/logo_control\":176,\"./hash\":186,\"mapbox-gl-supported\":22,\"point-geometry\":26}],188:[function(require,module,exports){\n\"use strict\";var DOM=require(\"../util/dom\"),LngLat=require(\"../geo/lng_lat\"),Point=require(\"point-geometry\"),Marker=function(t,e){this._offset=Point.convert(e&&e.offset||[0,0]),this._update=this._update.bind(this),this._onMapClick=this._onMapClick.bind(this),t||(t=DOM.create(\"div\")),t.classList.add(\"mapboxgl-marker\"),this._element=t,this._popup=null};Marker.prototype.addTo=function(t){return this.remove(),this._map=t,t.getCanvasContainer().appendChild(this._element),t.on(\"move\",this._update),t.on(\"moveend\",this._update),this._update(),this._map.on(\"click\",this._onMapClick),this},Marker.prototype.remove=function(){return this._map&&(this._map.off(\"click\",this._onMapClick),this._map.off(\"move\",this._update),this._map.off(\"moveend\",this._update),this._map=null),DOM.remove(this._element),this._popup&&this._popup.remove(),this},Marker.prototype.getLngLat=function(){return this._lngLat},Marker.prototype.setLngLat=function(t){return this._lngLat=LngLat.convert(t),this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this},Marker.prototype.getElement=function(){return this._element},Marker.prototype.setPopup=function(t){return this._popup&&(this._popup.remove(),this._popup=null),t&&(this._popup=t,this._popup.setLngLat(this._lngLat)),this},Marker.prototype._onMapClick=function(t){var e=t.originalEvent.target,p=this._element;this._popup&&(e===p||p.contains(e))&&this.togglePopup()},Marker.prototype.getPopup=function(){return this._popup},Marker.prototype.togglePopup=function(){var t=this._popup;t&&(t.isOpen()?t.remove():t.addTo(this._map))},Marker.prototype._update=function(t){if(this._map){var e=this._map.project(this._lngLat)._add(this._offset);t&&\"moveend\"!==t.type||(e=e.round()),DOM.setTransform(this._element,\"translate(\"+e.x+\"px, \"+e.y+\"px)\")}},module.exports=Marker;\n},{\"../geo/lng_lat\":62,\"../util/dom\":199,\"point-geometry\":26}],189:[function(require,module,exports){\n\"use strict\";function normalizeOffset(t){if(t){if(\"number\"==typeof t){var o=Math.round(Math.sqrt(.5*Math.pow(t,2)));return{top:new Point(0,t),\"top-left\":new Point(o,o),\"top-right\":new Point(-o,o),bottom:new Point(0,-t),\"bottom-left\":new Point(o,-o),\"bottom-right\":new Point(-o,-o),left:new Point(t,0),right:new Point(-t,0)}}if(isPointLike(t)){var e=Point.convert(t);return{top:e,\"top-left\":e,\"top-right\":e,bottom:e,\"bottom-left\":e,\"bottom-right\":e,left:e,right:e}}return{top:Point.convert(t.top||[0,0]),\"top-left\":Point.convert(t[\"top-left\"]||[0,0]),\"top-right\":Point.convert(t[\"top-right\"]||[0,0]),bottom:Point.convert(t.bottom||[0,0]),\"bottom-left\":Point.convert(t[\"bottom-left\"]||[0,0]),\"bottom-right\":Point.convert(t[\"bottom-right\"]||[0,0]),left:Point.convert(t.left||[0,0]),right:Point.convert(t.right||[0,0])}}return normalizeOffset(new Point(0,0))}function isPointLike(t){return t instanceof Point||Array.isArray(t)}var util=require(\"../util/util\"),Evented=require(\"../util/evented\"),DOM=require(\"../util/dom\"),LngLat=require(\"../geo/lng_lat\"),Point=require(\"point-geometry\"),window=require(\"../util/window\"),defaultOptions={closeButton:!0,closeOnClick:!0},Popup=function(t){function o(o){t.call(this),this.options=util.extend(Object.create(defaultOptions),o),util.bindAll([\"_update\",\"_onClickClose\"],this)}return t&&(o.__proto__=t),o.prototype=Object.create(t&&t.prototype),o.prototype.constructor=o,o.prototype.addTo=function(t){return this._map=t,this._map.on(\"move\",this._update),this.options.closeOnClick&&this._map.on(\"click\",this._onClickClose),this._update(),this},o.prototype.isOpen=function(){return!!this._map},o.prototype.remove=function(){return this._content&&this._content.parentNode&&this._content.parentNode.removeChild(this._content),this._container&&(this._container.parentNode.removeChild(this._container),delete this._container),this._map&&(this._map.off(\"move\",this._update),this._map.off(\"click\",this._onClickClose),delete this._map),this.fire(\"close\"),this},o.prototype.getLngLat=function(){return this._lngLat},o.prototype.setLngLat=function(t){return this._lngLat=LngLat.convert(t),this._update(),this},o.prototype.setText=function(t){return this.setDOMContent(window.document.createTextNode(t))},o.prototype.setHTML=function(t){var o,e=window.document.createDocumentFragment(),n=window.document.createElement(\"body\");for(n.innerHTML=t;;){if(o=n.firstChild,!o)break;e.appendChild(o)}return this.setDOMContent(e)},o.prototype.setDOMContent=function(t){return this._createContent(),this._content.appendChild(t),this._update(),this},o.prototype._createContent=function(){this._content&&this._content.parentNode&&this._content.parentNode.removeChild(this._content),this._content=DOM.create(\"div\",\"mapboxgl-popup-content\",this._container),this.options.closeButton&&(this._closeButton=DOM.create(\"button\",\"mapboxgl-popup-close-button\",this._content),this._closeButton.type=\"button\",this._closeButton.innerHTML=\"×\",this._closeButton.addEventListener(\"click\",this._onClickClose))},o.prototype._update=function(){if(this._map&&this._lngLat&&this._content){this._container||(this._container=DOM.create(\"div\",\"mapboxgl-popup\",this._map.getContainer()),this._tip=DOM.create(\"div\",\"mapboxgl-popup-tip\",this._container),this._container.appendChild(this._content));var t=this.options.anchor,o=normalizeOffset(this.options.offset),e=this._map.project(this._lngLat).round();if(!t){var n=this._container.offsetWidth,i=this._container.offsetHeight;t=e.y+o.bottom.ythis._map.transform.height-i?[\"bottom\"]:[],e.xthis._map.transform.width-n/2&&t.push(\"right\"),t=0===t.length?\"bottom\":t.join(\"-\")}var r=e.add(o[t]),s={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%)\"},p=this._container.classList;for(var a in s)p.remove(\"mapboxgl-popup-anchor-\"+a);p.add(\"mapboxgl-popup-anchor-\"+t),DOM.setTransform(this._container,s[t]+\" translate(\"+r.x+\"px,\"+r.y+\"px)\")}},o.prototype._onClickClose=function(){this.remove()},o}(Evented);module.exports=Popup;\n},{\"../geo/lng_lat\":62,\"../util/dom\":199,\"../util/evented\":200,\"../util/util\":212,\"../util/window\":194,\"point-geometry\":26}],190:[function(require,module,exports){\n\"use strict\";var Actor=function(t,e,a){this.target=t,this.parent=e,this.mapId=a,this.callbacks={},this.callbackID=0,this.receive=this.receive.bind(this),this.target.addEventListener(\"message\",this.receive,!1)};Actor.prototype.send=function(t,e,a,r,s){var i=a?this.mapId+\":\"+this.callbackID++:null;a&&(this.callbacks[i]=a),this.target.postMessage({targetMapId:s,sourceMapId:this.mapId,type:t,id:String(i),data:e},r)},Actor.prototype.receive=function(t){var e,a=this,r=t.data,s=r.id;if(!r.targetMapId||this.mapId===r.targetMapId){var i=function(t,e,r){a.target.postMessage({sourceMapId:a.mapId,type:\"\",id:String(s),error:t?String(t):null,data:e},r)};if(\"\"===r.type)e=this.callbacks[r.id],delete this.callbacks[r.id],e&&e(r.error||null,r.data);else if(\"undefined\"!=typeof r.id&&this.parent[r.type])this.parent[r.type](r.sourceMapId,r.data,i);else if(\"undefined\"!=typeof r.id&&this.parent.getWorkerSource){var p=r.type.split(\".\"),d=this.parent.getWorkerSource(r.sourceMapId,p[0]);d[p[1]](r.data,i)}else this.parent[r.type](r.data)}},Actor.prototype.remove=function(){this.target.removeEventListener(\"message\",this.receive,!1)},module.exports=Actor;\n},{}],191:[function(require,module,exports){\n\"use strict\";function sameOrigin(e){var t=window.document.createElement(\"a\");return t.href=e,t.protocol===window.document.location.protocol&&t.host===window.document.location.host}var window=require(\"./window\");exports.getJSON=function(e,t){var n=new window.XMLHttpRequest;return n.open(\"GET\",e,!0),n.setRequestHeader(\"Accept\",\"application/json\"),n.onerror=function(e){t(e)},n.onload=function(){if(n.status>=200&&n.status<300&&n.response){var e;try{e=JSON.parse(n.response)}catch(e){return t(e)}t(null,e)}else t(new Error(n.statusText))},n.send(),n},exports.getArrayBuffer=function(e,t){var n=new window.XMLHttpRequest;return n.open(\"GET\",e,!0),n.responseType=\"arraybuffer\",n.onerror=function(e){t(e)},n.onload=function(){return 0===n.response.byteLength&&200===n.status?t(new Error(\"http status 200 returned without content.\")):void(n.status>=200&&n.status<300&&n.response?t(null,{data:n.response,cacheControl:n.getResponseHeader(\"Cache-Control\"),expires:n.getResponseHeader(\"Expires\")}):t(new Error(n.statusText)))},n.send(),n};var transparentPngUrl=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=\";exports.getImage=function(e,t){return exports.getArrayBuffer(e,function(e,n){if(e)return t(e);var r=new window.Image,o=window.URL||window.webkitURL;r.onload=function(){t(null,r),o.revokeObjectURL(r.src)};var a=new window.Blob([new Uint8Array(n.data)],{type:\"image/png\"});r.cacheControl=n.cacheControl,r.expires=n.expires,r.src=n.data.byteLength?o.createObjectURL(a):transparentPngUrl})},exports.getVideo=function(e,t){var n=window.document.createElement(\"video\");n.onloadstart=function(){t(null,n)};for(var r=0;r=a+n?e.call(t,1):(e.call(t,(i-a)/n),exports.frame(o)))}if(!n)return e.call(t,1),null;var r=!1,a=module.exports.now();return exports.frame(o),function(){r=!0}},exports.getImageData=function(e){var n=window.document.createElement(\"canvas\"),t=n.getContext(\"2d\");return n.width=e.width,n.height=e.height,t.drawImage(e,0,0),t.getImageData(0,0,e.width,e.height).data},exports.supported=require(\"mapbox-gl-supported\"),exports.hardwareConcurrency=window.navigator.hardwareConcurrency||4,Object.defineProperty(exports,\"devicePixelRatio\",{get:function(){return window.devicePixelRatio}}),exports.supportsWebp=!1;var webpImgTest=window.document.createElement(\"img\");webpImgTest.onload=function(){exports.supportsWebp=!0},webpImgTest.src=\"data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=\";\n},{\"./window\":194,\"mapbox-gl-supported\":22}],193:[function(require,module,exports){\n\"use strict\";var WebWorkify=require(\"webworkify\"),window=require(\"../window\"),workerURL=window.URL.createObjectURL(new WebWorkify(require(\"../../source/worker\"),{bare:!0}));module.exports=function(){return new window.Worker(workerURL)};\n},{\"../../source/worker\":98,\"../window\":194,\"webworkify\":41}],194:[function(require,module,exports){\n\"use strict\";module.exports=self;\n},{}],195:[function(require,module,exports){\n\"use strict\";function compareAreas(e,r){return r.area-e.area}var quickselect=require(\"quickselect\"),calculateSignedArea=require(\"./util\").calculateSignedArea;module.exports=function(e,r){var a=e.length;if(a<=1)return[e];for(var t,u,c=[],i=0;i1)for(var n=0;n0||this._oneTimeListeners&&this._oneTimeListeners[e]&&this._oneTimeListeners[e].length>0||this._eventedParent&&this._eventedParent.listens(e)},Evented.prototype.setEventedParent=function(e,t){return this._eventedParent=e,this._eventedParentData=t,this},module.exports=Evented;\n},{\"./util\":212}],201:[function(require,module,exports){\n\"use strict\";function compareMax(e,t){return t.max-e.max}function Cell(e,t,n,r){this.p=new Point(e,t),this.h=n,this.d=pointToPolygonDist(this.p,r),this.max=this.d+this.h*Math.SQRT2}function pointToPolygonDist(e,t){for(var n=!1,r=1/0,o=0;oe.y!=h.y>e.y&&e.x<(h.x-a.x)*(e.y-a.y)/(h.y-a.y)+a.x&&(n=!n),r=Math.min(r,distToSegmentSquared(e,a,h))}return(n?1:-1)*Math.sqrt(r)}function getCentroidCell(e){for(var t=0,n=0,r=0,o=e[0],i=0,l=o.length,u=l-1;ii)&&(i=a.x),(!s||a.y>l)&&(l=a.y)}var h=i-r,p=l-o,y=Math.min(h,p),x=y/2,d=new Queue(null,compareMax);if(0===y)return[r,o];for(var g=r;gm.d||!m.d)&&(m=v,n&&console.log(\"found best %d after %d probes\",Math.round(1e4*v.d)/1e4,c)),v.max-m.d<=t||(x=v.h/2,d.push(new Cell(v.p.x-x,v.p.y-x,x,e)),d.push(new Cell(v.p.x+x,v.p.y-x,x,e)),d.push(new Cell(v.p.x-x,v.p.y+x,x,e)),d.push(new Cell(v.p.x+x,v.p.y+x,x,e)),c+=4)}return n&&(console.log(\"num probes: \"+c),console.log(\"best distance: \"+m.d)),m.p};\n},{\"./intersection_tests\":205,\"point-geometry\":26,\"tinyqueue\":30}],202:[function(require,module,exports){\n\"use strict\";var WorkerPool=require(\"./worker_pool\"),globalWorkerPool;module.exports=function(){return globalWorkerPool||(globalWorkerPool=new WorkerPool),globalWorkerPool};\n},{\"./worker_pool\":215}],203:[function(require,module,exports){\n\"use strict\";function Glyphs(a,e){this.stacks=a.readFields(readFontstacks,[],e)}function readFontstacks(a,e,r){if(1===a){var t=r.readMessage(readFontstack,{glyphs:{}});e.push(t)}}function readFontstack(a,e,r){if(1===a)e.name=r.readString();else if(2===a)e.range=r.readString();else if(3===a){var t=r.readMessage(readGlyph,{});e.glyphs[t.id]=t}}function readGlyph(a,e,r){1===a?e.id=r.readVarint():2===a?e.bitmap=r.readBytes():3===a?e.width=r.readVarint():4===a?e.height=r.readVarint():5===a?e.left=r.readSVarint():6===a?e.top=r.readSVarint():7===a&&(e.advance=r.readVarint())}module.exports=Glyphs;\n},{}],204:[function(require,module,exports){\n\"use strict\";function interpolate(t,e,n){return t*(1-n)+e*n}module.exports=interpolate,interpolate.number=interpolate,interpolate.vec2=function(t,e,n){return[interpolate(t[0],e[0],n),interpolate(t[1],e[1],n)]},interpolate.color=function(t,e,n){return[interpolate(t[0],e[0],n),interpolate(t[1],e[1],n),interpolate(t[2],e[2],n),interpolate(t[3],e[3],n)]},interpolate.array=function(t,e,n){return t.map(function(t,r){return interpolate(t,e[r],n)})};\n},{}],205:[function(require,module,exports){\n\"use strict\";function polygonIntersectsPolygon(n,t){for(var e=0;e=3)for(var u=0;u1){if(lineIntersectsLine(n,t))return!0;for(var r=0;r1?n.distSqr(e):n.distSqr(e.sub(t)._mult(o)._add(t))}function multiPolygonContainsPoint(n,t){for(var e,r,o,i=!1,l=0;lt.y!=o.y>t.y&&t.x<(o.x-r.x)*(t.y-r.y)/(o.y-r.y)+r.x&&(i=!i)}return i}function polygonContainsPoint(n,t){for(var e=!1,r=0,o=n.length-1;rt.y!=l.y>t.y&&t.x<(l.x-i.x)*(t.y-i.y)/(l.y-i.y)+i.x&&(e=!e)}return e}var isCounterClockwise=require(\"./util\").isCounterClockwise;module.exports={multiPolygonIntersectsBufferedMultiPoint:multiPolygonIntersectsBufferedMultiPoint,multiPolygonIntersectsMultiPolygon:multiPolygonIntersectsMultiPolygon,multiPolygonIntersectsBufferedMultiLine:multiPolygonIntersectsBufferedMultiLine,polygonIntersectsPolygon:polygonIntersectsPolygon,distToSegmentSquared:distToSegmentSquared};\n},{\"./util\":212}],206:[function(require,module,exports){\n\"use strict\";var unicodeBlockLookup={\"Latin-1 Supplement\":function(n){return n>=128&&n<=255},\"Hangul Jamo\":function(n){return n>=4352&&n<=4607},\"Unified Canadian Aboriginal Syllabics\":function(n){return n>=5120&&n<=5759},\"Unified Canadian Aboriginal Syllabics Extended\":function(n){return n>=6320&&n<=6399},\"General Punctuation\":function(n){return n>=8192&&n<=8303},\"Letterlike Symbols\":function(n){return n>=8448&&n<=8527},\"Number Forms\":function(n){return n>=8528&&n<=8591},\"Miscellaneous Technical\":function(n){return n>=8960&&n<=9215},\"Control Pictures\":function(n){return n>=9216&&n<=9279},\"Optical Character Recognition\":function(n){return n>=9280&&n<=9311},\"Enclosed Alphanumerics\":function(n){return n>=9312&&n<=9471},\"Geometric Shapes\":function(n){return n>=9632&&n<=9727},\"Miscellaneous Symbols\":function(n){return n>=9728&&n<=9983},\"Miscellaneous Symbols and Arrows\":function(n){return n>=11008&&n<=11263},\"CJK Radicals Supplement\":function(n){return n>=11904&&n<=12031},\"Kangxi Radicals\":function(n){return n>=12032&&n<=12255},\"Ideographic Description Characters\":function(n){return n>=12272&&n<=12287},\"CJK Symbols and Punctuation\":function(n){return n>=12288&&n<=12351},Hiragana:function(n){return n>=12352&&n<=12447},Katakana:function(n){return n>=12448&&n<=12543},Bopomofo:function(n){return n>=12544&&n<=12591},\"Hangul Compatibility Jamo\":function(n){return n>=12592&&n<=12687},Kanbun:function(n){return n>=12688&&n<=12703},\"Bopomofo Extended\":function(n){return n>=12704&&n<=12735},\"CJK Strokes\":function(n){return n>=12736&&n<=12783},\"Katakana Phonetic Extensions\":function(n){return n>=12784&&n<=12799},\"Enclosed CJK Letters and Months\":function(n){return n>=12800&&n<=13055},\"CJK Compatibility\":function(n){return n>=13056&&n<=13311},\"CJK Unified Ideographs Extension A\":function(n){return n>=13312&&n<=19903},\"Yijing Hexagram Symbols\":function(n){return n>=19904&&n<=19967},\"CJK Unified Ideographs\":function(n){return n>=19968&&n<=40959},\"Yi Syllables\":function(n){return n>=40960&&n<=42127},\"Yi Radicals\":function(n){return n>=42128&&n<=42191},\"Hangul Jamo Extended-A\":function(n){return n>=43360&&n<=43391},\"Hangul Syllables\":function(n){return n>=44032&&n<=55215},\"Hangul Jamo Extended-B\":function(n){return n>=55216&&n<=55295},\"Private Use Area\":function(n){return n>=57344&&n<=63743},\"CJK Compatibility Ideographs\":function(n){return n>=63744&&n<=64255},\"Vertical Forms\":function(n){return n>=65040&&n<=65055},\"CJK Compatibility Forms\":function(n){return n>=65072&&n<=65103},\"Small Form Variants\":function(n){return n>=65104&&n<=65135},\"Halfwidth and Fullwidth Forms\":function(n){return n>=65280&&n<=65519}};module.exports=unicodeBlockLookup;\n},{}],207:[function(require,module,exports){\n\"use strict\";var LRUCache=function(t,e){this.max=t,this.onRemove=e,this.reset()};LRUCache.prototype.reset=function(){var t=this;for(var e in t.data)t.onRemove(t.data[e]);return this.data={},this.order=[],this},LRUCache.prototype.add=function(t,e){if(this.has(t))this.order.splice(this.order.indexOf(t),1),this.data[t]=e,this.order.push(t);else if(this.data[t]=e,this.order.push(t),this.order.length>this.max){var r=this.get(this.order[0]);r&&this.onRemove(r)}return this},LRUCache.prototype.has=function(t){return t in this.data},LRUCache.prototype.keys=function(){return this.order},LRUCache.prototype.get=function(t){if(!this.has(t))return null;var e=this.data[t];return delete this.data[t],this.order.splice(this.order.indexOf(t),1),e},LRUCache.prototype.getWithoutRemoving=function(t){if(!this.has(t))return null;var e=this.data[t];return e},LRUCache.prototype.remove=function(t){if(!this.has(t))return this;var e=this.data[t];return delete this.data[t],this.onRemove(e),this.order.splice(this.order.indexOf(t),1),this},LRUCache.prototype.setMaxSize=function(t){var e=this;for(this.max=t;this.order.length>this.max;){var r=e.get(e.order[0]);r&&e.onRemove(r)}return this},module.exports=LRUCache;\n},{}],208:[function(require,module,exports){\n\"use strict\";function makeAPIURL(r,e){var t=parseUrl(config.API_URL);if(r.protocol=t.protocol,r.authority=t.authority,!config.REQUIRE_ACCESS_TOKEN)return formatUrl(r);if(e=e||config.ACCESS_TOKEN,!e)throw new Error(\"An API access token is required to use Mapbox GL. \"+help);if(\"s\"===e[0])throw new Error(\"Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). \"+help);return r.params.push(\"access_token=\"+e),formatUrl(r)}function isMapboxURL(r){return 0===r.indexOf(\"mapbox:\")}function replaceTempAccessToken(r){for(var e=0;e=2||512===t?\"@2x\":\"\",s=browser.supportsWebp?\".webp\":\"$1\";return o.path=o.path.replace(imageExtensionRe,\"\"+a+s),replaceTempAccessToken(o.params),formatUrl(o)};var urlRe=/^(\\w+):\\/\\/([^\\/?]+)(\\/[^?]+)?\\??(.+)?/;\n},{\"./browser\":192,\"./config\":196}],209:[function(require,module,exports){\n\"use strict\";var isChar=require(\"./is_char_in_unicode_block\");module.exports.allowsIdeographicBreaking=function(a){for(var i=0,r=a;i=65097&&a<=65103)||(!!isChar[\"CJK Compatibility Ideographs\"](a)||(!!isChar[\"CJK Compatibility\"](a)||(!!isChar[\"CJK Radicals Supplement\"](a)||(!!isChar[\"CJK Strokes\"](a)||(!(!isChar[\"CJK Symbols and Punctuation\"](a)||a>=12296&&a<=12305||a>=12308&&a<=12319||12336===a)||(!!isChar[\"CJK Unified Ideographs Extension A\"](a)||(!!isChar[\"CJK Unified Ideographs\"](a)||(!!isChar[\"Enclosed CJK Letters and Months\"](a)||(!!isChar[\"Hangul Compatibility Jamo\"](a)||(!!isChar[\"Hangul Jamo Extended-A\"](a)||(!!isChar[\"Hangul Jamo Extended-B\"](a)||(!!isChar[\"Hangul Jamo\"](a)||(!!isChar[\"Hangul Syllables\"](a)||(!!isChar.Hiragana(a)||(!!isChar[\"Ideographic Description Characters\"](a)||(!!isChar.Kanbun(a)||(!!isChar[\"Kangxi Radicals\"](a)||(!!isChar[\"Katakana Phonetic Extensions\"](a)||(!(!isChar.Katakana(a)||12540===a)||(!(!isChar[\"Halfwidth and Fullwidth Forms\"](a)||65288===a||65289===a||65293===a||a>=65306&&a<=65310||65339===a||65341===a||65343===a||a>=65371&&a<=65503||65507===a||a>=65512&&a<=65519)||(!(!isChar[\"Small Form Variants\"](a)||a>=65112&&a<=65118||a>=65123&&a<=65126)||(!!isChar[\"Unified Canadian Aboriginal Syllabics\"](a)||(!!isChar[\"Unified Canadian Aboriginal Syllabics Extended\"](a)||(!!isChar[\"Vertical Forms\"](a)||(!!isChar[\"Yijing Hexagram Symbols\"](a)||(!!isChar[\"Yi Syllables\"](a)||!!isChar[\"Yi Radicals\"](a))))))))))))))))))))))))))))))},exports.charHasNeutralVerticalOrientation=function(a){return!(!isChar[\"Latin-1 Supplement\"](a)||167!==a&&169!==a&&174!==a&&177!==a&&188!==a&&189!==a&&190!==a&&215!==a&&247!==a)||(!(!isChar[\"General Punctuation\"](a)||8214!==a&&8224!==a&&8225!==a&&8240!==a&&8241!==a&&8251!==a&&8252!==a&&8258!==a&&8263!==a&&8264!==a&&8265!==a&&8273!==a)||(!!isChar[\"Letterlike Symbols\"](a)||(!!isChar[\"Number Forms\"](a)||(!(!isChar[\"Miscellaneous Technical\"](a)||!(a>=8960&&a<=8967||a>=8972&&a<=8991||a>=8996&&a<=9e3||9003===a||a>=9085&&a<=9114||a>=9150&&a<=9165||9167===a||a>=9169&&a<=9179||a>=9186&&a<=9215))||(!(!isChar[\"Control Pictures\"](a)||9251===a)||(!!isChar[\"Optical Character Recognition\"](a)||(!!isChar[\"Enclosed Alphanumerics\"](a)||(!!isChar[\"Geometric Shapes\"](a)||(!(!isChar[\"Miscellaneous Symbols\"](a)||a>=9754&&a<=9759)||(!(!isChar[\"Miscellaneous Symbols and Arrows\"](a)||!(a>=11026&&a<=11055||a>=11088&&a<=11097||a>=11192&&a<=11243))||(!!isChar[\"CJK Symbols and Punctuation\"](a)||(!!isChar.Katakana(a)||(!!isChar[\"Private Use Area\"](a)||(!!isChar[\"CJK Compatibility Forms\"](a)||(!!isChar[\"Small Form Variants\"](a)||(!!isChar[\"Halfwidth and Fullwidth Forms\"](a)||(8734===a||8756===a||8757===a||a>=9984&&a<=10087||a>=10102&&a<=10131||65532===a||65533===a)))))))))))))))))},exports.charHasRotatedVerticalOrientation=function(a){return!(exports.charHasUprightVerticalOrientation(a)||exports.charHasNeutralVerticalOrientation(a))};\n},{\"./is_char_in_unicode_block\":206}],210:[function(require,module,exports){\n\"use strict\";function createStructArrayType(t){var e=JSON.stringify(t);if(structArrayTypeCache[e])return structArrayTypeCache[e];var r=void 0===t.alignment?1:t.alignment,i=0,n=0,a=[\"Uint8\"],o=t.members.map(function(t){a.indexOf(t.type)<0&&a.push(t.type);var e=sizeOf(t.type),o=i=align(i,Math.max(r,e)),s=t.components||1;return n=Math.max(n,e),i+=e*s,{name:t.name,type:t.type,components:s,offset:o}}),s=align(i,Math.max(n,r)),p=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Struct);p.prototype.alignment=r,p.prototype.size=s;for(var y=0,c=o;ythis.capacity){this.capacity=Math.max(t,Math.floor(this.capacity*RESIZE_MULTIPLIER),DEFAULT_CAPACITY),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var e=this.uint8;this._refreshViews(),e&&this.uint8.set(e)}},StructArray.prototype._refreshViews=function(){for(var t=this,e=0,r=t._usedTypes;e=1)return 1;var e=r*r,t=e*r;return 4*(r<.5?t:3*(r-e)+t-.75)},exports.bezier=function(r,e,t,n){var o=new UnitBezier(r,e,t,n);return function(r){return o.solve(r)}},exports.ease=exports.bezier(.25,.1,.25,1),exports.clamp=function(r,e,t){return Math.min(t,Math.max(e,r))},exports.wrap=function(r,e,t){var n=t-e,o=((r-e)%n+n)%n+e;return o===e?t:o},exports.asyncAll=function(r,e,t){if(!r.length)return t(null,[]);var n=r.length,o=new Array(r.length),a=null;r.forEach(function(r,i){e(r,function(r,e){r&&(a=r),o[i]=e,0===--n&&t(a,o)})})},exports.values=function(r){var e=[];for(var t in r)e.push(r[t]);return e},exports.keysDifference=function(r,e){var t=[];for(var n in r)n in e||t.push(n);return t},exports.extend=function(r,e,t,n){for(var o=arguments,a=1;a=0)return!0;return!1};var warnOnceHistory={};exports.warnOnce=function(r){warnOnceHistory[r]||(\"undefined\"!=typeof console&&console.warn(r),warnOnceHistory[r]=!0)},exports.isCounterClockwise=function(r,e,t){return(t.y-r.y)*(e.x-r.x)>(e.y-r.y)*(t.x-r.x)},exports.calculateSignedArea=function(r){for(var e=0,t=0,n=r.length,o=n-1,a=void 0,i=void 0;t0||Math.abs(e.y-t.y)>0)&&Math.abs(exports.calculateSignedArea(r))>.01},exports.sphericalToCartesian=function(r){var e=r[0],t=r[1],n=r[2];return t+=90,t*=Math.PI/180,n*=Math.PI/180,[e*Math.cos(t)*Math.sin(n),e*Math.sin(t)*Math.sin(n),e*Math.cos(n)]},exports.parseCacheControl=function(r){var e=/(?:^|(?:\\s*\\,\\s*))([^\\x00-\\x20\\(\\)<>@\\,;\\:\\\\\"\\/\\[\\]\\?\\=\\{\\}\\x7F]+)(?:\\=(?:([^\\x00-\\x20\\(\\)<>@\\,;\\:\\\\\"\\/\\[\\]\\?\\=\\{\\}\\x7F]+)|(?:\\\"((?:[^\"\\\\]|\\\\.)*)\\\")))?/g,t={};if(r.replace(e,function(r,e,n,o){var a=n||o;return t[e]=!a||a.toLowerCase(),\"\"}),t[\"max-age\"]){var n=parseInt(t[\"max-age\"],10);isNaN(n)?delete t[\"max-age\"]:t[\"max-age\"]=n}return t};\n},{\"../geo/coordinate\":61,\"@mapbox/unitbezier\":3,\"point-geometry\":26}],213:[function(require,module,exports){\n\"use strict\";var Feature=function(e,t,r,o){this.type=\"Feature\",this._vectorTileFeature=e,e._z=t,e._x=r,e._y=o,this.properties=e.properties,null!=e.id&&(this.id=e.id)},prototypeAccessors={geometry:{}};prototypeAccessors.geometry.get=function(){return void 0===this._geometry&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry},prototypeAccessors.geometry.set=function(e){this._geometry=e},Feature.prototype.toJSON=function(){var e=this,t={geometry:this.geometry};for(var r in e)\"_geometry\"!==r&&\"_vectorTileFeature\"!==r&&(t[r]=e[r]);return t},Object.defineProperties(Feature.prototype,prototypeAccessors),module.exports=Feature;\n},{}],214:[function(require,module,exports){\n\"use strict\";var scriptDetection=require(\"./script_detection\");module.exports=function(t){for(var o=\"\",e=0;e\":\"﹀\",\"?\":\"︖\",\"@\":\"@\",\"[\":\"﹇\",\"\\\\\":\"\\",\"]\":\"﹈\",\"^\":\"^\",_:\"︳\",\"`\":\"`\",\"{\":\"︷\",\"|\":\"―\",\"}\":\"︸\",\"~\":\"~\",\"¢\":\"¢\",\"£\":\"£\",\"¥\":\"¥\",\"¦\":\"¦\",\"¬\":\"¬\",\"¯\":\" ̄\",\"–\":\"︲\",\"—\":\"︱\",\"‘\":\"﹃\",\"’\":\"﹄\",\"“\":\"﹁\",\"”\":\"﹂\",\"…\":\"︙\",\"‧\":\"・\",\"₩\":\"₩\",\"、\":\"︑\",\"。\":\"︒\",\"〈\":\"︿\",\"〉\":\"﹀\",\"《\":\"︽\",\"》\":\"︾\",\"「\":\"﹁\",\"」\":\"﹂\",\"『\":\"﹃\",\"』\":\"﹄\",\"【\":\"︻\",\"】\":\"︼\",\"〔\":\"︹\",\"〕\":\"︺\",\"〖\":\"︗\",\"〗\":\"︘\",\"!\":\"︕\",\"(\":\"︵\",\")\":\"︶\",\",\":\"︐\",\"-\":\"︲\",\".\":\"・\",\":\":\"︓\",\";\":\"︔\",\"<\":\"︿\",\">\":\"﹀\",\"?\":\"︖\",\"[\":\"﹇\",\"]\":\"﹈\",\"_\":\"︳\",\"{\":\"︷\",\"|\":\"―\",\"}\":\"︸\",\"⦅\":\"︵\",\"⦆\":\"︶\",\"。\":\"︒\",\"「\":\"﹁\",\"」\":\"﹂\"};\n},{\"./script_detection\":209}],215:[function(require,module,exports){\n\"use strict\";var WebWorker=require(\"./web_worker\"),WorkerPool=function(){this.active={}};WorkerPool.prototype.acquire=function(r){var e=this;if(!this.workers){var o=require(\"../\").workerCount;for(this.workers=[];this.workers.length {\n let replyTo = document.querySelector('#in-reply-to');\n replyTo.value = webStorage.getItem('replyTo');\n let content = document.querySelector('#content');\n content.value = webStorage.getItem('content');\n};\n\nconst saveData = () => {\n let replyTo = document.querySelector('#in-reply-to');\n let content = document.querySelector('#content');\n webStorage.setItem('replyTo', replyTo.value);\n webStorage.setItem('content', content.value);\n alertify.success('Auto-saved data');\n};\n\nconst clearData = () => {\n webStorage.removeItem('replyTo');\n webStorage.removeItem('content');\n};\n\nexport default function persistFormData()\n{\n let form = document.querySelector('form[name=\"micropub\"]');\n form.addEventListener('change', saveData);\n form.addEventListener('submit', clearData);\n loadData();\n}\n\n\n\n// WEBPACK FOOTER //\n// ./persist-form.js","//nearby-places.js\n\nimport alertify from 'alertify.js';\nimport addMap from './mapbox-utils';\nimport parseLocation from './parse-location';\nimport makeNewPlaceForm from './newplace-micropub';\n\nconst makeOptionsForForm = (map, position, places = null) => {\n //create the \",message:\"

{{message}}

\",log:\"
{{message}}
\"},defaultDialogs:{buttons:{holder:\"\",ok:\"\",cancel:\"\"},input:\"\",message:\"

{{message}}

\",log:\"
{{message}}
\"},build:function(t){var e=this.dialogs.buttons.ok,o=\"
\"+this.dialogs.message.replace(\"{{message}}\",t.message);return\"confirm\"!==t.type&&\"prompt\"!==t.type||(e=this.dialogs.buttons.cancel+this.dialogs.buttons.ok),\"prompt\"===t.type&&(o+=this.dialogs.input),o=(o+this.dialogs.buttons.holder+\"
\").replace(\"{{buttons}}\",e).replace(\"{{ok}}\",this.okLabel).replace(\"{{cancel}}\",this.cancelLabel)},setCloseLogOnClick:function(t){this.closeLogOnClick=!!t},close:function(t,e){this.closeLogOnClick&&t.addEventListener(\"click\",function(){o(t)}),e=e&&!isNaN(+e)?+e:this.delay,0>e?o(t):e>0&&setTimeout(function(){o(t)},e)},dialog:function(t,e,o,n){return this.setup({type:e,message:t,onOkay:o,onCancel:n})},log:function(t,e,o){var n=document.querySelectorAll(\".alertify-logs > div\");if(n){var i=n.length-this.maxLogItems;if(i>=0)for(var a=0,l=i+1;l>a;a++)this.close(n[a],-1)}this.notify(t,e,o)},setLogPosition:function(t){this.logContainerClass=\"alertify-logs \"+t},setupLogContainer:function(){var t=document.querySelector(\".alertify-logs\"),e=this.logContainerClass;return t||(t=document.createElement(\"div\"),t.className=e,this.parent.appendChild(t)),t.className!==e&&(t.className=e),t},notify:function(e,o,n){var i=this.setupLogContainer(),a=document.createElement(\"div\");a.className=o||\"default\",t.logTemplateMethod?a.innerHTML=t.logTemplateMethod(e):a.innerHTML=e,\"function\"==typeof n&&a.addEventListener(\"click\",n),i.appendChild(a),setTimeout(function(){a.className+=\" show\"},10),this.close(a,this.delay)},setup:function(t){function e(e){\"function\"!=typeof e&&(e=function(){}),i&&i.addEventListener(\"click\",function(i){t.onOkay&&\"function\"==typeof t.onOkay&&(l?t.onOkay(l.value,i):t.onOkay(i)),e(l?{buttonClicked:\"ok\",inputValue:l.value,event:i}:{buttonClicked:\"ok\",event:i}),o(n)}),a&&a.addEventListener(\"click\",function(i){t.onCancel&&\"function\"==typeof t.onCancel&&t.onCancel(i),e({buttonClicked:\"cancel\",event:i}),o(n)}),l&&l.addEventListener(\"keyup\",function(t){13===t.which&&i.click()})}var n=document.createElement(\"div\");n.className=\"alertify hide\",n.innerHTML=this.build(t);var i=n.querySelector(\".ok\"),a=n.querySelector(\".cancel\"),l=n.querySelector(\"input\"),s=n.querySelector(\"label\");l&&(\"string\"==typeof this.promptPlaceholder&&(s?s.textContent=this.promptPlaceholder:l.placeholder=this.promptPlaceholder),\"string\"==typeof this.promptValue&&(l.value=this.promptValue));var r;return\"function\"==typeof Promise?r=new Promise(e):e(),this.parent.appendChild(n),setTimeout(function(){n.classList.remove(\"hide\"),l&&t.type&&\"prompt\"===t.type?(l.select(),l.focus()):i&&i.focus()},100),r},okBtn:function(t){return this.okLabel=t,this},setDelay:function(t){return t=t||0,this.delay=isNaN(t)?this.defaultDelay:parseInt(t,10),this},cancelBtn:function(t){return this.cancelLabel=t,this},setMaxLogItems:function(t){this.maxLogItems=parseInt(t||this.defaultMaxLogItems)},theme:function(t){switch(t.toLowerCase()){case\"bootstrap\":this.dialogs.buttons.ok=\"\",this.dialogs.buttons.cancel=\"\",this.dialogs.input=\"\";break;case\"purecss\":this.dialogs.buttons.ok=\"\",this.dialogs.buttons.cancel=\"\";break;case\"mdl\":case\"material-design-light\":this.dialogs.buttons.ok=\"\",this.dialogs.buttons.cancel=\"\",this.dialogs.input=\"
\";break;case\"angular-material\":this.dialogs.buttons.ok=\"\",this.dialogs.buttons.cancel=\"\",this.dialogs.input=\"
\";break;case\"default\":default:this.dialogs.buttons.ok=this.defaultDialogs.buttons.ok,this.dialogs.buttons.cancel=this.defaultDialogs.buttons.cancel,this.dialogs.input=this.defaultDialogs.input}},reset:function(){this.parent=document.body,this.theme(\"default\"),this.okBtn(this.defaultOkLabel),this.cancelBtn(this.defaultCancelLabel),this.setMaxLogItems(),this.promptValue=\"\",this.promptPlaceholder=\"\",this.delay=this.defaultDelay,this.setCloseLogOnClick(this.closeLogOnClickDefault),this.setLogPosition(\"bottom left\"),this.logTemplateMethod=null},injectCSS:function(){if(!document.querySelector(\"#alertifyCSS\")){var t=document.getElementsByTagName(\"head\")[0],e=document.createElement(\"style\");e.type=\"text/css\",e.id=\"alertifyCSS\",e.innerHTML=\".alertify-logs>*{padding:12px 24px;color:#fff;box-shadow:0 2px 5px 0 rgba(0,0,0,.2);border-radius:1px}.alertify-logs>*,.alertify-logs>.default{background:rgba(0,0,0,.8)}.alertify-logs>.error{background:rgba(244,67,54,.8)}.alertify-logs>.success{background:rgba(76,175,80,.9)}.alertify{position:fixed;background-color:rgba(0,0,0,.3);left:0;right:0;top:0;bottom:0;width:100%;height:100%;z-index:1}.alertify.hide{opacity:0;pointer-events:none}.alertify,.alertify.show{box-sizing:border-box;transition:all .33s cubic-bezier(.25,.8,.25,1)}.alertify,.alertify *{box-sizing:border-box}.alertify .dialog{padding:12px}.alertify .alert,.alertify .dialog{width:100%;margin:0 auto;position:relative;top:50%;transform:translateY(-50%)}.alertify .alert>*,.alertify .dialog>*{width:400px;max-width:95%;margin:0 auto;text-align:center;padding:12px;background:#fff;box-shadow:0 2px 4px -1px rgba(0,0,0,.14),0 4px 5px 0 rgba(0,0,0,.098),0 1px 10px 0 rgba(0,0,0,.084)}.alertify .alert .msg,.alertify .dialog .msg{padding:12px;margin-bottom:12px;margin:0;text-align:left}.alertify .alert input:not(.form-control),.alertify .dialog input:not(.form-control){margin-bottom:15px;width:100%;font-size:100%;padding:12px}.alertify .alert input:not(.form-control):focus,.alertify .dialog input:not(.form-control):focus{outline-offset:-2px}.alertify .alert nav,.alertify .dialog nav{text-align:right}.alertify .alert nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button),.alertify .dialog nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button){background:transparent;box-sizing:border-box;color:rgba(0,0,0,.87);position:relative;outline:0;border:0;display:inline-block;-ms-flex-align:center;-ms-grid-row-align:center;align-items:center;padding:0 6px;margin:6px 8px;line-height:36px;min-height:36px;white-space:nowrap;min-width:88px;text-align:center;text-transform:uppercase;font-size:14px;text-decoration:none;cursor:pointer;border:1px solid transparent;border-radius:2px}.alertify .alert nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button):active,.alertify .alert nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button):hover,.alertify .dialog nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button):active,.alertify .dialog nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button):hover{background-color:rgba(0,0,0,.05)}.alertify .alert nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button):focus,.alertify .dialog nav button:not(.btn):not(.pure-button):not(.md-button):not(.mdl-button):focus{border:1px solid rgba(0,0,0,.1)}.alertify .alert nav button.btn,.alertify .dialog nav button.btn{margin:6px 4px}.alertify-logs{position:fixed;z-index:1}.alertify-logs.bottom,.alertify-logs:not(.top){bottom:16px}.alertify-logs.left,.alertify-logs:not(.right){left:16px}.alertify-logs.left>*,.alertify-logs:not(.right)>*{float:left;transform:translateZ(0);height:auto}.alertify-logs.left>.show,.alertify-logs:not(.right)>.show{left:0}.alertify-logs.left>*,.alertify-logs.left>.hide,.alertify-logs:not(.right)>*,.alertify-logs:not(.right)>.hide{left:-110%}.alertify-logs.right{right:16px}.alertify-logs.right>*{float:right;transform:translateZ(0)}.alertify-logs.right>.show{right:0;opacity:1}.alertify-logs.right>*,.alertify-logs.right>.hide{right:-110%;opacity:0}.alertify-logs.top{top:0}.alertify-logs>*{box-sizing:border-box;transition:all .4s cubic-bezier(.25,.8,.25,1);position:relative;clear:both;backface-visibility:hidden;perspective:1000;max-height:0;margin:0;padding:0;overflow:hidden;opacity:0;pointer-events:none}.alertify-logs>.show{margin-top:12px;opacity:1;max-height:1000px;padding:12px;pointer-events:auto}\",t.insertBefore(e,t.firstChild)}},removeCSS:function(){var t=document.querySelector(\"#alertifyCSS\");t&&t.parentNode&&t.parentNode.removeChild(t)}};return t.injectCSS(),{_$$alertify:t,parent:function(e){t.parent=e},reset:function(){return t.reset(),this},alert:function(e,o,n){return t.dialog(e,\"alert\",o,n)||this},confirm:function(e,o,n){return t.dialog(e,\"confirm\",o,n)||this},prompt:function(e,o,n){return t.dialog(e,\"prompt\",o,n)||this},log:function(e,o){return t.log(e,\"default\",o),this},theme:function(e){return t.theme(e),this},success:function(e,o){return t.log(e,\"success\",o),this},error:function(e,o){return t.log(e,\"error\",o),this},cancelBtn:function(e){return t.cancelBtn(e),this},okBtn:function(e){return t.okBtn(e),this},delay:function(e){return t.setDelay(e),this},placeholder:function(e){return t.promptPlaceholder=e,this},defaultValue:function(e){return t.promptValue=e,this},maxLogItems:function(e){return t.setMaxLogItems(e),this},closeLogOnClick:function(e){return t.setCloseLogOnClick(!!e),this},logPosition:function(e){return t.setLogPosition(e||\"\"),this},setLogTemplate:function(e){return t.logTemplateMethod=e,this},clearLogs:function(){return t.setupLogContainer().innerHTML=\"\",this},version:t.version}}var e=500,o=function(t){if(t){var o=function(){t&&t.parentNode&&t.parentNode.removeChild(t)};t.classList.remove(\"show\"),t.classList.add(\"hide\"),t.addEventListener(\"transitionend\",o),setTimeout(o,e)}};if(\"undefined\"!=typeof module&&module&&module.exports){module.exports=function(){return new t};var n=new t;for(var i in n)module.exports[i]=n[i]}else\"function\"==typeof define&&define.amd?define(function(){return new t}):window.alertify=new t}();\n\n\n//////////////////\n// WEBPACK FOOTER\n// /home/jonny/git/jonnybarnes.uk/~/alertify.js/dist/js/alertify.js\n// module id = 2\n// module chunks = 0","//select-place.js\n\nexport default function selectPlaceInForm(uri) {\n if (document.querySelector('select')) {\n if (uri == 'current-location') {\n document.querySelector('select [id=\"option-coords\"]').selected = true;\n } else {\n document.querySelector('select [value=\"' + uri + '\"]').selected = true;\n }\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./select-place.js","(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.mapboxgl = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o0){for(var o=0,a=0,u=0;uh.maxh||t>h.maxw||i<=h.maxh&&t<=h.maxw&&(r=h.maxw*h.maxh-t*i,rn.free)){if(i===n.h)return this.allocShelf(f,t,i,s);i>n.h||ic)&&(p=2*Math.max(t,c)),(uu)&&(l=2*Math.max(i,u)),this.resize(p,l),this.packOne(t,i,s)}return null},t.prototype.allocFreebin=function(t,e,i,s){var h=this.freebins.splice(t,1)[0];return h.id=s,h.w=e,h.h=i,h.refcount=0,this.bins[s]=h,this.ref(h),h},t.prototype.allocShelf=function(t,e,i,s){var h=this.shelves[t],n=h.alloc(e,i,s);return this.bins[s]=n,this.ref(n),n},t.prototype.getBin=function(t){return this.bins[t]},t.prototype.ref=function(t){if(1===++t.refcount){var e=t.h;this.stats[e]=(0|this.stats[e])+1}return t.refcount},t.prototype.unref=function(t){return 0===t.refcount?0:(0===--t.refcount&&(this.stats[t.h]--,delete this.bins[t.id],this.freebins.push(t)),t.refcount)},t.prototype.clear=function(){this.shelves=[],this.freebins=[],this.stats={},this.bins={},this.maxId=0},t.prototype.resize=function(t,e){this.w=t,this.h=e;for(var i=0;ithis.free||e>this.h)return null;var h=this.x;return this.x+=t,this.free-=t,new i(s,h,this.y,t,e,t,this.h)},e.prototype.resize=function(t){return this.free+=t-this.w,this.w=t,!0},t});\n},{}],3:[function(_dereq_,module,exports){\nfunction UnitBezier(t,i,e,r){this.cx=3*t,this.bx=3*(e-t)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*i,this.by=3*(r-i)-this.cy,this.ay=1-this.cy-this.by,this.p1x=t,this.p1y=r,this.p2x=e,this.p2y=r}module.exports=UnitBezier,UnitBezier.prototype.sampleCurveX=function(t){return((this.ax*t+this.bx)*t+this.cx)*t},UnitBezier.prototype.sampleCurveY=function(t){return((this.ay*t+this.by)*t+this.cy)*t},UnitBezier.prototype.sampleCurveDerivativeX=function(t){return(3*this.ax*t+2*this.bx)*t+this.cx},UnitBezier.prototype.solveCurveX=function(t,i){\"undefined\"==typeof i&&(i=1e-6);var e,r,s,h,n;for(s=t,n=0;n<8;n++){if(h=this.sampleCurveX(s)-t,Math.abs(h)r)return r;for(;eh?e=s:r=s,s=.5*(r-e)+e}return s},UnitBezier.prototype.solve=function(t,i){return this.sampleCurveY(this.solveCurveX(t,i))};\n},{}],4:[function(_dereq_,module,exports){\n!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?t(exports):\"function\"==typeof define&&define.amd?define([\"exports\"],t):t(e.WhooTS=e.WhooTS||{})}(this,function(e){function t(e,t,r,n,i,s){s=s||{};var f=e+\"?\"+[\"bbox=\"+o(r,n,i),\"format=\"+(s.format||\"image/png\"),\"service=\"+(s.service||\"WMS\"),\"version=\"+(s.version||\"1.1.1\"),\"request=\"+(s.request||\"GetMap\"),\"srs=\"+(s.srs||\"EPSG:3857\"),\"width=\"+(s.width||256),\"height=\"+(s.height||256),\"layers=\"+t].join(\"&\");return f}function o(e,t,o){t=Math.pow(2,o)-t-1;var n=r(256*e,256*t,o),i=r(256*(e+1),256*(t+1),o);return n[0]+\",\"+n[1]+\",\"+i[0]+\",\"+i[1]}function r(e,t,o){var r=2*Math.PI*6378137/256/Math.pow(2,o),n=e*r-2*Math.PI*6378137/2,i=t*r-2*Math.PI*6378137/2;return[n,i]}e.getURL=t,e.getTileBBox=o,e.getMercCoords=r,Object.defineProperty(e,\"__esModule\",{value:!0})});\n},{}],5:[function(_dereq_,module,exports){\n\"use strict\";function earcut(e,n,r){r=r||2;var t=n&&n.length,i=t?n[0]*r:e.length,x=linkedList(e,0,i,r,!0),a=[];if(!x)return a;var o,l,u,s,v,f,y;if(t&&(x=eliminateHoles(e,n,x,r)),e.length>80*r){o=u=e[0],l=s=e[1];for(var d=r;du&&(u=v),f>s&&(s=f);y=Math.max(u-o,s-l)}return earcutLinked(x,a,r,o,l,y),a}function linkedList(e,n,r,t,i){var x,a;if(i===signedArea(e,n,r,t)>0)for(x=n;x=n;x-=t)a=insertNode(x,e[x],e[x+1],a);return a&&equals(a,a.next)&&(removeNode(a),a=a.next),a}function filterPoints(e,n){if(!e)return e;n||(n=e);var r,t=e;do if(r=!1,t.steiner||!equals(t,t.next)&&0!==area(t.prev,t,t.next))t=t.next;else{if(removeNode(t),t=n=t.prev,t===t.next)return null;r=!0}while(r||t!==n);return n}function earcutLinked(e,n,r,t,i,x,a){if(e){!a&&x&&indexCurve(e,t,i,x);for(var o,l,u=e;e.prev!==e.next;)if(o=e.prev,l=e.next,x?isEarHashed(e,t,i,x):isEar(e))n.push(o.i/r),n.push(e.i/r),n.push(l.i/r),removeNode(e),e=l.next,u=l.next;else if(e=l,e===u){a?1===a?(e=cureLocalIntersections(e,n,r),earcutLinked(e,n,r,t,i,x,2)):2===a&&splitEarcut(e,n,r,t,i,x):earcutLinked(filterPoints(e),n,r,t,i,x,1);break}}}function isEar(e){var n=e.prev,r=e,t=e.next;if(area(n,r,t)>=0)return!1;for(var i=e.next.next;i!==e.prev;){if(pointInTriangle(n.x,n.y,r.x,r.y,t.x,t.y,i.x,i.y)&&area(i.prev,i,i.next)>=0)return!1;i=i.next}return!0}function isEarHashed(e,n,r,t){var i=e.prev,x=e,a=e.next;if(area(i,x,a)>=0)return!1;for(var o=i.xx.x?i.x>a.x?i.x:a.x:x.x>a.x?x.x:a.x,s=i.y>x.y?i.y>a.y?i.y:a.y:x.y>a.y?x.y:a.y,v=zOrder(o,l,n,r,t),f=zOrder(u,s,n,r,t),y=e.nextZ;y&&y.z<=f;){if(y!==e.prev&&y!==e.next&&pointInTriangle(i.x,i.y,x.x,x.y,a.x,a.y,y.x,y.y)&&area(y.prev,y,y.next)>=0)return!1;y=y.nextZ}for(y=e.prevZ;y&&y.z>=v;){if(y!==e.prev&&y!==e.next&&pointInTriangle(i.x,i.y,x.x,x.y,a.x,a.y,y.x,y.y)&&area(y.prev,y,y.next)>=0)return!1;y=y.prevZ}return!0}function cureLocalIntersections(e,n,r){var t=e;do{var i=t.prev,x=t.next.next;!equals(i,x)&&intersects(i,t,t.next,x)&&locallyInside(i,x)&&locallyInside(x,i)&&(n.push(i.i/r),n.push(t.i/r),n.push(x.i/r),removeNode(t),removeNode(t.next),t=e=x),t=t.next}while(t!==e);return t}function splitEarcut(e,n,r,t,i,x){var a=e;do{for(var o=a.next.next;o!==a.prev;){if(a.i!==o.i&&isValidDiagonal(a,o)){var l=splitPolygon(a,o);return a=filterPoints(a,a.next),l=filterPoints(l,l.next),earcutLinked(a,n,r,t,i,x),void earcutLinked(l,n,r,t,i,x)}o=o.next}a=a.next}while(a!==e)}function eliminateHoles(e,n,r,t){var i,x,a,o,l,u=[];for(i=0,x=n.length;i=t.next.y){var o=t.x+(x-t.y)*(t.next.x-t.x)/(t.next.y-t.y);if(o<=i&&o>a){if(a=o,o===i){if(x===t.y)return t;if(x===t.next.y)return t.next}r=t.x=t.x&&t.x>=s&&pointInTriangle(xr.x)&&locallyInside(t,e)&&(r=t,f=l)),t=t.next;return r}function indexCurve(e,n,r,t){var i=e;do null===i.z&&(i.z=zOrder(i.x,i.y,n,r,t)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next;while(i!==e);i.prevZ.nextZ=null,i.prevZ=null,sortLinked(i)}function sortLinked(e){var n,r,t,i,x,a,o,l,u=1;do{for(r=e,e=null,x=null,a=0;r;){for(a++,t=r,o=0,n=0;n0||l>0&&t;)0===o?(i=t,t=t.nextZ,l--):0!==l&&t?r.z<=t.z?(i=r,r=r.nextZ,o--):(i=t,t=t.nextZ,l--):(i=r,r=r.nextZ,o--),x?x.nextZ=i:e=i,i.prevZ=x,x=i;r=t}x.nextZ=null,u*=2}while(a>1);return e}function zOrder(e,n,r,t,i){return e=32767*(e-r)/i,n=32767*(n-t)/i,e=16711935&(e|e<<8),e=252645135&(e|e<<4),e=858993459&(e|e<<2),e=1431655765&(e|e<<1),n=16711935&(n|n<<8),n=252645135&(n|n<<4),n=858993459&(n|n<<2),n=1431655765&(n|n<<1),e|n<<1}function getLeftmost(e){var n=e,r=e;do n.x=0&&(e-a)*(t-o)-(r-a)*(n-o)>=0&&(r-a)*(x-o)-(i-a)*(t-o)>=0}function isValidDiagonal(e,n){return e.next.i!==n.i&&e.prev.i!==n.i&&!intersectsPolygon(e,n)&&locallyInside(e,n)&&locallyInside(n,e)&&middleInside(e,n)}function area(e,n,r){return(n.y-e.y)*(r.x-n.x)-(n.x-e.x)*(r.y-n.y)}function equals(e,n){return e.x===n.x&&e.y===n.y}function intersects(e,n,r,t){return!!(equals(e,n)&&equals(r,t)||equals(e,t)&&equals(r,n))||area(e,n,r)>0!=area(e,n,t)>0&&area(r,t,e)>0!=area(r,t,n)>0}function intersectsPolygon(e,n){var r=e;do{if(r.i!==e.i&&r.next.i!==e.i&&r.i!==n.i&&r.next.i!==n.i&&intersects(r,r.next,e,n))return!0;r=r.next}while(r!==e);return!1}function locallyInside(e,n){return area(e.prev,e,e.next)<0?area(e,n,e.next)>=0&&area(e,e.prev,n)>=0:area(e,n,e.prev)<0||area(e,e.next,n)<0}function middleInside(e,n){var r=e,t=!1,i=(e.x+n.x)/2,x=(e.y+n.y)/2;do r.y>x!=r.next.y>x&&i<(r.next.x-r.x)*(x-r.y)/(r.next.y-r.y)+r.x&&(t=!t),r=r.next;while(r!==e);return t}function splitPolygon(e,n){var r=new Node(e.i,e.x,e.y),t=new Node(n.i,n.x,n.y),i=e.next,x=n.prev;return e.next=n,n.prev=e,r.next=i,i.prev=r,t.next=r,r.prev=t,x.next=t,t.prev=x,t}function insertNode(e,n,r,t){var i=new Node(e,n,r);return t?(i.next=t.next,i.prev=t,t.next.prev=i,t.next=i):(i.prev=i,i.next=i),i}function removeNode(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function Node(e,n,r){this.i=e,this.x=n,this.y=r,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function signedArea(e,n,r,t){for(var i=0,x=n,a=r-t;x0&&(t+=e[i-1].length,r.holes.push(t))}return r};\n},{}],6:[function(_dereq_,module,exports){\nfunction geometry(r){if(\"Polygon\"===r.type)return polygonArea(r.coordinates);if(\"MultiPolygon\"===r.type){for(var e=0,n=0;n0){e+=Math.abs(ringArea(r[0]));for(var n=1;n2){for(var n,t,o=0;o=0}var geojsonArea=_dereq_(\"geojson-area\");module.exports=rewind;\n},{\"geojson-area\":6}],8:[function(_dereq_,module,exports){\n\"use strict\";function clip(e,r,t,n,u,i,l,s){if(t/=r,n/=r,l>=t&&s<=n)return e;if(l>n||s=t&&c<=n)h.push(o);else if(!(a>n||c=r&&s<=t&&u.push(l)}return u}function clipGeometry(e,r,t,n,u,i){for(var l=[],s=0;st?(d.push(u(h,f,r),u(h,f,t)),i||(d=newSlice(l,d,v,m,w))):o>=r&&d.push(u(h,f,r)):c>t?ot&&(d.push(u(h,f,t)),i||(d=newSlice(l,d,v,m,w))));h=g[S-1],c=h[n],c>=r&&c<=t&&d.push(h),a=d[d.length-1],i&&a&&(d[0][0]!==a[0]||d[0][1]!==a[1])&&d.push(d[0]),newSlice(l,d,v,m,w)}return l}function newSlice(e,r,t,n,u){return r.length&&(r.area=t,r.dist=n,void 0!==u&&(r.outer=u),e.push(r)),[]}module.exports=clip;var createFeature=_dereq_(\"./feature\");\n},{\"./feature\":10}],9:[function(_dereq_,module,exports){\n\"use strict\";function convert(e,t){var r=[];if(\"FeatureCollection\"===e.type)for(var o=0;o1?1:o,[r,o,0]}function calcSize(e){for(var t,r,o=0,a=0,i=0;i1)return!1;var r=n.geometry[0].length;if(5!==r)return!1;for(var s=0;s1&&console.time(\"creation\"),m=this.tiles[d]=createTile(e,p,i,o,f,t===a.maxZoom),this.tileCoords.push({z:t,x:i,y:o}),u)){u>1&&(console.log(\"tile z%d-%d-%d (features: %d, points: %d, simplified: %d)\",t,i,o,m.numFeatures,m.numPoints,m.numSimplified),console.timeEnd(\"creation\"));var h=\"z\"+t;this.stats[h]=(this.stats[h]||0)+1,this.total++}if(m.source=e,n){if(t===a.maxZoom||t===n)continue;var x=1<1&&console.time(\"clipping\");var g,v,M,T,b,y,S=.5*a.buffer/a.extent,Z=.5-S,q=.5+S,w=1+S;g=v=M=T=null,b=clip(e,p,i-S,i+q,0,intersectX,m.min[0],m.max[0]),y=clip(e,p,i+Z,i+w,0,intersectX,m.min[0],m.max[0]),b&&(g=clip(b,p,o-S,o+q,1,intersectY,m.min[1],m.max[1]),v=clip(b,p,o+Z,o+w,1,intersectY,m.min[1],m.max[1])),y&&(M=clip(y,p,o-S,o+q,1,intersectY,m.min[1],m.max[1]),T=clip(y,p,o+Z,o+w,1,intersectY,m.min[1],m.max[1])),u>1&&console.timeEnd(\"clipping\"),e.length&&(l.push(g||[],t+1,2*i,2*o),l.push(v||[],t+1,2*i,2*o+1),l.push(M||[],t+1,2*i+1,2*o),l.push(T||[],t+1,2*i+1,2*o+1))}else n&&(c=t)}return c},GeoJSONVT.prototype.getTile=function(e,t,i){var o=this.options,n=o.extent,r=o.debug,s=1<1&&console.log(\"drilling down to z%d-%d-%d\",e,t,i);for(var a,u=e,c=t,p=i;!a&&u>0;)u--,c=Math.floor(c/2),p=Math.floor(p/2),a=this.tiles[toID(u,c,p)];if(!a||!a.source)return null;if(r>1&&console.log(\"found parent tile z%d-%d-%d\",u,c,p),isClippedSquare(a,n,o.buffer))return transform.tile(a,n);r>1&&console.time(\"drilling down\");var d=this.splitTile(a.source,u,c,p,e,t,i);if(r>1&&console.timeEnd(\"drilling down\"),null!==d){var m=1<p&&(s=e,p=r);p>o?(t[s][2]=p,g.push(u),g.push(s),u=s):(n=g.pop(),u=g.pop())}}function getSqSegDist(t,i,e){var p=i[0],r=i[1],s=e[0],o=e[1],f=t[0],u=t[1],n=s-p,g=o-r;if(0!==n||0!==g){var l=((f-p)*n+(u-r)*g)/(n*n+g*g);l>1?(p=s,r=o):l>0&&(p+=n*l,r+=g*l)}return n=f-p,g=u-r,n*n+g*g}module.exports=simplify;\n},{}],13:[function(_dereq_,module,exports){\n\"use strict\";function createTile(e,n,r,i,t,u){for(var a={features:[],numPoints:0,numSimplified:0,numFeatures:0,source:null,x:r,y:i,z2:n,transformed:!1,min:[2,1],max:[-1,0]},m=0;ma.max[0]&&(a.max[0]=l[0]),l[1]>a.max[1]&&(a.max[1]=l[1])}return a}function addFeature(e,n,r,i){var t,u,a,m,s=n.geometry,l=n.type,o=[],f=r*r;if(1===l)for(t=0;tf)&&(d.push(m),e.numSimplified++),e.numPoints++;3===l&&rewind(d,a.outer),o.push(d)}else e.numPoints+=a.length;if(o.length){var g={geometry:o,type:l,tags:n.tags||null};null!==n.id&&(g.id=n.id),e.features.push(g)}}function rewind(e,n){var r=signedArea(e);r<0===n&&e.reverse()}function signedArea(e){for(var n,r,i=0,t=0,u=e.length,a=u-1;t=a[u+0]&&s>=a[u+1]?(n[f]=!0,h.push(l[f])):n[f]=!1}}},GridIndex.prototype._forEachCell=function(t,r,e,s,i,h,n){for(var o=this._convertToCellCoord(t),l=this._convertToCellCoord(r),a=this._convertToCellCoord(e),d=this._convertToCellCoord(s),f=o;f<=a;f++)for(var u=l;u<=d;u++){var y=this.d*u+f;if(i.call(this,t,r,e,s,y,h,n))return}},GridIndex.prototype._convertToCellCoord=function(t){return Math.max(0,Math.min(this.d-1,Math.floor(t*this.scale)+this.padding))},GridIndex.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var t=this.cells,r=NUM_PARAMS+this.cells.length+1+1,e=0,s=0;s>1,i=-7,N=t?h-1:0,n=t?-1:1,s=a[o+N];for(N+=n,M=s&(1<<-i)-1,s>>=-i,i+=w;i>0;M=256*M+a[o+N],N+=n,i-=8);for(p=M&(1<<-i)-1,M>>=-i,i+=r;i>0;p=256*p+a[o+N],N+=n,i-=8);if(0===M)M=1-e;else{if(M===f)return p?NaN:(s?-1:1)*(1/0);p+=Math.pow(2,r),M-=e}return(s?-1:1)*p*Math.pow(2,M-r)},exports.write=function(a,o,t,r,h,M){var p,w,f,e=8*M-h-1,i=(1<>1,n=23===h?Math.pow(2,-24)-Math.pow(2,-77):0,s=r?0:M-1,u=r?1:-1,l=o<0||0===o&&1/o<0?1:0;for(o=Math.abs(o),isNaN(o)||o===1/0?(w=isNaN(o)?1:0,p=i):(p=Math.floor(Math.log(o)/Math.LN2),o*(f=Math.pow(2,-p))<1&&(p--,f*=2),o+=p+N>=1?n/f:n*Math.pow(2,1-N),o*f>=2&&(p++,f/=2),p+N>=i?(w=0,p=i):p+N>=1?(w=(o*f-1)*Math.pow(2,h),p+=N):(w=o*Math.pow(2,N-1)*Math.pow(2,h),p=0));h>=8;a[t+s]=255&w,s+=u,w/=256,h-=8);for(p=p<0;a[t+s]=255&p,s+=u,p/=256,e-=8);a[t+s-u]|=128*l};\n},{}],18:[function(_dereq_,module,exports){\n\"use strict\";function kdbush(t,i,e,s,n){return new KDBush(t,i,e,s,n)}function KDBush(t,i,e,s,n){i=i||defaultGetX,e=e||defaultGetY,n=n||Array,this.nodeSize=s||64,this.points=t,this.ids=new n(t.length),this.coords=new n(2*t.length);for(var r=0;r=s&&a<=h&&t>=u&&t<=e&&f.push(p[i]);else{var c=Math.floor((g+v)/2);a=r[2*c],t=r[2*c+1],a>=s&&a<=h&&t>=u&&t<=e&&f.push(p[c]);var d=(l+1)%2;(0===l?s<=a:u<=t)&&(n.push(g),n.push(c-1),n.push(d)),(0===l?h>=a:e>=t)&&(n.push(c+1),n.push(v),n.push(d))}}return f}module.exports=range;\n},{}],20:[function(_dereq_,module,exports){\n\"use strict\";function sortKD(t,a,o,s,r,e){if(!(r-s<=o)){var f=Math.floor((s+r)/2);select(t,a,f,s,r,e%2),sortKD(t,a,o,s,f-1,e+1),sortKD(t,a,o,f+1,r,e+1)}}function select(t,a,o,s,r,e){for(;r>s;){if(r-s>600){var f=r-s+1,p=o-s+1,w=Math.log(f),m=.5*Math.exp(2*w/3),n=.5*Math.sqrt(w*m*(f-m)/f)*(p-f/2<0?-1:1),c=Math.max(s,Math.floor(o-p*m/f+n)),h=Math.min(r,Math.floor(o+(f-p)*m/f+n));select(t,a,o,c,h,e)}var i=a[2*o+e],l=s,M=r;for(swapItem(t,a,s,o),a[2*r+e]>i&&swapItem(t,a,s,r);li;)M--}a[2*s+e]===i?swapItem(t,a,s,M):(M++,swapItem(t,a,M,r)),M<=o&&(s=M+1),o<=M&&(r=M-1)}}function swapItem(t,a,o,s){swap(t,o,s),swap(a,2*o,2*s),swap(a,2*o+1,2*s+1)}function swap(t,a,o){var s=t[a];t[a]=t[o],t[o]=s}module.exports=sortKD;\n},{}],21:[function(_dereq_,module,exports){\n\"use strict\";function within(s,p,r,t,u,h){for(var i=[0,s.length-1,0],o=[],n=u*u;i.length;){var e=i.pop(),a=i.pop(),f=i.pop();if(a-f<=h)for(var v=f;v<=a;v++)sqDist(p[2*v],p[2*v+1],r,t)<=n&&o.push(s[v]);else{var l=Math.floor((f+a)/2),c=p[2*l],q=p[2*l+1];sqDist(c,q,r,t)<=n&&o.push(s[l]);var D=(e+1)%2;(0===e?r-u<=c:t-u<=q)&&(i.push(f),i.push(l-1),i.push(D)),(0===e?r+u>=c:t+u>=q)&&(i.push(l+1),i.push(a),i.push(D))}}return o}function sqDist(s,p,r,t){var u=s-r,h=p-t;return u*u+h*h}module.exports=within;\n},{}],22:[function(_dereq_,module,exports){\n\"use strict\";function isSupported(e){return!!(isBrowser()&&isArraySupported()&&isFunctionSupported()&&isObjectSupported()&&isJSONSupported()&&isWorkerSupported()&&isUint8ClampedArraySupported()&&isWebGLSupportedCached(e&&e.failIfMajorPerformanceCaveat))}function isBrowser(){return\"undefined\"!=typeof window&&\"undefined\"!=typeof document}function isArraySupported(){return Array.prototype&&Array.prototype.every&&Array.prototype.filter&&Array.prototype.forEach&&Array.prototype.indexOf&&Array.prototype.lastIndexOf&&Array.prototype.map&&Array.prototype.some&&Array.prototype.reduce&&Array.prototype.reduceRight&&Array.isArray}function isFunctionSupported(){return Function.prototype&&Function.prototype.bind}function isObjectSupported(){return Object.keys&&Object.create&&Object.getPrototypeOf&&Object.getOwnPropertyNames&&Object.isSealed&&Object.isFrozen&&Object.isExtensible&&Object.getOwnPropertyDescriptor&&Object.defineProperty&&Object.defineProperties&&Object.seal&&Object.freeze&&Object.preventExtensions}function isJSONSupported(){return\"JSON\"in window&&\"parse\"in JSON&&\"stringify\"in JSON}function isWorkerSupported(){return\"Worker\"in window}function isUint8ClampedArraySupported(){return\"Uint8ClampedArray\"in window}function isWebGLSupportedCached(e){return void 0===isWebGLSupportedCache[e]&&(isWebGLSupportedCache[e]=isWebGLSupported(e)),isWebGLSupportedCache[e]}function isWebGLSupported(e){var t=document.createElement(\"canvas\"),r=Object.create(isSupported.webGLContextAttributes);return r.failIfMajorPerformanceCaveat=e,t.probablySupportsContext?t.probablySupportsContext(\"webgl\",r)||t.probablySupportsContext(\"experimental-webgl\",r):t.supportsContext?t.supportsContext(\"webgl\",r)||t.supportsContext(\"experimental-webgl\",r):t.getContext(\"webgl\",r)||t.getContext(\"experimental-webgl\",r)}\"undefined\"!=typeof module&&module.exports?module.exports=isSupported:window&&(window.mapboxgl=window.mapboxgl||{},window.mapboxgl.supported=isSupported);var isWebGLSupportedCache={};isSupported.webGLContextAttributes={antialias:!1,alpha:!0,stencil:!0,depth:!0};\n},{}],23:[function(_dereq_,module,exports){\n(function (process){\nfunction normalizeArray(r,t){for(var e=0,n=r.length-1;n>=0;n--){var s=r[n];\".\"===s?r.splice(n,1):\"..\"===s?(r.splice(n,1),e++):e&&(r.splice(n,1),e--)}if(t)for(;e--;e)r.unshift(\"..\");return r}function filter(r,t){if(r.filter)return r.filter(t);for(var e=[],n=0;n=-1&&!t;e--){var n=e>=0?arguments[e]:process.cwd();if(\"string\"!=typeof n)throw new TypeError(\"Arguments to path.resolve must be strings\");n&&(r=n+\"/\"+r,t=\"/\"===n.charAt(0))}return r=normalizeArray(filter(r.split(\"/\"),function(r){return!!r}),!t).join(\"/\"),(t?\"/\":\"\")+r||\".\"},exports.normalize=function(r){var t=exports.isAbsolute(r),e=\"/\"===substr(r,-1);return r=normalizeArray(filter(r.split(\"/\"),function(r){return!!r}),!t).join(\"/\"),r||t||(r=\".\"),r&&e&&(r+=\"/\"),(t?\"/\":\"\")+r},exports.isAbsolute=function(r){return\"/\"===r.charAt(0)},exports.join=function(){var r=Array.prototype.slice.call(arguments,0);return exports.normalize(filter(r,function(r,t){if(\"string\"!=typeof r)throw new TypeError(\"Arguments to path.join must be strings\");return r}).join(\"/\"))},exports.relative=function(r,t){function e(r){for(var t=0;t=0&&\"\"===r[e];e--);return t>e?[]:r.slice(t,e-t+1)}r=exports.resolve(r).substr(1),t=exports.resolve(t).substr(1);for(var n=e(r.split(\"/\")),s=e(t.split(\"/\")),i=Math.min(n.length,s.length),o=i,u=0;u55295&&e<57344){if(!r){e>56319||o+1===n?i.push(239,191,189):r=e;continue}if(e<56320){i.push(239,191,189),r=e;continue}e=r-55296<<10|e-56320|65536,r=null}else r&&(i.push(239,191,189),r=null);e<128?i.push(e):e<2048?i.push(e>>6|192,63&e|128):e<65536?i.push(e>>12|224,e>>6&63|128,63&e|128):i.push(e>>18|240,e>>12&63|128,e>>6&63|128,63&e|128)}return i}module.exports=Buffer;var ieee754=_dereq_(\"ieee754\"),BufferMethods,lastStr,lastStrEncoded;BufferMethods={readUInt32LE:function(t){return(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},writeUInt32LE:function(t,e){this[e]=t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24},readInt32LE:function(t){return(this[t]|this[t+1]<<8|this[t+2]<<16)+(this[t+3]<<24)},readFloatLE:function(t){return ieee754.read(this,t,!0,23,4)},readDoubleLE:function(t){return ieee754.read(this,t,!0,52,8)},writeFloatLE:function(t,e){return ieee754.write(this,t,e,!0,23,4)},writeDoubleLE:function(t,e){return ieee754.write(this,t,e,!0,52,8)},toString:function(t,e,r){var n=\"\",i=\"\";e=e||0,r=Math.min(this.length,r||this.length);for(var o=e;o=1;){if(i.pos>=e)throw new Error(\"Given varint doesn't fit into 10 bytes\");var r=255&t;i.buf[i.pos++]=r|(t>=128?128:0),t/=128}}function reallocForRawMessage(t,i,e){var r=i<=16383?1:i<=2097151?2:i<=268435455?3:Math.ceil(Math.log(i)/(7*Math.LN2));e.realloc(r);for(var s=e.pos-1;s>=t;s--)e.buf[s+r]=e.buf[s]}function writePackedVarint(t,i){for(var e=0;e>3,n=this.pos;t(s,i,this),this.pos===n&&this.skip(r)}return i},readMessage:function(t,i){return this.readFields(t,i,this.readVarint()+this.pos)},readFixed32:function(){var t=this.buf.readUInt32LE(this.pos);return this.pos+=4,t},readSFixed32:function(){var t=this.buf.readInt32LE(this.pos);return this.pos+=4,t},readFixed64:function(){var t=this.buf.readUInt32LE(this.pos)+this.buf.readUInt32LE(this.pos+4)*SHIFT_LEFT_32;return this.pos+=8,t},readSFixed64:function(){var t=this.buf.readUInt32LE(this.pos)+this.buf.readInt32LE(this.pos+4)*SHIFT_LEFT_32;return this.pos+=8,t},readFloat:function(){var t=this.buf.readFloatLE(this.pos);return this.pos+=4,t},readDouble:function(){var t=this.buf.readDoubleLE(this.pos);return this.pos+=8,t},readVarint:function(){var t,i,e=this.buf;return i=e[this.pos++],t=127&i,i<128?t:(i=e[this.pos++],t|=(127&i)<<7,i<128?t:(i=e[this.pos++],t|=(127&i)<<14,i<128?t:(i=e[this.pos++],t|=(127&i)<<21,i<128?t:readVarintRemainder(t,this))))},readVarint64:function(){var t=this.pos,i=this.readVarint();if(i127;);else if(i===Pbf.Bytes)this.pos=this.readVarint()+this.pos;else if(i===Pbf.Fixed32)this.pos+=4;else{if(i!==Pbf.Fixed64)throw new Error(\"Unimplemented type: \"+i);this.pos+=8}},writeTag:function(t,i){this.writeVarint(t<<3|i)},realloc:function(t){for(var i=this.length||16;i268435455?void writeBigVarint(t,this):(this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),void(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);var i=Buffer.byteLength(t);this.writeVarint(i),this.realloc(i),this.buf.write(t,this.pos),this.pos+=i},writeFloat:function(t){this.realloc(4),this.buf.writeFloatLE(t,this.pos),this.pos+=4},writeDouble:function(t){this.realloc(8),this.buf.writeDoubleLE(t,this.pos),this.pos+=8},writeBytes:function(t){var i=t.length;this.writeVarint(i),this.realloc(i);for(var e=0;e=128&&reallocForRawMessage(e,r,this),this.pos=e-1,this.writeVarint(r),this.pos+=r},writeMessage:function(t,i,e){this.writeTag(t,Pbf.Bytes),this.writeRawMessage(i,e)},writePackedVarint:function(t,i){this.writeMessage(t,writePackedVarint,i)},writePackedSVarint:function(t,i){this.writeMessage(t,writePackedSVarint,i)},writePackedBoolean:function(t,i){this.writeMessage(t,writePackedBoolean,i)},writePackedFloat:function(t,i){this.writeMessage(t,writePackedFloat,i)},writePackedDouble:function(t,i){this.writeMessage(t,writePackedDouble,i)},writePackedFixed32:function(t,i){this.writeMessage(t,writePackedFixed32,i)},writePackedSFixed32:function(t,i){this.writeMessage(t,writePackedSFixed32,i)},writePackedFixed64:function(t,i){this.writeMessage(t,writePackedFixed64,i)},writePackedSFixed64:function(t,i){this.writeMessage(t,writePackedSFixed64,i)},writeBytesField:function(t,i){this.writeTag(t,Pbf.Bytes),this.writeBytes(i)},writeFixed32Field:function(t,i){this.writeTag(t,Pbf.Fixed32),this.writeFixed32(i)},writeSFixed32Field:function(t,i){this.writeTag(t,Pbf.Fixed32),this.writeSFixed32(i)},writeFixed64Field:function(t,i){this.writeTag(t,Pbf.Fixed64),this.writeFixed64(i)},writeSFixed64Field:function(t,i){this.writeTag(t,Pbf.Fixed64),this.writeSFixed64(i)},writeVarintField:function(t,i){this.writeTag(t,Pbf.Varint),this.writeVarint(i)},writeSVarintField:function(t,i){this.writeTag(t,Pbf.Varint),this.writeSVarint(i)},writeStringField:function(t,i){this.writeTag(t,Pbf.Bytes),this.writeString(i)},writeFloatField:function(t,i){this.writeTag(t,Pbf.Fixed32),this.writeFloat(i)},writeDoubleField:function(t,i){this.writeTag(t,Pbf.Fixed64),this.writeDouble(i)},writeBooleanField:function(t,i){this.writeVarintField(t,Boolean(i))}};\n}).call(this,typeof global !== \"undefined\" ? global : typeof self !== \"undefined\" ? self : typeof window !== \"undefined\" ? window : {})\n\n},{\"./buffer\":24}],26:[function(_dereq_,module,exports){\n\"use strict\";function Point(t,n){this.x=t,this.y=n}module.exports=Point,Point.prototype={clone:function(){return new Point(this.x,this.y)},add:function(t){return this.clone()._add(t)},sub:function(t){return this.clone()._sub(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)},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 n=t.x-this.x,i=t.y-this.y;return n*n+i*i},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,n){return Math.atan2(this.x*n-this.y*t,this.x*t+this.y*n)},_matMult:function(t){var n=t[0]*this.x+t[1]*this.y,i=t[2]*this.x+t[3]*this.y;return this.x=n,this.y=i,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},_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 n=Math.cos(t),i=Math.sin(t),s=n*this.x-i*this.y,r=i*this.x+n*this.y;return this.x=s,this.y=r,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},Point.convert=function(t){return t instanceof Point?t:Array.isArray(t)?new Point(t[0],t[1]):t};\n},{}],27:[function(_dereq_,module,exports){\nfunction defaultSetTimout(){throw new Error(\"setTimeout has not been defined\")}function defaultClearTimeout(){throw new Error(\"clearTimeout has not been defined\")}function runTimeout(e){if(cachedSetTimeout===setTimeout)return setTimeout(e,0);if((cachedSetTimeout===defaultSetTimout||!cachedSetTimeout)&&setTimeout)return cachedSetTimeout=setTimeout,setTimeout(e,0);try{return cachedSetTimeout(e,0)}catch(t){try{return cachedSetTimeout.call(null,e,0)}catch(t){return cachedSetTimeout.call(this,e,0)}}}function runClearTimeout(e){if(cachedClearTimeout===clearTimeout)return clearTimeout(e);if((cachedClearTimeout===defaultClearTimeout||!cachedClearTimeout)&&clearTimeout)return cachedClearTimeout=clearTimeout,clearTimeout(e);try{return cachedClearTimeout(e)}catch(t){try{return cachedClearTimeout.call(null,e)}catch(t){return cachedClearTimeout.call(this,e)}}}function cleanUpNextTick(){draining&¤tQueue&&(draining=!1,currentQueue.length?queue=currentQueue.concat(queue):queueIndex=-1,queue.length&&drainQueue())}function drainQueue(){if(!draining){var e=runTimeout(cleanUpNextTick);draining=!0;for(var t=queue.length;t;){for(currentQueue=queue,queue=[];++queueIndex1)for(var u=1;ur;){if(o-r>600){var f=o-r+1,e=t-r+1,l=Math.log(f),s=.5*Math.exp(2*l/3),i=.5*Math.sqrt(l*s*(f-s)/f)*(e-f/2<0?-1:1),n=Math.max(r,Math.floor(t-e*s/f+i)),h=Math.min(o,Math.floor(t+(f-e)*s/f+i));partialSort(a,t,n,h,p)}var u=a[t],M=r,w=o;for(swap(a,r,t),p(a[o],u)>0&&swap(a,r,o);M0;)w--}0===p(a[r],u)?swap(a,r,w):(w++,swap(a,w,o)),w<=t&&(r=w+1),t<=w&&(o=w-1)}}function swap(a,t,r){var o=a[t];a[t]=a[r],a[r]=o}function defaultCompare(a,t){return at?1:0}module.exports=partialSort;\n},{}],29:[function(_dereq_,module,exports){\n\"use strict\";function supercluster(t){return new SuperCluster(t)}function SuperCluster(t){this.options=extend(Object.create(this.options),t),this.trees=new Array(this.options.maxZoom+1)}function createCluster(t,e,o,n){return{x:t,y:e,zoom:1/0,id:n,numPoints:o}}function createPointCluster(t,e){var o=t.geometry.coordinates;return createCluster(lngX(o[0]),latY(o[1]),1,e)}function getClusterJSON(t){return{type:\"Feature\",properties:getClusterProperties(t),geometry:{type:\"Point\",coordinates:[xLng(t.x),yLat(t.y)]}}}function getClusterProperties(t){var e=t.numPoints,o=e>=1e4?Math.round(e/1e3)+\"k\":e>=1e3?Math.round(e/100)/10+\"k\":e;return{cluster:!0,point_count:e,point_count_abbreviated:o}}function lngX(t){return t/360+.5}function latY(t){var e=Math.sin(t*Math.PI/180),o=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return o<0?0:o>1?1:o}function xLng(t){return 360*(t-.5)}function yLat(t){var e=(180-360*t)*Math.PI/180;return 360*Math.atan(Math.exp(e))/Math.PI-90}function extend(t,e){for(var o in e)t[o]=e[o];return t}function getX(t){return t.x}function getY(t){return t.y}var kdbush=_dereq_(\"kdbush\");module.exports=supercluster,SuperCluster.prototype={options:{minZoom:0,maxZoom:16,radius:40,extent:512,nodeSize:64,log:!1},load:function(t){var e=this.options.log;e&&console.time(\"total time\");var o=\"prepare \"+t.length+\" points\";e&&console.time(o),this.points=t;var n=t.map(createPointCluster);e&&console.timeEnd(o);for(var r=this.options.maxZoom;r>=this.options.minZoom;r--){var i=+Date.now();this.trees[r+1]=kdbush(n,getX,getY,this.options.nodeSize,Float32Array),n=this._cluster(n,r),e&&console.log(\"z%d: %d clusters in %dms\",r,n.length,+Date.now()-i)}return this.trees[this.options.minZoom]=kdbush(n,getX,getY,this.options.nodeSize,Float32Array),e&&console.timeEnd(\"total time\"),this},getClusters:function(t,e){for(var o=this.trees[this._limitZoom(e)],n=o.range(lngX(t[0]),latY(t[3]),lngX(t[2]),latY(t[1])),r=[],i=0;i=0;a--)this._down(a)}function defaultCompare(t,i){return ti?1:0}function swap(t,i,a){var n=t[i];t[i]=t[a],t[a]=n}module.exports=TinyQueue,TinyQueue.prototype={push:function(t){this.data.push(t),this.length++,this._up(this.length-1)},pop:function(){var t=this.data[0];return this.data[0]=this.data[this.length-1],this.length--,this.data.pop(),this._down(0),t},peek:function(){return this.data[0]},_up:function(t){for(var i=this.data,a=this.compare;t>0;){var n=Math.floor((t-1)/2);if(!(a(i[t],i[n])<0))break;swap(i,n,t),t=n}},_down:function(t){for(var i=this.data,a=this.compare,n=this.length;;){var e=2*t+1,h=e+1,s=t;if(e=3&&(t.depth=arguments[2]),arguments.length>=4&&(t.colors=arguments[3]),isBoolean(r)?t.showHidden=r:r&&exports._extend(t,r),isUndefined(t.showHidden)&&(t.showHidden=!1),isUndefined(t.depth)&&(t.depth=2),isUndefined(t.colors)&&(t.colors=!1),isUndefined(t.customInspect)&&(t.customInspect=!0),t.colors&&(t.stylize=stylizeWithColor),formatValue(t,e,t.depth)}function stylizeWithColor(e,r){var t=inspect.styles[r];return t?\"\u001b[\"+inspect.colors[t][0]+\"m\"+e+\"\u001b[\"+inspect.colors[t][1]+\"m\":e}function stylizeNoColor(e,r){return e}function arrayToHash(e){var r={};return e.forEach(function(e,t){r[e]=!0}),r}function formatValue(e,r,t){if(e.customInspect&&r&&isFunction(r.inspect)&&r.inspect!==exports.inspect&&(!r.constructor||r.constructor.prototype!==r)){var n=r.inspect(t,e);return isString(n)||(n=formatValue(e,n,t)),n}var i=formatPrimitive(e,r);if(i)return i;var o=Object.keys(r),s=arrayToHash(o);if(e.showHidden&&(o=Object.getOwnPropertyNames(r)),isError(r)&&(o.indexOf(\"message\")>=0||o.indexOf(\"description\")>=0))return formatError(r);if(0===o.length){if(isFunction(r)){var u=r.name?\": \"+r.name:\"\";return e.stylize(\"[Function\"+u+\"]\",\"special\")}if(isRegExp(r))return e.stylize(RegExp.prototype.toString.call(r),\"regexp\");if(isDate(r))return e.stylize(Date.prototype.toString.call(r),\"date\");if(isError(r))return formatError(r)}var c=\"\",a=!1,l=[\"{\",\"}\"];if(isArray(r)&&(a=!0,l=[\"[\",\"]\"]),isFunction(r)){var p=r.name?\": \"+r.name:\"\";c=\" [Function\"+p+\"]\"}if(isRegExp(r)&&(c=\" \"+RegExp.prototype.toString.call(r)),isDate(r)&&(c=\" \"+Date.prototype.toUTCString.call(r)),isError(r)&&(c=\" \"+formatError(r)),0===o.length&&(!a||0==r.length))return l[0]+c+l[1];if(t<0)return isRegExp(r)?e.stylize(RegExp.prototype.toString.call(r),\"regexp\"):e.stylize(\"[Object]\",\"special\");e.seen.push(r);var f;return f=a?formatArray(e,r,t,s,o):o.map(function(n){return formatProperty(e,r,t,s,n,a)}),e.seen.pop(),reduceToSingleString(f,c,l)}function formatPrimitive(e,r){if(isUndefined(r))return e.stylize(\"undefined\",\"undefined\");if(isString(r)){var t=\"'\"+JSON.stringify(r).replace(/^\"|\"$/g,\"\").replace(/'/g,\"\\\\'\").replace(/\\\\\"/g,'\"')+\"'\";return e.stylize(t,\"string\")}return isNumber(r)?e.stylize(\"\"+r,\"number\"):isBoolean(r)?e.stylize(\"\"+r,\"boolean\"):isNull(r)?e.stylize(\"null\",\"null\"):void 0}function formatError(e){return\"[\"+Error.prototype.toString.call(e)+\"]\"}function formatArray(e,r,t,n,i){for(var o=[],s=0,u=r.length;s-1&&(u=o?u.split(\"\\n\").map(function(e){return\" \"+e}).join(\"\\n\").substr(2):\"\\n\"+u.split(\"\\n\").map(function(e){return\" \"+e}).join(\"\\n\"))):u=e.stylize(\"[Circular]\",\"special\")),isUndefined(s)){if(o&&i.match(/^\\d+$/))return u;s=JSON.stringify(\"\"+i),s.match(/^\"([a-zA-Z_][a-zA-Z_0-9]*)\"$/)?(s=s.substr(1,s.length-2),s=e.stylize(s,\"name\")):(s=s.replace(/'/g,\"\\\\'\").replace(/\\\\\"/g,'\"').replace(/(^\"|\"$)/g,\"'\"),s=e.stylize(s,\"string\"))}return s+\": \"+u}function reduceToSingleString(e,r,t){var n=0,i=e.reduce(function(e,r){return n++,r.indexOf(\"\\n\")>=0&&n++,e+r.replace(/\\u001b\\[\\d\\d?m/g,\"\").length+1},0);return i>60?t[0]+(\"\"===r?\"\":r+\"\\n \")+\" \"+e.join(\",\\n \")+\" \"+t[1]:t[0]+r+\" \"+e.join(\", \")+\" \"+t[1]}function isArray(e){return Array.isArray(e)}function isBoolean(e){return\"boolean\"==typeof e}function isNull(e){return null===e}function isNullOrUndefined(e){return null==e}function isNumber(e){return\"number\"==typeof e}function isString(e){return\"string\"==typeof e}function isSymbol(e){return\"symbol\"==typeof e}function isUndefined(e){return void 0===e}function isRegExp(e){return isObject(e)&&\"[object RegExp]\"===objectToString(e)}function isObject(e){return\"object\"==typeof e&&null!==e}function isDate(e){return isObject(e)&&\"[object Date]\"===objectToString(e)}function isError(e){return isObject(e)&&(\"[object Error]\"===objectToString(e)||e instanceof Error)}function isFunction(e){return\"function\"==typeof e}function isPrimitive(e){return null===e||\"boolean\"==typeof e||\"number\"==typeof e||\"string\"==typeof e||\"symbol\"==typeof e||\"undefined\"==typeof e}function objectToString(e){return Object.prototype.toString.call(e)}function pad(e){return e<10?\"0\"+e.toString(10):e.toString(10)}function timestamp(){var e=new Date,r=[pad(e.getHours()),pad(e.getMinutes()),pad(e.getSeconds())].join(\":\");return[e.getDate(),months[e.getMonth()],r].join(\" \")}function hasOwnProperty(e,r){return Object.prototype.hasOwnProperty.call(e,r)}var formatRegExp=/%[sdj%]/g;exports.format=function(e){if(!isString(e)){for(var r=[],t=0;t=i)return e;switch(e){case\"%s\":return String(n[t++]);case\"%d\":return Number(n[t++]);case\"%j\":try{return JSON.stringify(n[t++])}catch(e){return\"[Circular]\"}default:return e}}),s=n[t];t>3}if(a--,1===i||2===i)o+=e.readSVarint(),n+=e.readSVarint(),1===i&&(t&&s.push(t),t=[]),t.push(new Point(o,n));else{if(7!==i)throw new Error(\"unknown command \"+i);t&&t.push(t[0].clone())}}return t&&s.push(t),s},VectorTileFeature.prototype.bbox=function(){var e=this._pbf;e.pos=this._geometry;for(var t=e.readVarint()+e.pos,r=1,i=0,a=0,o=0,n=1/0,s=-(1/0),p=1/0,h=-(1/0);e.pos>3}if(i--,1===r||2===r)a+=e.readSVarint(),o+=e.readSVarint(),as&&(s=a),oh&&(h=o);else if(7!==r)throw new Error(\"unknown command \"+r)}return[n,p,s,h]},VectorTileFeature.prototype.toGeoJSON=function(e,t,r){function i(e){for(var t=0;t>3;t=1===a?e.readString():2===a?e.readFloat():3===a?e.readDouble():4===a?e.readVarint64():5===a?e.readVarint():6===a?e.readSVarint():7===a?e.readBoolean():null}return t}var VectorTileFeature=_dereq_(\"./vectortilefeature.js\");module.exports=VectorTileLayer,VectorTileLayer.prototype.feature=function(e){if(e<0||e>=this._features.length)throw new Error(\"feature index out of bounds\");this._pbf.pos=this._features[e];var t=this._pbf.readVarint()+this._pbf.pos;return new VectorTileFeature(this._pbf,t,this.extent,this._keys,this._values)};\n},{\"./vectortilefeature.js\":36}],38:[function(_dereq_,module,exports){\nfunction fromVectorTileJs(e){var r=[];for(var o in e.layers)r.push(prepareLayer(e.layers[o]));var t=new Pbf;return vtpb.tile.write({layers:r},t),t.finish()}function fromGeojsonVt(e){var r={};for(var o in e)r[o]=new GeoJSONWrapper(e[o].features),r[o].name=o;return fromVectorTileJs({layers:r})}function prepareLayer(e){for(var r={name:e.name||\"\",version:e.version||1,extent:e.extent||4096,keys:[],values:[],features:[]},o={},t={},n=0;n>31}function encodeGeometry(e){for(var r=[],o=0,t=0,n=e.length,a=0;aArrayGroup.MAX_VERTEX_ARRAY_LENGTH)&&(e=new Segment(this.layoutVertexArray.length,this.elementArray.length),this.segments.push(e)),e},ArrayGroup.prototype.prepareSegment2=function(r){var e=this.segments2[this.segments2.length-1];return(!e||e.vertexLength+r>ArrayGroup.MAX_VERTEX_ARRAY_LENGTH)&&(e=new Segment(this.layoutVertexArray.length,this.elementArray2.length),this.segments2.push(e)),e},ArrayGroup.prototype.populatePaintArrays=function(r){var e=this;for(var t in e.layerData){var a=e.layerData[t];0!==a.paintVertexArray.bytesPerElement&&a.programConfiguration.populatePaintArray(a.layer,a.paintVertexArray,a.paintPropertyStatistics,e.layoutVertexArray.length,e.globalProperties,r)}},ArrayGroup.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},ArrayGroup.prototype.serialize=function(r){return{layoutVertexArray:this.layoutVertexArray.serialize(r),elementArray:this.elementArray&&this.elementArray.serialize(r),elementArray2:this.elementArray2&&this.elementArray2.serialize(r),paintVertexArrays:serializePaintVertexArrays(this.layerData,r),segments:this.segments,segments2:this.segments2}},ArrayGroup.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,module.exports=ArrayGroup;\n},{\"./program_configuration\":58,\"./vertex_array_type\":60}],45:[function(_dereq_,module,exports){\n\"use strict\";var ArrayGroup=_dereq_(\"./array_group\"),BufferGroup=_dereq_(\"./buffer_group\"),util=_dereq_(\"../util/util\"),Bucket=function(r,t){this.zoom=r.zoom,this.overscaling=r.overscaling,this.layers=r.layers,this.index=r.index,r.arrays?this.buffers=new BufferGroup(t,r.layers,r.zoom,r.arrays):this.arrays=new ArrayGroup(t,r.layers,r.zoom)};Bucket.prototype.populate=function(r,t){for(var e=this,i=0,a=r;i=EXTENT||y<0||y>=EXTENT)){var n=r.prepareSegment(4),u=n.vertexLength;addCircleVertex(r.layoutVertexArray,o,y,-1,-1),addCircleVertex(r.layoutVertexArray,o,y,1,-1),addCircleVertex(r.layoutVertexArray,o,y,1,1),addCircleVertex(r.layoutVertexArray,o,y,-1,1),r.elementArray.emplaceBack(u,u+1,u+2),r.elementArray.emplaceBack(u,u+3,u+2),n.vertexLength+=4,n.primitiveLength+=2}}r.populatePaintArrays(e.properties)},r}(Bucket);CircleBucket.programInterface=circleInterface,module.exports=CircleBucket;\n},{\"../bucket\":45,\"../element_array_type\":53,\"../extent\":54,\"../load_geometry\":56}],47:[function(_dereq_,module,exports){\n\"use strict\";var Bucket=_dereq_(\"../bucket\"),createElementArrayType=_dereq_(\"../element_array_type\"),loadGeometry=_dereq_(\"../load_geometry\"),earcut=_dereq_(\"earcut\"),classifyRings=_dereq_(\"../../util/classify_rings\"),EARCUT_MAX_RINGS=500,fillInterface={layoutAttributes:[{name:\"a_pos\",components:2,type:\"Int16\"}],elementArrayType:createElementArrayType(3),elementArrayType2:createElementArrayType(2),paintAttributes:[{property:\"fill-color\",type:\"Uint8\"},{property:\"fill-outline-color\",type:\"Uint8\"},{property:\"fill-opacity\",type:\"Uint8\",multiplier:255}]},FillBucket=function(e){function t(t){e.call(this,t,fillInterface)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.addFeature=function(e){for(var t=this.arrays,r=0,a=classifyRings(loadGeometry(e),EARCUT_MAX_RINGS);rEXTENT)||e.y===t.y&&(e.y<0||e.y>EXTENT)}var Bucket=_dereq_(\"../bucket\"),createElementArrayType=_dereq_(\"../element_array_type\"),loadGeometry=_dereq_(\"../load_geometry\"),EXTENT=_dereq_(\"../extent\"),earcut=_dereq_(\"earcut\"),classifyRings=_dereq_(\"../../util/classify_rings\"),EARCUT_MAX_RINGS=500,fillExtrusionInterface={layoutAttributes:[{name:\"a_pos\",components:2,type:\"Int16\"},{name:\"a_normal\",components:3,type:\"Int16\"},{name:\"a_edgedistance\",components:1,type:\"Int16\"}],elementArrayType:createElementArrayType(3),paintAttributes:[{property:\"fill-extrusion-base\",type:\"Uint16\"},{property:\"fill-extrusion-height\",type:\"Uint16\"},{property:\"fill-extrusion-color\",type:\"Uint8\"}]},FACTOR=Math.pow(2,13),FillExtrusionBucket=function(e){function t(t){e.call(this,t,fillExtrusionInterface)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.addFeature=function(e){for(var t=this.arrays,r=0,a=classifyRings(loadGeometry(e),EARCUT_MAX_RINGS);r=1){var A=d[h-1];if(!isBoundaryEdge(g,A)){var E=g.sub(A)._perp()._unit();addVertex(t.layoutVertexArray,g.x,g.y,E.x,E.y,0,0,m),addVertex(t.layoutVertexArray,g.x,g.y,E.x,E.y,0,1,m),m+=A.dist(g),addVertex(t.layoutVertexArray,A.x,A.y,E.x,E.y,0,0,m),addVertex(t.layoutVertexArray,A.x,A.y,E.x,E.y,0,1,m);var v=u.vertexLength;t.elementArray.emplaceBack(v,v+1,v+2),t.elementArray.emplaceBack(v+1,v+2,v+3),u.vertexLength+=4,u.primitiveLength+=2}}p.push(g.x),p.push(g.y)}}}for(var _=earcut(p,s),T=0;T<_.length;T+=3)t.elementArray.emplaceBack(c[_[T]],c[_[T+1]],c[_[T+2]]);u.primitiveLength+=_.length/3}t.populatePaintArrays(e.properties)},t}(Bucket);FillExtrusionBucket.programInterface=fillExtrusionInterface,module.exports=FillExtrusionBucket;\n},{\"../../util/classify_rings\":198,\"../bucket\":45,\"../element_array_type\":53,\"../extent\":54,\"../load_geometry\":56,\"earcut\":5}],49:[function(_dereq_,module,exports){\n\"use strict\";function addLineVertex(e,t,r,i,a,n,d){e.emplaceBack(t.x<<1|i,t.y<<1|a,Math.round(EXTRUDE_SCALE*r.x)+128,Math.round(EXTRUDE_SCALE*r.y)+128,(0===n?0:n<0?-1:1)+1|(d*LINE_DISTANCE_SCALE&63)<<2,d*LINE_DISTANCE_SCALE>>6)}var Bucket=_dereq_(\"../bucket\"),createElementArrayType=_dereq_(\"../element_array_type\"),loadGeometry=_dereq_(\"../load_geometry\"),EXTENT=_dereq_(\"../extent\"),VectorTileFeature=_dereq_(\"vector-tile\").VectorTileFeature,EXTRUDE_SCALE=63,COS_HALF_SHARP_CORNER=Math.cos(37.5*(Math.PI/180)),SHARP_CORNER_OFFSET=15,LINE_DISTANCE_BUFFER_BITS=15,LINE_DISTANCE_SCALE=.5,MAX_LINE_DISTANCE=Math.pow(2,LINE_DISTANCE_BUFFER_BITS-1)/LINE_DISTANCE_SCALE,lineInterface={layoutAttributes:[{name:\"a_pos\",components:2,type:\"Int16\"},{name:\"a_data\",components:4,type:\"Uint8\"}],paintAttributes:[{property:\"line-color\",type:\"Uint8\"},{property:\"line-blur\",multiplier:10,type:\"Uint8\"},{property:\"line-opacity\",multiplier:10,type:\"Uint8\"},{property:\"line-gap-width\",multiplier:10,type:\"Uint8\",name:\"a_gapwidth\"},{property:\"line-offset\",multiplier:1,type:\"Int8\"}],elementArrayType:createElementArrayType()},LineBucket=function(e){function t(t){e.call(this,t,lineInterface)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.addFeature=function(e){for(var t=this,r=this.layers[0].layout,i=r[\"line-join\"],a=r[\"line-cap\"],n=r[\"line-miter-limit\"],d=r[\"line-round-limit\"],s=0,u=loadGeometry(e,LINE_DISTANCE_BUFFER_BITS);s=2&&e[l-1].equals(e[l-2]);)l--;for(var o=0;oo){var R=y.dist(m);if(R>2*p){var g=y.sub(y.sub(m)._mult(p/R)._round());d.distance+=g.dist(m),d.addCurrentVertex(g,d.distance,x.mult(1),0,0,!1,h),m=g}}var F=m&&E,B=F?r:E?A:L;if(F&&\"round\"===B&&(Na&&(B=\"bevel\"),\"bevel\"===B&&(N>2&&(B=\"flipbevel\"),N100)I=C.clone().mult(-1);else{var k=x.x*C.y-x.y*C.x>0?-1:1,D=N*x.add(C).mag()/x.sub(C).mag();I._perp()._mult(D*k)}d.addCurrentVertex(y,d.distance,I,0,0,!1,h),d.addCurrentVertex(y,d.distance,I.mult(-1),0,0,!1,h)}else if(\"bevel\"===B||\"fakeround\"===B){var P=x.x*C.y-x.y*C.x>0,U=-Math.sqrt(N*N-1);if(P?(f=0,v=U):(v=0,f=U),S||d.addCurrentVertex(y,d.distance,x,v,f,!1,h),\"fakeround\"===B){for(var q=Math.floor(8*(.5-(T-.5))),M=void 0,O=0;O=0;X--)M=x.mult((X+1)/(q+1))._add(C)._unit(),d.addPieSliceVertex(y,d.distance,M,P,h)}E&&d.addCurrentVertex(y,d.distance,C,-v,-f,!1,h)}else\"butt\"===B?(S||d.addCurrentVertex(y,d.distance,x,0,0,!1,h),E&&d.addCurrentVertex(y,d.distance,C,0,0,!1,h)):\"square\"===B?(S||(d.addCurrentVertex(y,d.distance,x,1,1,!1,h),d.e1=d.e2=-1),E&&d.addCurrentVertex(y,d.distance,C,-1,-1,!1,h)):\"round\"===B&&(S||(d.addCurrentVertex(y,d.distance,x,0,0,!1,h),d.addCurrentVertex(y,d.distance,x,1,1,!0,h),d.e1=d.e2=-1),E&&(d.addCurrentVertex(y,d.distance,C,-1,-1,!0,h),d.addCurrentVertex(y,d.distance,C,0,0,!1,h)));if(b&&V2*p){var w=y.add(E.sub(y)._mult(p/H)._round());d.distance+=w.dist(y),d.addCurrentVertex(w,d.distance,C.mult(1),0,0,!1,h),y=w}}S=!1}_.populatePaintArrays(s)}},t.prototype.addCurrentVertex=function(e,t,r,i,a,n,d){var s,u=n?1:0,l=this.arrays,o=l.layoutVertexArray,p=l.elementArray;s=r.clone(),i&&s._sub(r.perp()._mult(i)),addLineVertex(o,e,s,u,0,i,t),this.e3=d.vertexLength++,this.e1>=0&&this.e2>=0&&(p.emplaceBack(this.e1,this.e2,this.e3),d.primitiveLength++),this.e1=this.e2,this.e2=this.e3,s=r.mult(-1),a&&s._sub(r.perp()._mult(a)),addLineVertex(o,e,s,u,1,-a,t),this.e3=d.vertexLength++,this.e1>=0&&this.e2>=0&&(p.emplaceBack(this.e1,this.e2,this.e3),d.primitiveLength++),this.e1=this.e2,this.e2=this.e3,t>MAX_LINE_DISTANCE/2&&(this.distance=0,this.addCurrentVertex(e,this.distance,r,i,a,n,d))},t.prototype.addPieSliceVertex=function(e,t,r,i,a){var n=i?1:0;r=r.mult(i?-1:1);var d=this.arrays,s=d.layoutVertexArray,u=d.elementArray;addLineVertex(s,e,r,0,n,0,t),this.e3=a.vertexLength++,this.e1>=0&&this.e2>=0&&(u.emplaceBack(this.e1,this.e2,this.e3),a.primitiveLength++),i?this.e2=this.e3:this.e1=this.e3},t}(Bucket);LineBucket.programInterface=lineInterface,module.exports=LineBucket;\n},{\"../bucket\":45,\"../element_array_type\":53,\"../extent\":54,\"../load_geometry\":56,\"vector-tile\":34}],50:[function(_dereq_,module,exports){\n\"use strict\";function addVertex(e,t,o,a,i,r,n,s,l,c,u,y){e.emplaceBack(t,o,Math.round(64*a),Math.round(64*i),r/4,n/4,packUint8ToFloat(10*(u||0),y%256),packUint8ToFloat(10*(l||0),10*Math.min(c||25,25)),s?s[0]:void 0,s?s[1]:void 0,s?s[2]:void 0)}function addCollisionBoxVertex(e,t,o,a,i){return e.emplaceBack(t.x,t.y,Math.round(o.x),Math.round(o.y),10*a,10*i)}function getSizeData(e,t,o){var a={isFeatureConstant:t.isLayoutValueFeatureConstant(o),isZoomConstant:t.isLayoutValueZoomConstant(o)};if(a.isFeatureConstant&&(a.layoutSize=t.getLayoutValue(o,{zoom:e+1})),!a.isZoomConstant){for(var i=t.getLayoutValueStopZoomLevels(o),r=0;rEXTENT||r.y<0||r.y>EXTENT);if(!h||n){var s=n||v;a.addSymbolInstance(r,i,t,o,a.layers[0],s,a.collisionBoxArray,e.index,e.sourceLayerIndex,a.index,u,x,f,p,d,b,{zoom:a.zoom},e.properties)}};if(\"line\"===S)for(var B=0,M=clipLine(e.geometry,0,0,EXTENT,EXTENT);B=0;r--)if(o.dist(i[r])7*Math.PI/4)continue}else if(i&&r&&d<=3*Math.PI/4||d>5*Math.PI/4)continue}else if(i&&r&&(d<=Math.PI/2||d>3*Math.PI/2))continue;var g=x.tl,f=x.tr,b=x.bl,v=x.br,S=x.tex,I=x.anchorPoint,z=Math.max(y+Math.log(x.minScale)/Math.LN2,p),B=Math.min(y+Math.log(x.maxScale)/Math.LN2,25);if(!(B<=z)){z===p&&(z=0);var M=Math.round(x.glyphAngle/(2*Math.PI)*256),L=e.prepareSegment(4),A=L.vertexLength;addVertex(u,I.x,I.y,g.x,g.y,S.x,S.y,a,z,B,p,M),addVertex(u,I.x,I.y,f.x,f.y,S.x+S.w,S.y,a,z,B,p,M),addVertex(u,I.x,I.y,b.x,b.y,S.x,S.y+S.h,a,z,B,p,M),addVertex(u,I.x,I.y,v.x,v.y,S.x+S.w,S.y+S.h,a,z,B,p,M),c.emplaceBack(A,A+1,A+2),c.emplaceBack(A+1,A+2,A+3),L.vertexLength+=4,L.primitiveLength+=2}}e.populatePaintArrays(s)},SymbolBucket.prototype.addToDebugBuffers=function(e){for(var t=this,o=this.arrays.collisionBox,a=o.layoutVertexArray,i=o.elementArray,r=-e.angle,n=e.yStretch,s=0,l=t.symbolInstances;sSymbolBucket.MAX_INSTANCES&&util.warnOnce(\"Too many symbols being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907\"),A>SymbolBucket.MAX_INSTANCES&&util.warnOnce(\"Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907\");var T=(o[WritingMode.vertical]?WritingMode.vertical:0)|(o[WritingMode.horizontal]?WritingMode.horizontal:0);this.symbolInstances.push({textBoxStartIndex:B,textBoxEndIndex:M,iconBoxStartIndex:L,iconBoxEndIndex:A,glyphQuads:S,iconQuads:v,anchor:e,featureIndex:s,featureProperties:g,writingModes:T})},SymbolBucket.programInterfaces=symbolInterfaces,SymbolBucket.MAX_INSTANCES=65535,module.exports=SymbolBucket;\n},{\"../../shaders/encode_attribute\":81,\"../../symbol/anchor\":160,\"../../symbol/clip_line\":162,\"../../symbol/collision_feature\":164,\"../../symbol/get_anchors\":166,\"../../symbol/mergelines\":169,\"../../symbol/quads\":170,\"../../symbol/shaping\":171,\"../../symbol/transform_text\":173,\"../../util/classify_rings\":198,\"../../util/find_pole_of_inaccessibility\":204,\"../../util/script_detection\":211,\"../../util/token\":214,\"../../util/util\":215,\"../array_group\":44,\"../buffer_group\":52,\"../element_array_type\":53,\"../extent\":54,\"../load_geometry\":56,\"point-geometry\":26,\"vector-tile\":34}],51:[function(_dereq_,module,exports){\n\"use strict\";var AttributeType={Int8:\"BYTE\",Uint8:\"UNSIGNED_BYTE\",Int16:\"SHORT\",Uint16:\"UNSIGNED_SHORT\"},Buffer=function(t,e,r){this.arrayBuffer=t.arrayBuffer,this.length=t.length,this.attributes=e.members,this.itemSize=e.bytesPerElement,this.type=r,this.arrayType=e};Buffer.fromStructArray=function(t,e){return new Buffer(t.serialize(),t.constructor.serialize(),e)},Buffer.prototype.bind=function(t){var e=t[this.type];this.buffer?t.bindBuffer(e,this.buffer):(this.gl=t,this.buffer=t.createBuffer(),t.bindBuffer(e,this.buffer),t.bufferData(e,this.arrayBuffer,t.STATIC_DRAW),this.arrayBuffer=null)},Buffer.prototype.enableAttributes=function(t,e){for(var r=this,f=0;f0?t+2*e:e}function translate(e,t,r,i,a){if(!t[0]&&!t[1])return e;t=Point.convert(t),\"viewport\"===r&&t._rotate(-i);for(var n=[],s=0;sr.max||d.yr.max)&&util.warnOnce(\"Geometry exceeds allowed extent, reduce your vector tile buffer size\")}return u};\n},{\"../util/util\":215,\"./extent\":54}],57:[function(_dereq_,module,exports){\n\"use strict\";var createStructArrayType=_dereq_(\"../util/struct_array\"),PosArray=createStructArrayType({members:[{name:\"a_pos\",type:\"Int16\",components:2}]});module.exports=PosArray;\n},{\"../util/struct_array\":213}],58:[function(_dereq_,module,exports){\n\"use strict\";function getPaintAttributeValue(t,r,e,i){if(!t.zoomStops)return r.getPaintValue(t.property,e,i);var a=t.zoomStops.map(function(a){return r.getPaintValue(t.property,util.extend({},e,{zoom:a}),i)});return 1===a.length?a[0]:a}function normalizePaintAttribute(t,r){var e=t.name;e||(e=t.property.replace(r.type+\"-\",\"\").replace(/-/g,\"_\"));var i=\"color\"===r._paintSpecifications[t.property].type;return util.extend({name:\"a_\"+e,components:i?4:1,multiplier:i?255:1,dimensions:i?4:1},t)}var createVertexArrayType=_dereq_(\"./vertex_array_type\"),util=_dereq_(\"../util/util\"),ProgramConfiguration=function(){this.attributes=[],this.uniforms=[],this.interpolationUniforms=[],this.pragmas={vertex:{},fragment:{}},this.cacheKey=\"\"};ProgramConfiguration.createDynamic=function(t,r,e){for(var i=new ProgramConfiguration,a=0,n=t;a4)for(;p90||this.lat<-90)throw new Error(\"Invalid LngLat latitude value: must be between -90 and 90\")};LngLat.prototype.wrap=function(){return new LngLat(wrap(this.lng,-180,180),this.lat)},LngLat.prototype.toArray=function(){return[this.lng,this.lat]},LngLat.prototype.toString=function(){return\"LngLat(\"+this.lng+\", \"+this.lat+\")\"},LngLat.convert=function(t){if(t instanceof LngLat)return t;if(Array.isArray(t)&&2===t.length)return new LngLat(Number(t[0]),Number(t[1]));if(!Array.isArray(t)&&\"object\"==typeof t&&null!==t)return new LngLat(Number(t.lng),Number(t.lat));throw new Error(\"`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, or an array of [, ]\")},module.exports=LngLat;\n},{\"../util/util\":215}],63:[function(_dereq_,module,exports){\n\"use strict\";var LngLat=_dereq_(\"./lng_lat\"),LngLatBounds=function(t,n){t&&(n?this.setSouthWest(t).setNorthEast(n):4===t.length?this.setSouthWest([t[0],t[1]]).setNorthEast([t[2],t[3]]):this.setSouthWest(t[0]).setNorthEast(t[1]))};LngLatBounds.prototype.setNorthEast=function(t){return this._ne=LngLat.convert(t),this},LngLatBounds.prototype.setSouthWest=function(t){return this._sw=LngLat.convert(t),this},LngLatBounds.prototype.extend=function(t){var n,e,s=this._sw,o=this._ne;if(t instanceof LngLat)n=t,e=t;else{if(!(t instanceof LngLatBounds))return Array.isArray(t)?t.every(Array.isArray)?this.extend(LngLatBounds.convert(t)):this.extend(LngLat.convert(t)):this;if(n=t._sw,e=t._ne,!n||!e)return this}return s||o?(s.lng=Math.min(n.lng,s.lng),s.lat=Math.min(n.lat,s.lat),o.lng=Math.max(e.lng,o.lng),o.lat=Math.max(e.lat,o.lat)):(this._sw=new LngLat(n.lng,n.lat),this._ne=new LngLat(e.lng,e.lat)),this},LngLatBounds.prototype.getCenter=function(){return new LngLat((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},LngLatBounds.prototype.getSouthWest=function(){return this._sw},LngLatBounds.prototype.getNorthEast=function(){return this._ne},LngLatBounds.prototype.getNorthWest=function(){return new LngLat(this.getWest(),this.getNorth())},LngLatBounds.prototype.getSouthEast=function(){return new LngLat(this.getEast(),this.getSouth())},LngLatBounds.prototype.getWest=function(){return this._sw.lng},LngLatBounds.prototype.getSouth=function(){return this._sw.lat},LngLatBounds.prototype.getEast=function(){return this._ne.lng},LngLatBounds.prototype.getNorth=function(){return this._ne.lat},LngLatBounds.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},LngLatBounds.prototype.toString=function(){return\"LngLatBounds(\"+this._sw.toString()+\", \"+this._ne.toString()+\")\"},LngLatBounds.convert=function(t){return!t||t instanceof LngLatBounds?t:new LngLatBounds(t)},module.exports=LngLatBounds;\n},{\"./lng_lat\":62}],64:[function(_dereq_,module,exports){\n\"use strict\";var LngLat=_dereq_(\"./lng_lat\"),Point=_dereq_(\"point-geometry\"),Coordinate=_dereq_(\"./coordinate\"),util=_dereq_(\"../util/util\"),interp=_dereq_(\"../style-spec/util/interpolate\"),TileCoord=_dereq_(\"../source/tile_coord\"),EXTENT=_dereq_(\"../data/extent\"),glmatrix=_dereq_(\"@mapbox/gl-matrix\"),vec4=glmatrix.vec4,mat4=glmatrix.mat4,mat2=glmatrix.mat2,Transform=function(t,i,o){this.tileSize=512,this._renderWorldCopies=void 0===o||o,this._minZoom=t||0,this._maxZoom=i||22,this.latRange=[-85.05113,85.05113],this.width=0,this.height=0,this._center=new LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0},prototypeAccessors={minZoom:{},maxZoom:{},renderWorldCopies:{},worldSize:{},centerPoint:{},size:{},bearing:{},pitch:{},fov:{},zoom:{},center:{},unmodified:{},x:{},y:{},point:{}};prototypeAccessors.minZoom.get=function(){return this._minZoom},prototypeAccessors.minZoom.set=function(t){this._minZoom!==t&&(this._minZoom=t,this.zoom=Math.max(this.zoom,t))},prototypeAccessors.maxZoom.get=function(){return this._maxZoom},prototypeAccessors.maxZoom.set=function(t){this._maxZoom!==t&&(this._maxZoom=t,this.zoom=Math.min(this.zoom,t))},prototypeAccessors.renderWorldCopies.get=function(){return this._renderWorldCopies},prototypeAccessors.worldSize.get=function(){return this.tileSize*this.scale},prototypeAccessors.centerPoint.get=function(){return this.size._div(2)},prototypeAccessors.size.get=function(){return new Point(this.width,this.height)},prototypeAccessors.bearing.get=function(){return-this.angle/Math.PI*180},prototypeAccessors.bearing.set=function(t){var i=-util.wrap(t,-180,180)*Math.PI/180;this.angle!==i&&(this._unmodified=!1,this.angle=i,this._calcMatrices(),this.rotationMatrix=mat2.create(),mat2.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},prototypeAccessors.pitch.get=function(){return this._pitch/Math.PI*180},prototypeAccessors.pitch.set=function(t){var i=util.clamp(t,0,60)/180*Math.PI;this._pitch!==i&&(this._unmodified=!1,this._pitch=i,this._calcMatrices())},prototypeAccessors.fov.get=function(){return this._fov/Math.PI*180},prototypeAccessors.fov.set=function(t){t=Math.max(.01,Math.min(60,t)),this._fov!==t&&(this._unmodified=!1,this._fov=t/180*Math.PI,this._calcMatrices())},prototypeAccessors.zoom.get=function(){return this._zoom},prototypeAccessors.zoom.set=function(t){var i=Math.min(Math.max(t,this.minZoom),this.maxZoom);this._zoom!==i&&(this._unmodified=!1,this._zoom=i,this.scale=this.zoomScale(i),this.tileZoom=Math.floor(i),this.zoomFraction=i-this.tileZoom,this._constrain(),this._calcMatrices())},prototypeAccessors.center.get=function(){return this._center},prototypeAccessors.center.set=function(t){t.lat===this._center.lat&&t.lng===this._center.lng||(this._unmodified=!1,this._center=t,this._constrain(),this._calcMatrices())},Transform.prototype.coveringZoomLevel=function(t){return(t.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/t.tileSize))},Transform.prototype.getVisibleWrappedCoordinates=function(t){for(var i=this.pointCoordinate(new Point(0,0),0),o=this.pointCoordinate(new Point(this.width,0),0),e=Math.floor(i.column),r=Math.floor(o.column),n=[t],s=e;s<=r;s++)0!==s&&n.push(new TileCoord(t.z,t.x,t.y,s));return n},Transform.prototype.coveringTiles=function(t){var i=this.coveringZoomLevel(t),o=i;if(it.maxzoom&&(i=t.maxzoom);var e=this.pointCoordinate(this.centerPoint,i),r=new Point(e.column-.5,e.row-.5),n=[this.pointCoordinate(new Point(0,0),i),this.pointCoordinate(new Point(this.width,0),i),this.pointCoordinate(new Point(this.width,this.height),i),this.pointCoordinate(new Point(0,this.height),i)];return TileCoord.cover(i,n,t.reparseOverscaled?o:i,this._renderWorldCopies).sort(function(t,i){return r.dist(t)-r.dist(i)})},Transform.prototype.resize=function(t,i){this.width=t,this.height=i,this.pixelsToGLUnits=[2/t,-2/i],this._constrain(),this._calcMatrices()},prototypeAccessors.unmodified.get=function(){return this._unmodified},Transform.prototype.zoomScale=function(t){return Math.pow(2,t)},Transform.prototype.scaleZoom=function(t){return Math.log(t)/Math.LN2},Transform.prototype.project=function(t){return new Point(this.lngX(t.lng),this.latY(t.lat))},Transform.prototype.unproject=function(t){return new LngLat(this.xLng(t.x),this.yLat(t.y))},prototypeAccessors.x.get=function(){return this.lngX(this.center.lng)},prototypeAccessors.y.get=function(){return this.latY(this.center.lat)},prototypeAccessors.point.get=function(){return new Point(this.x,this.y)},Transform.prototype.lngX=function(t){return(180+t)*this.worldSize/360},Transform.prototype.latY=function(t){var i=180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360));return(180-i)*this.worldSize/360},Transform.prototype.xLng=function(t){return 360*t/this.worldSize-180},Transform.prototype.yLat=function(t){var i=180-360*t/this.worldSize;return 360/Math.PI*Math.atan(Math.exp(i*Math.PI/180))-90},Transform.prototype.setLocationAtPoint=function(t,i){var o=this.pointCoordinate(i)._sub(this.pointCoordinate(this.centerPoint));this.center=this.coordinateLocation(this.locationCoordinate(t)._sub(o)),this._renderWorldCopies&&(this.center=this.center.wrap())},Transform.prototype.locationPoint=function(t){return this.coordinatePoint(this.locationCoordinate(t))},Transform.prototype.pointLocation=function(t){return this.coordinateLocation(this.pointCoordinate(t))},Transform.prototype.locationCoordinate=function(t){return new Coordinate(this.lngX(t.lng)/this.tileSize,this.latY(t.lat)/this.tileSize,this.zoom).zoomTo(this.tileZoom)},Transform.prototype.coordinateLocation=function(t){var i=t.zoomTo(this.zoom);return new LngLat(this.xLng(i.column*this.tileSize),this.yLat(i.row*this.tileSize))},Transform.prototype.pointCoordinate=function(t,i){void 0===i&&(i=this.tileZoom);var o=0,e=[t.x,t.y,0,1],r=[t.x,t.y,1,1];vec4.transformMat4(e,e,this.pixelMatrixInverse),vec4.transformMat4(r,r,this.pixelMatrixInverse);var n=e[3],s=r[3],a=e[0]/n,h=r[0]/s,c=e[1]/n,m=r[1]/s,p=e[2]/n,l=r[2]/s,u=p===l?0:(o-p)/(l-p);return new Coordinate(interp(a,h,u)/this.tileSize,interp(c,m,u)/this.tileSize,this.zoom)._zoomTo(i)},Transform.prototype.coordinatePoint=function(t){var i=t.zoomTo(this.zoom),o=[i.column*this.tileSize,i.row*this.tileSize,0,1];return vec4.transformMat4(o,o,this.pixelMatrix),new Point(o[0]/o[3],o[1]/o[3])},Transform.prototype.calculatePosMatrix=function(t,i){var o=t.toCoordinate(i),e=this.worldSize/this.zoomScale(o.zoom),r=mat4.identity(new Float64Array(16));return mat4.translate(r,r,[o.column*e,o.row*e,0]),mat4.scale(r,r,[e/EXTENT,e/EXTENT,1]),mat4.multiply(r,this.projMatrix,r),new Float32Array(r)},Transform.prototype._constrain=function(){if(this.center&&this.width&&this.height&&!this._constraining){this._constraining=!0;var t,i,o,e,r=-90,n=90,s=-180,a=180,h=this.size,c=this._unmodified;if(this.latRange){var m=this.latRange;r=this.latY(m[1]),n=this.latY(m[0]),t=n-rn&&(e=n-f)}if(this.lngRange){var d=this.x,g=h.x/2;d-ga&&(o=a-g)}void 0===o&&void 0===e||(this.center=this.unproject(new Point(void 0!==o?o:this.x,void 0!==e?e:this.y))),this._unmodified=c,this._constraining=!1}},Transform.prototype._calcMatrices=function(){if(this.height){this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height;var t=this._fov/2,i=Math.PI/2+this._pitch,o=Math.sin(t)*this.cameraToCenterDistance/Math.sin(Math.PI-i-t),e=Math.cos(Math.PI/2-this._pitch)*o+this.cameraToCenterDistance,r=1.01*e,n=new Float64Array(16);mat4.perspective(n,this._fov,this.width/this.height,1,r),mat4.scale(n,n,[1,-1,1]),mat4.translate(n,n,[0,0,-this.cameraToCenterDistance]),mat4.rotateX(n,n,this._pitch),mat4.rotateZ(n,n,this.angle),mat4.translate(n,n,[-this.x,-this.y,0]);var s=this.worldSize/(2*Math.PI*6378137*Math.abs(Math.cos(this.center.lat*(Math.PI/180))));if(mat4.scale(n,n,[1,1,s,1]),this.projMatrix=n,n=mat4.create(),mat4.scale(n,n,[this.width/2,-this.height/2,1]),mat4.translate(n,n,[1,-1,0]),this.pixelMatrix=mat4.multiply(new Float64Array(16),n,this.projMatrix),n=mat4.invert(new Float64Array(16),this.pixelMatrix),!n)throw new Error(\"failed to invert matrix\");this.pixelMatrixInverse=n}},Object.defineProperties(Transform.prototype,prototypeAccessors),module.exports=Transform;\n},{\"../data/extent\":54,\"../source/tile_coord\":96,\"../style-spec/util/interpolate\":123,\"../util/util\":215,\"./coordinate\":61,\"./lng_lat\":62,\"@mapbox/gl-matrix\":1,\"point-geometry\":26}],65:[function(_dereq_,module,exports){\n\"use strict\";var browser=_dereq_(\"./util/browser\"),mapboxgl=module.exports={};mapboxgl.version=_dereq_(\"../package.json\").version,mapboxgl.workerCount=Math.max(Math.floor(browser.hardwareConcurrency/2),1),mapboxgl.Map=_dereq_(\"./ui/map\"),mapboxgl.NavigationControl=_dereq_(\"./ui/control/navigation_control\"),mapboxgl.GeolocateControl=_dereq_(\"./ui/control/geolocate_control\"),mapboxgl.AttributionControl=_dereq_(\"./ui/control/attribution_control\"),mapboxgl.ScaleControl=_dereq_(\"./ui/control/scale_control\"),mapboxgl.FullscreenControl=_dereq_(\"./ui/control/fullscreen_control\"),mapboxgl.Popup=_dereq_(\"./ui/popup\"),mapboxgl.Marker=_dereq_(\"./ui/marker\"),mapboxgl.Style=_dereq_(\"./style/style\"),mapboxgl.LngLat=_dereq_(\"./geo/lng_lat\"),mapboxgl.LngLatBounds=_dereq_(\"./geo/lng_lat_bounds\"),mapboxgl.Point=_dereq_(\"point-geometry\"),mapboxgl.Evented=_dereq_(\"./util/evented\"),mapboxgl.supported=_dereq_(\"./util/browser\").supported;var config=_dereq_(\"./util/config\");mapboxgl.config=config;var rtlTextPlugin=_dereq_(\"./source/rtl_text_plugin\");mapboxgl.setRTLTextPlugin=rtlTextPlugin.setRTLTextPlugin,Object.defineProperty(mapboxgl,\"accessToken\",{get:function(){return config.ACCESS_TOKEN},set:function(o){config.ACCESS_TOKEN=o}});\n},{\"../package.json\":43,\"./geo/lng_lat\":62,\"./geo/lng_lat_bounds\":63,\"./source/rtl_text_plugin\":91,\"./style/style\":149,\"./ui/control/attribution_control\":176,\"./ui/control/fullscreen_control\":177,\"./ui/control/geolocate_control\":178,\"./ui/control/navigation_control\":180,\"./ui/control/scale_control\":181,\"./ui/map\":190,\"./ui/marker\":191,\"./ui/popup\":192,\"./util/browser\":195,\"./util/config\":199,\"./util/evented\":203,\"point-geometry\":26}],66:[function(_dereq_,module,exports){\n\"use strict\";function drawBackground(r,t,e){var a=r.gl,i=r.transform,n=i.tileSize,o=e.paint[\"background-color\"],l=e.paint[\"background-pattern\"],u=e.paint[\"background-opacity\"],f=!l&&1===o[3]&&1===u;if(r.isOpaquePass===f){a.disable(a.STENCIL_TEST),r.setDepthSublayer(0);var s;l?(s=r.useProgram(\"fillPattern\",r.basicFillProgramConfiguration),pattern.prepare(l,r,s),r.tileExtentPatternVAO.bind(a,s,r.tileExtentBuffer)):(s=r.useProgram(\"fill\",r.basicFillProgramConfiguration),a.uniform4fv(s.u_color,o),r.tileExtentVAO.bind(a,s,r.tileExtentBuffer)),a.uniform1f(s.u_opacity,u);for(var c=i.coveringTiles({tileSize:n}),g=0,p=c;g\":[24,[4,18,20,9,4,0]],\"?\":[18,[3,16,3,17,4,19,5,20,7,21,11,21,13,20,14,19,15,17,15,15,14,13,13,12,9,10,9,7,-1,-1,9,2,8,1,9,0,10,1,9,2]],\"@\":[27,[18,13,17,15,15,16,12,16,10,15,9,14,8,11,8,8,9,6,11,5,14,5,16,6,17,8,-1,-1,12,16,10,14,9,11,9,8,10,6,11,5,-1,-1,18,16,17,8,17,6,19,5,21,5,23,7,24,10,24,12,23,15,22,17,20,19,18,20,15,21,12,21,9,20,7,19,5,17,4,15,3,12,3,9,4,6,5,4,7,2,9,1,12,0,15,0,18,1,20,2,21,3,-1,-1,19,16,18,8,18,6,19,5]],A:[18,[9,21,1,0,-1,-1,9,21,17,0,-1,-1,4,7,14,7]],B:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,15,17,13,16,12,13,11,-1,-1,4,11,13,11,16,10,17,9,18,7,18,4,17,2,16,1,13,0,4,0]],C:[21,[18,16,17,18,15,20,13,21,9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5]],D:[21,[4,21,4,0,-1,-1,4,21,11,21,14,20,16,18,17,16,18,13,18,8,17,5,16,3,14,1,11,0,4,0]],E:[19,[4,21,4,0,-1,-1,4,21,17,21,-1,-1,4,11,12,11,-1,-1,4,0,17,0]],F:[18,[4,21,4,0,-1,-1,4,21,17,21,-1,-1,4,11,12,11]],G:[21,[18,16,17,18,15,20,13,21,9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,18,8,-1,-1,13,8,18,8]],H:[22,[4,21,4,0,-1,-1,18,21,18,0,-1,-1,4,11,18,11]],I:[8,[4,21,4,0]],J:[16,[12,21,12,5,11,2,10,1,8,0,6,0,4,1,3,2,2,5,2,7]],K:[21,[4,21,4,0,-1,-1,18,21,4,7,-1,-1,9,12,18,0]],L:[17,[4,21,4,0,-1,-1,4,0,16,0]],M:[24,[4,21,4,0,-1,-1,4,21,12,0,-1,-1,20,21,12,0,-1,-1,20,21,20,0]],N:[22,[4,21,4,0,-1,-1,4,21,18,0,-1,-1,18,21,18,0]],O:[22,[9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,19,8,19,13,18,16,17,18,15,20,13,21,9,21]],P:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,14,17,12,16,11,13,10,4,10]],Q:[22,[9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,19,8,19,13,18,16,17,18,15,20,13,21,9,21,-1,-1,12,4,18,-2]],R:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,15,17,13,16,12,13,11,4,11,-1,-1,11,11,18,0]],S:[20,[17,18,15,20,12,21,8,21,5,20,3,18,3,16,4,14,5,13,7,12,13,10,15,9,16,8,17,6,17,3,15,1,12,0,8,0,5,1,3,3]],T:[16,[8,21,8,0,-1,-1,1,21,15,21]],U:[22,[4,21,4,6,5,3,7,1,10,0,12,0,15,1,17,3,18,6,18,21]],V:[18,[1,21,9,0,-1,-1,17,21,9,0]],W:[24,[2,21,7,0,-1,-1,12,21,7,0,-1,-1,12,21,17,0,-1,-1,22,21,17,0]],X:[20,[3,21,17,0,-1,-1,17,21,3,0]],Y:[18,[1,21,9,11,9,0,-1,-1,17,21,9,11]],Z:[20,[17,21,3,0,-1,-1,3,21,17,21,-1,-1,3,0,17,0]],\"[\":[14,[4,25,4,-7,-1,-1,5,25,5,-7,-1,-1,4,25,11,25,-1,-1,4,-7,11,-7]],\"\\\\\":[14,[0,21,14,-3]],\"]\":[14,[9,25,9,-7,-1,-1,10,25,10,-7,-1,-1,3,25,10,25,-1,-1,3,-7,10,-7]],\"^\":[16,[6,15,8,18,10,15,-1,-1,3,12,8,17,13,12,-1,-1,8,17,8,0]],_:[16,[0,-2,16,-2]],\"`\":[10,[6,21,5,20,4,18,4,16,5,15,6,16,5,17]],a:[19,[15,14,15,0,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],b:[19,[4,21,4,0,-1,-1,4,11,6,13,8,14,11,14,13,13,15,11,16,8,16,6,15,3,13,1,11,0,8,0,6,1,4,3]],c:[18,[15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],d:[19,[15,21,15,0,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],e:[18,[3,8,15,8,15,10,14,12,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],f:[12,[10,21,8,21,6,20,5,17,5,0,-1,-1,2,14,9,14]],g:[19,[15,14,15,-2,14,-5,13,-6,11,-7,8,-7,6,-6,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],h:[19,[4,21,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0]],i:[8,[3,21,4,20,5,21,4,22,3,21,-1,-1,4,14,4,0]],j:[10,[5,21,6,20,7,21,6,22,5,21,-1,-1,6,14,6,-3,5,-6,3,-7,1,-7]],k:[17,[4,21,4,0,-1,-1,14,14,4,4,-1,-1,8,8,15,0]],l:[8,[4,21,4,0]],m:[30,[4,14,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0,-1,-1,15,10,18,13,20,14,23,14,25,13,26,10,26,0]],n:[19,[4,14,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0]],o:[19,[8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3,16,6,16,8,15,11,13,13,11,14,8,14]],p:[19,[4,14,4,-7,-1,-1,4,11,6,13,8,14,11,14,13,13,15,11,16,8,16,6,15,3,13,1,11,0,8,0,6,1,4,3]],q:[19,[15,14,15,-7,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],r:[13,[4,14,4,0,-1,-1,4,8,5,11,7,13,9,14,12,14]],s:[17,[14,11,13,13,10,14,7,14,4,13,3,11,4,9,6,8,11,7,13,6,14,4,14,3,13,1,10,0,7,0,4,1,3,3]],t:[12,[5,21,5,4,6,1,8,0,10,0,-1,-1,2,14,9,14]],u:[19,[4,14,4,4,5,1,7,0,10,0,12,1,15,4,-1,-1,15,14,15,0]],v:[16,[2,14,8,0,-1,-1,14,14,8,0]],w:[22,[3,14,7,0,-1,-1,11,14,7,0,-1,-1,11,14,15,0,-1,-1,19,14,15,0]],x:[17,[3,14,14,0,-1,-1,14,14,3,0]],y:[16,[2,14,8,0,-1,-1,14,14,8,0,6,-4,4,-6,2,-7,1,-7]],z:[17,[14,14,3,0,-1,-1,3,14,14,14,-1,-1,3,0,14,0]],\"{\":[14,[9,25,7,24,6,23,5,21,5,19,6,17,7,16,8,14,8,12,6,10,-1,-1,7,24,6,22,6,20,7,18,8,17,9,15,9,13,8,11,4,9,8,7,9,5,9,3,8,1,7,0,6,-2,6,-4,7,-6,-1,-1,6,8,8,6,8,4,7,2,6,1,5,-1,5,-3,6,-5,7,-6,9,-7]],\"|\":[8,[4,25,4,-7]],\"}\":[14,[5,25,7,24,8,23,9,21,9,19,8,17,7,16,6,14,6,12,8,10,-1,-1,7,24,8,22,8,20,7,18,6,17,5,15,5,13,6,11,10,9,6,7,5,5,5,3,6,1,7,0,8,-2,8,-4,7,-6,-1,-1,8,8,6,6,6,4,7,2,8,1,9,-1,9,-3,8,-5,7,-6,5,-7]],\"~\":[24,[3,6,3,8,4,11,6,12,8,12,10,11,14,8,16,7,18,7,20,8,21,10,-1,-1,3,8,4,10,6,11,8,11,10,10,14,7,16,6,18,6,20,7,21,10,21,12]]};\n},{\"../data/buffer\":51,\"../data/extent\":54,\"../data/pos_array\":57,\"../util/browser\":195,\"./vertex_array_object\":80,\"@mapbox/gl-matrix\":1}],70:[function(_dereq_,module,exports){\n\"use strict\";function drawFill(t,e,r,i){var a=t.gl;a.enable(a.STENCIL_TEST);var l=!r.paint[\"fill-pattern\"]&&r.isPaintValueFeatureConstant(\"fill-color\")&&r.isPaintValueFeatureConstant(\"fill-opacity\")&&1===r.paint[\"fill-color\"][3]&&1===r.paint[\"fill-opacity\"];t.isOpaquePass===l&&(t.setDepthSublayer(1),drawFillTiles(t,e,r,i,drawFillTile)),!t.isOpaquePass&&r.paint[\"fill-antialias\"]&&(t.lineWidth(2),t.depthMask(!1),t.setDepthSublayer(r.getPaintProperty(\"fill-outline-color\")?2:0),drawFillTiles(t,e,r,i,drawStrokeTile))}function drawFillTiles(t,e,r,i,a){for(var l=!0,n=0,o=i;n0?1/(1-r):1+r}function saturationFactor(r){return r>0?1-1/(1.001-r):-r}function getFadeValues(r,t,e,a){var i=e.paint[\"raster-fade-duration\"];if(r.sourceCache&&i>0){var o=Date.now(),n=(o-r.timeAdded)/i,u=t?(o-t.timeAdded)/i:-1,s=r.sourceCache.getSource(),c=a.coveringZoomLevel({tileSize:s.tileSize,roundZoom:s.roundZoom}),f=!t||Math.abs(t.coord.z-c)>Math.abs(r.coord.z-c),d=f&&r.refreshedUponExpiration?1:util.clamp(f?n:1-u,0,1);return r.refreshedUponExpiration&&n>=1&&(r.refreshedUponExpiration=!1),t?{opacity:1,mix:1-d}:{opacity:d,mix:0}}return{opacity:1,mix:0}}var util=_dereq_(\"../util/util\");module.exports=drawRaster;\n},{\"../util/util\":215}],74:[function(_dereq_,module,exports){\n\"use strict\";function drawSymbols(t,e,i,o){if(!t.isOpaquePass){var a=!(i.layout[\"text-allow-overlap\"]||i.layout[\"icon-allow-overlap\"]||i.layout[\"text-ignore-placement\"]||i.layout[\"icon-ignore-placement\"]),n=t.gl;a?n.disable(n.STENCIL_TEST):n.enable(n.STENCIL_TEST),t.setDepthSublayer(0),t.depthMask(!1),drawLayerSymbols(t,e,i,o,!1,i.paint[\"icon-translate\"],i.paint[\"icon-translate-anchor\"],i.layout[\"icon-rotation-alignment\"],i.layout[\"icon-rotation-alignment\"]),drawLayerSymbols(t,e,i,o,!0,i.paint[\"text-translate\"],i.paint[\"text-translate-anchor\"],i.layout[\"text-rotation-alignment\"],i.layout[\"text-pitch-alignment\"]),e.map.showCollisionBoxes&&drawCollisionDebug(t,e,i,o)}}function drawLayerSymbols(t,e,i,o,a,n,r,s,l){if(a||!t.style.sprite||t.style.sprite.loaded()){var u=t.gl,m=\"map\"===s,f=\"map\"===l,c=f;c?u.enable(u.DEPTH_TEST):u.disable(u.DEPTH_TEST);for(var p,_,g=0,y=o;gthis.previousZoom;a--)r.changeTimes[a]=e,r.changeOpacities[a]=r.opacities[a];for(a=0;a<256;a++){var s=e-r.changeTimes[a],o=255*(i?s/i:1);a<=t?r.opacities[a]=r.changeOpacities[a]+o:r.opacities[a]=r.changeOpacities[a]-o}this.changed=!0,this.previousZoom=t},FrameHistory.prototype.bind=function(e){this.texture?(e.bindTexture(e.TEXTURE_2D,this.texture),this.changed&&(e.texSubImage2D(e.TEXTURE_2D,0,0,0,256,1,e.ALPHA,e.UNSIGNED_BYTE,this.array),this.changed=!1)):(this.texture=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.texture),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.NEAREST),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.NEAREST),e.texImage2D(e.TEXTURE_2D,0,e.ALPHA,256,1,0,e.ALPHA,e.UNSIGNED_BYTE,this.array))},module.exports=FrameHistory;\n},{}],76:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),LineAtlas=function(t,i){this.width=t,this.height=i,this.nextRow=0,this.bytes=4,this.data=new Uint8Array(this.width*this.height*this.bytes),this.positions={}};LineAtlas.prototype.setSprite=function(t){this.sprite=t},LineAtlas.prototype.getDash=function(t,i){var e=t.join(\",\")+i;return this.positions[e]||(this.positions[e]=this.addDash(t,i)),this.positions[e]},LineAtlas.prototype.addDash=function(t,i){var e=this,h=i?7:0,s=2*h+1,a=128;if(this.nextRow+s>this.height)return util.warnOnce(\"LineAtlas out of space\"),null;for(var r=0,n=0;n0?r.pop():null},Painter.prototype.getViewportTexture=function(e,r){var t=this.reusableTextures.viewport;if(t)return t.width===e&&t.height===r?t:(this.gl.deleteTexture(t),void(this.reusableTextures.viewport=null))},Painter.prototype.lineWidth=function(e){this.gl.lineWidth(util.clamp(e,this.lineWidthRange[0],this.lineWidthRange[1]))},Painter.prototype.showOverdrawInspector=function(e){if(e||this._showOverdrawInspector){this._showOverdrawInspector=e;var r=this.gl;if(e){r.blendFunc(r.CONSTANT_COLOR,r.ONE);var t=8,i=1/t;r.blendColor(i,i,i,0),r.clearColor(0,0,0,1),r.clear(r.COLOR_BUFFER_BIT)}else r.blendFunc(r.ONE,r.ONE_MINUS_SRC_ALPHA)}},Painter.prototype.createProgram=function(e,r){var t=this.gl,i=t.createProgram(),a=shaders[e],s=\"#define MAPBOX_GL_JS\\n#define DEVICE_PIXEL_RATIO \"+browser.devicePixelRatio.toFixed(1)+\"\\n\";this._showOverdrawInspector&&(s+=\"#define OVERDRAW_INSPECTOR;\\n\");var o=r.applyPragmas(s+shaders.prelude.fragmentSource+a.fragmentSource,\"fragment\"),n=r.applyPragmas(s+shaders.prelude.vertexSource+a.vertexSource,\"vertex\"),l=t.createShader(t.FRAGMENT_SHADER);t.shaderSource(l,o),t.compileShader(l),t.attachShader(i,l);var h=t.createShader(t.VERTEX_SHADER);t.shaderSource(h,n),t.compileShader(h),t.attachShader(i,h),t.linkProgram(i);for(var u=t.getProgramParameter(i,t.ACTIVE_ATTRIBUTES),c={program:i,numAttributes:u},p=0;p>16,n>>16),o.uniform2f(i.u_pixel_coord_lower,65535&u,65535&n)};\n},{\"../source/pixels_to_tile_units\":88}],79:[function(_dereq_,module,exports){\n\"use strict\";var path=_dereq_(\"path\");module.exports={prelude:{fragmentSource:\"#ifdef GL_ES\\nprecision mediump float;\\n#else\\n\\n#if !defined(lowp)\\n#define lowp\\n#endif\\n\\n#if !defined(mediump)\\n#define mediump\\n#endif\\n\\n#if !defined(highp)\\n#define highp\\n#endif\\n\\n#endif\\n\",vertexSource:\"#ifdef GL_ES\\nprecision highp float;\\n#else\\n\\n#if !defined(lowp)\\n#define lowp\\n#endif\\n\\n#if !defined(mediump)\\n#define mediump\\n#endif\\n\\n#if !defined(highp)\\n#define highp\\n#endif\\n\\n#endif\\n\\nfloat evaluate_zoom_function_1(const vec4 values, const float t) {\\n if (t < 1.0) {\\n return mix(values[0], values[1], t);\\n } else if (t < 2.0) {\\n return mix(values[1], values[2], t - 1.0);\\n } else {\\n return mix(values[2], values[3], t - 2.0);\\n }\\n}\\nvec4 evaluate_zoom_function_4(const vec4 value0, const vec4 value1, const vec4 value2, const vec4 value3, const float t) {\\n if (t < 1.0) {\\n return mix(value0, value1, t);\\n } else if (t < 2.0) {\\n return mix(value1, value2, t - 1.0);\\n } else {\\n return mix(value2, value3, t - 2.0);\\n }\\n}\\n\\n// Unpack a pair of values that have been packed into a single float.\\n// The packed values are assumed to be 8-bit unsigned integers, and are\\n// packed like so:\\n// packedValue = floor(input[0]) * 256 + input[1],\\nvec2 unpack_float(const float packedValue) {\\n int packedIntValue = int(packedValue);\\n int v0 = packedIntValue / 256;\\n return vec2(v0, packedIntValue - v0 * 256);\\n}\\n\\n\\n// To minimize the number of attributes needed in the mapbox-gl-native shaders,\\n// we encode a 4-component color into a pair of floats (i.e. a vec2) as follows:\\n// [ floor(color.r * 255) * 256 + color.g * 255,\\n// floor(color.b * 255) * 256 + color.g * 255 ]\\nvec4 decode_color(const vec2 encodedColor) {\\n return vec4(\\n unpack_float(encodedColor[0]) / 255.0,\\n unpack_float(encodedColor[1]) / 255.0\\n );\\n}\\n\\n// Unpack a pair of paint values and interpolate between them.\\nfloat unpack_mix_vec2(const vec2 packedValue, const float t) {\\n return mix(packedValue[0], packedValue[1], t);\\n}\\n\\n// Unpack a pair of paint values and interpolate between them.\\nvec4 unpack_mix_vec4(const vec4 packedColors, const float t) {\\n vec4 minColor = decode_color(vec2(packedColors[0], packedColors[1]));\\n vec4 maxColor = decode_color(vec2(packedColors[2], packedColors[3]));\\n return mix(minColor, maxColor, t);\\n}\\n\\n// The offset depends on how many pixels are between the world origin and the edge of the tile:\\n// vec2 offset = mod(pixel_coord, size)\\n//\\n// At high zoom levels there are a ton of pixels between the world origin and the edge of the tile.\\n// The glsl spec only guarantees 16 bits of precision for highp floats. We need more than that.\\n//\\n// The pixel_coord is passed in as two 16 bit values:\\n// pixel_coord_upper = floor(pixel_coord / 2^16)\\n// pixel_coord_lower = mod(pixel_coord, 2^16)\\n//\\n// The offset is calculated in a series of steps that should preserve this precision:\\nvec2 get_pattern_pos(const vec2 pixel_coord_upper, const vec2 pixel_coord_lower,\\n const vec2 pattern_size, const float tile_units_to_pixels, const vec2 pos) {\\n\\n vec2 offset = mod(mod(mod(pixel_coord_upper, pattern_size) * 256.0, pattern_size) * 256.0 + pixel_coord_lower, pattern_size);\\n return (tile_units_to_pixels * pos + offset) / pattern_size;\\n}\\n\"},circle:{fragmentSource:\"#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\\n\\nvarying vec2 v_extrude;\\nvarying lowp float v_antialiasblur;\\n\\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\\n\\n float extrude_length = length(v_extrude);\\n float antialiased_blur = -max(blur, v_antialiasblur);\\n\\n float opacity_t = smoothstep(0.0, antialiased_blur, extrude_length - 1.0);\\n\\n float color_t = stroke_width < 0.01 ? 0.0 : smoothstep(\\n antialiased_blur,\\n 0.0,\\n extrude_length - radius / (radius + stroke_width)\\n );\\n\\n gl_FragColor = opacity_t * mix(color * opacity, stroke_color * stroke_opacity, color_t);\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform bool u_scale_with_map;\\nuniform vec2 u_extrude_scale;\\n\\nattribute vec2 a_pos;\\n\\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\\n\\nvarying vec2 v_extrude;\\nvarying lowp float v_antialiasblur;\\n\\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\\n\\n // unencode the extrusion vector that we snuck into the a_pos vector\\n v_extrude = vec2(mod(a_pos, 2.0) * 2.0 - 1.0);\\n\\n vec2 extrude = v_extrude * (radius + stroke_width) * u_extrude_scale;\\n // multiply a_pos by 0.5, since we had it * 2 in order to sneak\\n // in extrusion data\\n gl_Position = u_matrix * vec4(floor(a_pos * 0.5), 0, 1);\\n\\n if (u_scale_with_map) {\\n gl_Position.xy += extrude;\\n } else {\\n gl_Position.xy += extrude * gl_Position.w;\\n }\\n\\n // This is a minimum blur distance that serves as a faux-antialiasing for\\n // the circle. since blur is a ratio of the circle's size and the intent is\\n // to keep the blur at roughly 1px, the two are inversely related.\\n v_antialiasblur = 1.0 / DEVICE_PIXEL_RATIO / (radius + stroke_width);\\n}\\n\"},collisionBox:{fragmentSource:\"uniform float u_zoom;\\nuniform float u_maxzoom;\\n\\nvarying float v_max_zoom;\\nvarying float v_placement_zoom;\\n\\nvoid main() {\\n\\n float alpha = 0.5;\\n\\n gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0) * alpha;\\n\\n if (v_placement_zoom > u_zoom) {\\n gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0) * alpha;\\n }\\n\\n if (u_zoom >= v_max_zoom) {\\n gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0) * alpha * 0.25;\\n }\\n\\n if (v_placement_zoom >= u_maxzoom) {\\n gl_FragColor = vec4(0.0, 0.0, 1.0, 1.0) * alpha * 0.2;\\n }\\n}\\n\",vertexSource:\"attribute vec2 a_pos;\\nattribute vec2 a_extrude;\\nattribute vec2 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform float u_scale;\\n\\nvarying float v_max_zoom;\\nvarying float v_placement_zoom;\\n\\nvoid main() {\\n gl_Position = u_matrix * vec4(a_pos + a_extrude / u_scale, 0.0, 1.0);\\n\\n v_max_zoom = a_data.x;\\n v_placement_zoom = a_data.y;\\n}\\n\"},debug:{fragmentSource:\"uniform highp vec4 u_color;\\n\\nvoid main() {\\n gl_FragColor = u_color;\\n}\\n\",vertexSource:\"attribute vec2 a_pos;\\n\\nuniform mat4 u_matrix;\\n\\nvoid main() {\\n gl_Position = u_matrix * vec4(a_pos, step(32767.0, a_pos.x), 1);\\n}\\n\"},fill:{fragmentSource:\"#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize highp vec4 color\\n #pragma mapbox: initialize lowp float opacity\\n\\n gl_FragColor = color * opacity;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"attribute vec2 a_pos;\\n\\nuniform mat4 u_matrix;\\n\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize highp vec4 color\\n #pragma mapbox: initialize lowp float opacity\\n\\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\\n}\\n\"},fillOutline:{fragmentSource:\"#pragma mapbox: define highp vec4 outline_color\\n#pragma mapbox: define lowp float opacity\\n\\nvarying vec2 v_pos;\\n\\nvoid main() {\\n #pragma mapbox: initialize highp vec4 outline_color\\n #pragma mapbox: initialize lowp float opacity\\n\\n float dist = length(v_pos - gl_FragCoord.xy);\\n float alpha = 1.0 - smoothstep(0.0, 1.0, dist);\\n gl_FragColor = outline_color * (alpha * opacity);\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"attribute vec2 a_pos;\\n\\nuniform mat4 u_matrix;\\nuniform vec2 u_world;\\n\\nvarying vec2 v_pos;\\n\\n#pragma mapbox: define highp vec4 outline_color\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize highp vec4 outline_color\\n #pragma mapbox: initialize lowp float opacity\\n\\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\\n v_pos = (gl_Position.xy / gl_Position.w + 1.0) / 2.0 * u_world;\\n}\\n\"},fillOutlinePattern:{fragmentSource:\"uniform vec2 u_pattern_tl_a;\\nuniform vec2 u_pattern_br_a;\\nuniform vec2 u_pattern_tl_b;\\nuniform vec2 u_pattern_br_b;\\nuniform float u_mix;\\n\\nuniform sampler2D u_image;\\n\\nvarying vec2 v_pos_a;\\nvarying vec2 v_pos_b;\\nvarying vec2 v_pos;\\n\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float opacity\\n\\n vec2 imagecoord = mod(v_pos_a, 1.0);\\n vec2 pos = mix(u_pattern_tl_a, u_pattern_br_a, imagecoord);\\n vec4 color1 = texture2D(u_image, pos);\\n\\n vec2 imagecoord_b = mod(v_pos_b, 1.0);\\n vec2 pos2 = mix(u_pattern_tl_b, u_pattern_br_b, imagecoord_b);\\n vec4 color2 = texture2D(u_image, pos2);\\n\\n // find distance to outline for alpha interpolation\\n\\n float dist = length(v_pos - gl_FragCoord.xy);\\n float alpha = 1.0 - smoothstep(0.0, 1.0, dist);\\n\\n\\n gl_FragColor = mix(color1, color2, u_mix) * alpha * opacity;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform vec2 u_world;\\nuniform vec2 u_pattern_size_a;\\nuniform vec2 u_pattern_size_b;\\nuniform vec2 u_pixel_coord_upper;\\nuniform vec2 u_pixel_coord_lower;\\nuniform float u_scale_a;\\nuniform float u_scale_b;\\nuniform float u_tile_units_to_pixels;\\n\\nattribute vec2 a_pos;\\n\\nvarying vec2 v_pos_a;\\nvarying vec2 v_pos_b;\\nvarying vec2 v_pos;\\n\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float opacity\\n\\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\\n\\n 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);\\n 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);\\n\\n v_pos = (gl_Position.xy / gl_Position.w + 1.0) / 2.0 * u_world;\\n}\\n\"},fillPattern:{fragmentSource:\"uniform vec2 u_pattern_tl_a;\\nuniform vec2 u_pattern_br_a;\\nuniform vec2 u_pattern_tl_b;\\nuniform vec2 u_pattern_br_b;\\nuniform float u_mix;\\n\\nuniform sampler2D u_image;\\n\\nvarying vec2 v_pos_a;\\nvarying vec2 v_pos_b;\\n\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float opacity\\n\\n vec2 imagecoord = mod(v_pos_a, 1.0);\\n vec2 pos = mix(u_pattern_tl_a, u_pattern_br_a, imagecoord);\\n vec4 color1 = texture2D(u_image, pos);\\n\\n vec2 imagecoord_b = mod(v_pos_b, 1.0);\\n vec2 pos2 = mix(u_pattern_tl_b, u_pattern_br_b, imagecoord_b);\\n vec4 color2 = texture2D(u_image, pos2);\\n\\n gl_FragColor = mix(color1, color2, u_mix) * opacity;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform vec2 u_pattern_size_a;\\nuniform vec2 u_pattern_size_b;\\nuniform vec2 u_pixel_coord_upper;\\nuniform vec2 u_pixel_coord_lower;\\nuniform float u_scale_a;\\nuniform float u_scale_b;\\nuniform float u_tile_units_to_pixels;\\n\\nattribute vec2 a_pos;\\n\\nvarying vec2 v_pos_a;\\nvarying vec2 v_pos_b;\\n\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float opacity\\n\\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\\n\\n 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);\\n 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);\\n}\\n\"},fillExtrusion:{fragmentSource:\"varying vec4 v_color;\\n#pragma mapbox: define lowp float base\\n#pragma mapbox: define lowp float height\\n#pragma mapbox: define highp vec4 color\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float base\\n #pragma mapbox: initialize lowp float height\\n #pragma mapbox: initialize highp vec4 color\\n\\n gl_FragColor = v_color;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform vec3 u_lightcolor;\\nuniform lowp vec3 u_lightpos;\\nuniform lowp float u_lightintensity;\\n\\nattribute vec2 a_pos;\\nattribute vec3 a_normal;\\nattribute float a_edgedistance;\\n\\nvarying vec4 v_color;\\n\\n#pragma mapbox: define lowp float base\\n#pragma mapbox: define lowp float height\\n\\n#pragma mapbox: define highp vec4 color\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float base\\n #pragma mapbox: initialize lowp float height\\n #pragma mapbox: initialize highp vec4 color\\n\\n base = max(0.0, base);\\n height = max(0.0, height);\\n\\n float ed = a_edgedistance; // use each attrib in order to not trip a VAO assert\\n float t = mod(a_normal.x, 2.0);\\n\\n gl_Position = u_matrix * vec4(a_pos, t > 0.0 ? height : base, 1);\\n\\n // Relative luminance (how dark/bright is the surface color?)\\n float colorvalue = color.r * 0.2126 + color.g * 0.7152 + color.b * 0.0722;\\n\\n v_color = vec4(0.0, 0.0, 0.0, 1.0);\\n\\n // Add slight ambient lighting so no extrusions are totally black\\n vec4 ambientlight = vec4(0.03, 0.03, 0.03, 1.0);\\n color += ambientlight;\\n\\n // Calculate cos(theta), where theta is the angle between surface normal and diffuse light ray\\n float directional = clamp(dot(a_normal / 16384.0, u_lightpos), 0.0, 1.0);\\n\\n // Adjust directional so that\\n // the range of values for highlight/shading is narrower\\n // with lower light intensity\\n // and with lighter/brighter surface colors\\n directional = mix((1.0 - u_lightintensity), max((1.0 - colorvalue + u_lightintensity), 1.0), directional);\\n\\n // Add gradient along z axis of side surfaces\\n if (a_normal.y != 0.0) {\\n directional *= clamp((t + base) * pow(height / 150.0, 0.5), mix(0.7, 0.98, 1.0 - u_lightintensity), 1.0);\\n }\\n\\n // Assign final color based on surface + ambient light color, diffuse light directional, and light color\\n // with lower bounds adjusted to hue of light\\n // so that shading is tinted with the complementary (opposite) color to the light color\\n v_color.r += clamp(color.r * directional * u_lightcolor.r, mix(0.0, 0.3, 1.0 - u_lightcolor.r), 1.0);\\n v_color.g += clamp(color.g * directional * u_lightcolor.g, mix(0.0, 0.3, 1.0 - u_lightcolor.g), 1.0);\\n v_color.b += clamp(color.b * directional * u_lightcolor.b, mix(0.0, 0.3, 1.0 - u_lightcolor.b), 1.0);\\n}\\n\"},fillExtrusionPattern:{fragmentSource:\"uniform vec2 u_pattern_tl_a;\\nuniform vec2 u_pattern_br_a;\\nuniform vec2 u_pattern_tl_b;\\nuniform vec2 u_pattern_br_b;\\nuniform float u_mix;\\n\\nuniform sampler2D u_image;\\n\\nvarying vec2 v_pos_a;\\nvarying vec2 v_pos_b;\\nvarying vec4 v_lighting;\\n\\n#pragma mapbox: define lowp float base\\n#pragma mapbox: define lowp float height\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float base\\n #pragma mapbox: initialize lowp float height\\n\\n vec2 imagecoord = mod(v_pos_a, 1.0);\\n vec2 pos = mix(u_pattern_tl_a, u_pattern_br_a, imagecoord);\\n vec4 color1 = texture2D(u_image, pos);\\n\\n vec2 imagecoord_b = mod(v_pos_b, 1.0);\\n vec2 pos2 = mix(u_pattern_tl_b, u_pattern_br_b, imagecoord_b);\\n vec4 color2 = texture2D(u_image, pos2);\\n\\n vec4 mixedColor = mix(color1, color2, u_mix);\\n\\n gl_FragColor = mixedColor * v_lighting;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform vec2 u_pattern_size_a;\\nuniform vec2 u_pattern_size_b;\\nuniform vec2 u_pixel_coord_upper;\\nuniform vec2 u_pixel_coord_lower;\\nuniform float u_scale_a;\\nuniform float u_scale_b;\\nuniform float u_tile_units_to_pixels;\\nuniform float u_height_factor;\\n\\nuniform vec3 u_lightcolor;\\nuniform lowp vec3 u_lightpos;\\nuniform lowp float u_lightintensity;\\n\\nattribute vec2 a_pos;\\nattribute vec3 a_normal;\\nattribute float a_edgedistance;\\n\\nvarying vec2 v_pos_a;\\nvarying vec2 v_pos_b;\\nvarying vec4 v_lighting;\\nvarying float v_directional;\\n\\n#pragma mapbox: define lowp float base\\n#pragma mapbox: define lowp float height\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float base\\n #pragma mapbox: initialize lowp float height\\n\\n base = max(0.0, base);\\n height = max(0.0, height);\\n\\n float t = mod(a_normal.x, 2.0);\\n float z = t > 0.0 ? height : base;\\n\\n gl_Position = u_matrix * vec4(a_pos, z, 1);\\n\\n vec2 pos = a_normal.x == 1.0 && a_normal.y == 0.0 && a_normal.z == 16384.0\\n ? a_pos // extrusion top\\n : vec2(a_edgedistance, z * u_height_factor); // extrusion side\\n\\n 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, pos);\\n 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, pos);\\n\\n v_lighting = vec4(0.0, 0.0, 0.0, 1.0);\\n float directional = clamp(dot(a_normal / 16383.0, u_lightpos), 0.0, 1.0);\\n directional = mix((1.0 - u_lightintensity), max((0.5 + u_lightintensity), 1.0), directional);\\n\\n if (a_normal.y != 0.0) {\\n directional *= clamp((t + base) * pow(height / 150.0, 0.5), mix(0.7, 0.98, 1.0 - u_lightintensity), 1.0);\\n }\\n\\n v_lighting.rgb += clamp(directional * u_lightcolor, mix(vec3(0.0), vec3(0.3), 1.0 - u_lightcolor), vec3(1.0));\\n}\\n\"},extrusionTexture:{fragmentSource:\"uniform sampler2D u_image;\\nuniform float u_opacity;\\nvarying vec2 v_pos;\\n\\nvoid main() {\\n gl_FragColor = texture2D(u_image, v_pos) * u_opacity;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(0.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform vec2 u_world;\\nattribute vec2 a_pos;\\nvarying vec2 v_pos;\\n\\nvoid main() {\\n gl_Position = u_matrix * vec4(a_pos * u_world, 0, 1);\\n\\n v_pos.x = a_pos.x;\\n v_pos.y = 1.0 - a_pos.y;\\n}\\n\"},line:{fragmentSource:\"#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n\\nvarying vec2 v_width2;\\nvarying vec2 v_normal;\\nvarying float v_gamma_scale;\\n\\nvoid main() {\\n #pragma mapbox: initialize highp vec4 color\\n #pragma mapbox: initialize lowp float blur\\n #pragma mapbox: initialize lowp float opacity\\n\\n // Calculate the distance of the pixel from the line in pixels.\\n float dist = length(v_normal) * v_width2.s;\\n\\n // Calculate the antialiasing fade factor. This is either when fading in\\n // the line in case of an offset line (v_width2.t) or when fading out\\n // (v_width2.s)\\n float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\\n float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\\n\\n gl_FragColor = color * (alpha * opacity);\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"\\n\\n// the distance over which the line edge fades out.\\n// Retina devices need a smaller distance to avoid aliasing.\\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\\n\\n// floor(127 / 2) == 63.0\\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\\n// there are also \\\"special\\\" normals that have a bigger length (of up to 126 in\\n// this case).\\n// #define scale 63.0\\n#define scale 0.015873016\\n\\nattribute vec2 a_pos;\\nattribute vec4 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform mediump float u_ratio;\\nuniform mediump float u_width;\\nuniform vec2 u_gl_units_to_pixels;\\n\\nvarying vec2 v_normal;\\nvarying vec2 v_width2;\\nvarying float v_gamma_scale;\\n\\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\\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\\n vec2 a_extrude = a_data.xy - 128.0;\\n float a_direction = mod(a_data.z, 4.0) - 1.0;\\n\\n // We store the texture normals in the most insignificant bit\\n // transform y so that 0 => -1 and 1 => 1\\n // In the texture normal, x is 0 if the normal points straight up/down and 1 if it's a round cap\\n // y is 1 if the normal points up, and -1 if it points down\\n mediump vec2 normal = mod(a_pos, 2.0);\\n normal.y = sign(normal.y - 0.5);\\n v_normal = normal;\\n\\n\\n // these transformations used to be applied in the JS and native code bases. \\n // moved them into the shader for clarity and simplicity. \\n gapwidth = gapwidth / 2.0;\\n float width = u_width / 2.0;\\n offset = -1.0 * offset; \\n\\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\\n float outset = gapwidth + width * (gapwidth > 0.0 ? 2.0 : 1.0) + ANTIALIASING;\\n\\n // Scale the extrusion vector down to a normal and then up by the line width\\n // of this vertex.\\n mediump vec2 dist = outset * a_extrude * scale;\\n\\n // Calculate the offset when drawing a line that is to the side of the actual line.\\n // We do this by creating a vector that points towards the extrude, but rotate\\n // it when we're drawing round end points (a_direction = -1 or 1) since their\\n // extrude vector points in another direction.\\n mediump float u = 0.5 * a_direction;\\n mediump float t = 1.0 - abs(u);\\n mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\\n\\n // Remove the texture normal bit to get the position\\n vec2 pos = floor(a_pos * 0.5);\\n\\n vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\\n gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\\n\\n // calculate how much the perspective view squishes or stretches the extrude\\n float extrude_length_without_perspective = length(dist);\\n float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\\n v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\\n\\n v_width2 = vec2(outset, inset);\\n}\\n\"},linePattern:{fragmentSource:\"uniform vec2 u_pattern_size_a;\\nuniform vec2 u_pattern_size_b;\\nuniform vec2 u_pattern_tl_a;\\nuniform vec2 u_pattern_br_a;\\nuniform vec2 u_pattern_tl_b;\\nuniform vec2 u_pattern_br_b;\\nuniform float u_fade;\\n\\nuniform sampler2D u_image;\\n\\nvarying vec2 v_normal;\\nvarying vec2 v_width2;\\nvarying float v_linesofar;\\nvarying float v_gamma_scale;\\n\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float blur\\n #pragma mapbox: initialize lowp float opacity\\n\\n // Calculate the distance of the pixel from the line in pixels.\\n float dist = length(v_normal) * v_width2.s;\\n\\n // Calculate the antialiasing fade factor. This is either when fading in\\n // the line in case of an offset line (v_width2.t) or when fading out\\n // (v_width2.s)\\n float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\\n float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\\n\\n float x_a = mod(v_linesofar / u_pattern_size_a.x, 1.0);\\n float x_b = mod(v_linesofar / u_pattern_size_b.x, 1.0);\\n float y_a = 0.5 + (v_normal.y * v_width2.s / u_pattern_size_a.y);\\n float y_b = 0.5 + (v_normal.y * v_width2.s / u_pattern_size_b.y);\\n vec2 pos_a = mix(u_pattern_tl_a, u_pattern_br_a, vec2(x_a, y_a));\\n vec2 pos_b = mix(u_pattern_tl_b, u_pattern_br_b, vec2(x_b, y_b));\\n\\n vec4 color = mix(texture2D(u_image, pos_a), texture2D(u_image, pos_b), u_fade);\\n\\n gl_FragColor = color * alpha * opacity;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"// floor(127 / 2) == 63.0\\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\\n// there are also \\\"special\\\" normals that have a bigger length (of up to 126 in\\n// this case).\\n// #define scale 63.0\\n#define scale 0.015873016\\n\\n// We scale the distance before adding it to the buffers so that we can store\\n// long distances for long segments. Use this value to unscale the distance.\\n#define LINE_DISTANCE_SCALE 2.0\\n\\n// the distance over which the line edge fades out.\\n// Retina devices need a smaller distance to avoid aliasing.\\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\\n\\nattribute vec2 a_pos;\\nattribute vec4 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform mediump float u_ratio;\\nuniform mediump float u_width;\\nuniform vec2 u_gl_units_to_pixels;\\n\\nvarying vec2 v_normal;\\nvarying vec2 v_width2;\\nvarying float v_linesofar;\\nvarying float v_gamma_scale;\\n\\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\\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\\n vec2 a_extrude = a_data.xy - 128.0;\\n float a_direction = mod(a_data.z, 4.0) - 1.0;\\n float a_linesofar = (floor(a_data.z / 4.0) + a_data.w * 64.0) * LINE_DISTANCE_SCALE;\\n\\n // We store the texture normals in the most insignificant bit\\n // transform y so that 0 => -1 and 1 => 1\\n // In the texture normal, x is 0 if the normal points straight up/down and 1 if it's a round cap\\n // y is 1 if the normal points up, and -1 if it points down\\n mediump vec2 normal = mod(a_pos, 2.0);\\n normal.y = sign(normal.y - 0.5);\\n v_normal = normal;\\n\\n // these transformations used to be applied in the JS and native code bases. \\n // moved them into the shader for clarity and simplicity. \\n gapwidth = gapwidth / 2.0;\\n float width = u_width / 2.0;\\n offset = -1.0 * offset; \\n\\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\\n float outset = gapwidth + width * (gapwidth > 0.0 ? 2.0 : 1.0) + ANTIALIASING;\\n\\n // Scale the extrusion vector down to a normal and then up by the line width\\n // of this vertex.\\n mediump vec2 dist = outset * a_extrude * scale;\\n\\n // Calculate the offset when drawing a line that is to the side of the actual line.\\n // We do this by creating a vector that points towards the extrude, but rotate\\n // it when we're drawing round end points (a_direction = -1 or 1) since their\\n // extrude vector points in another direction.\\n mediump float u = 0.5 * a_direction;\\n mediump float t = 1.0 - abs(u);\\n mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\\n\\n // Remove the texture normal bit to get the position\\n vec2 pos = floor(a_pos * 0.5);\\n\\n vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\\n gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\\n\\n // calculate how much the perspective view squishes or stretches the extrude\\n float extrude_length_without_perspective = length(dist);\\n float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\\n v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\\n\\n v_linesofar = a_linesofar;\\n v_width2 = vec2(outset, inset);\\n}\\n\"},lineSDF:{fragmentSource:\"\\nuniform sampler2D u_image;\\nuniform float u_sdfgamma;\\nuniform float u_mix;\\n\\nvarying vec2 v_normal;\\nvarying vec2 v_width2;\\nvarying vec2 v_tex_a;\\nvarying vec2 v_tex_b;\\nvarying float v_gamma_scale;\\n\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize highp vec4 color\\n #pragma mapbox: initialize lowp float blur\\n #pragma mapbox: initialize lowp float opacity\\n\\n // Calculate the distance of the pixel from the line in pixels.\\n float dist = length(v_normal) * v_width2.s;\\n\\n // Calculate the antialiasing fade factor. This is either when fading in\\n // the line in case of an offset line (v_width2.t) or when fading out\\n // (v_width2.s)\\n float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\\n float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\\n\\n float sdfdist_a = texture2D(u_image, v_tex_a).a;\\n float sdfdist_b = texture2D(u_image, v_tex_b).a;\\n float sdfdist = mix(sdfdist_a, sdfdist_b, u_mix);\\n alpha *= smoothstep(0.5 - u_sdfgamma, 0.5 + u_sdfgamma, sdfdist);\\n\\n gl_FragColor = color * (alpha * opacity);\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"// floor(127 / 2) == 63.0\\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\\n// there are also \\\"special\\\" normals that have a bigger length (of up to 126 in\\n// this case).\\n// #define scale 63.0\\n#define scale 0.015873016\\n\\n// We scale the distance before adding it to the buffers so that we can store\\n// long distances for long segments. Use this value to unscale the distance.\\n#define LINE_DISTANCE_SCALE 2.0\\n\\n// the distance over which the line edge fades out.\\n// Retina devices need a smaller distance to avoid aliasing.\\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\\n\\nattribute vec2 a_pos;\\nattribute vec4 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform mediump float u_ratio;\\nuniform vec2 u_patternscale_a;\\nuniform float u_tex_y_a;\\nuniform vec2 u_patternscale_b;\\nuniform float u_tex_y_b;\\nuniform vec2 u_gl_units_to_pixels;\\nuniform mediump float u_width;\\n\\nvarying vec2 v_normal;\\nvarying vec2 v_width2;\\nvarying vec2 v_tex_a;\\nvarying vec2 v_tex_b;\\nvarying float v_gamma_scale;\\n\\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\\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\\n vec2 a_extrude = a_data.xy - 128.0;\\n float a_direction = mod(a_data.z, 4.0) - 1.0;\\n float a_linesofar = (floor(a_data.z / 4.0) + a_data.w * 64.0) * LINE_DISTANCE_SCALE;\\n\\n // We store the texture normals in the most insignificant bit\\n // transform y so that 0 => -1 and 1 => 1\\n // In the texture normal, x is 0 if the normal points straight up/down and 1 if it's a round cap\\n // y is 1 if the normal points up, and -1 if it points down\\n mediump vec2 normal = mod(a_pos, 2.0);\\n normal.y = sign(normal.y - 0.5);\\n v_normal = normal;\\n\\n // these transformations used to be applied in the JS and native code bases. \\n // moved them into the shader for clarity and simplicity. \\n gapwidth = gapwidth / 2.0;\\n float width = u_width / 2.0;\\n offset = -1.0 * offset;\\n \\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\\n float outset = gapwidth + width * (gapwidth > 0.0 ? 2.0 : 1.0) + ANTIALIASING;\\n\\n // Scale the extrusion vector down to a normal and then up by the line width\\n // of this vertex.\\n mediump vec2 dist =outset * a_extrude * scale;\\n\\n // Calculate the offset when drawing a line that is to the side of the actual line.\\n // We do this by creating a vector that points towards the extrude, but rotate\\n // it when we're drawing round end points (a_direction = -1 or 1) since their\\n // extrude vector points in another direction.\\n mediump float u = 0.5 * a_direction;\\n mediump float t = 1.0 - abs(u);\\n mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\\n\\n // Remove the texture normal bit to get the position\\n vec2 pos = floor(a_pos * 0.5);\\n\\n vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\\n gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\\n\\n // calculate how much the perspective view squishes or stretches the extrude\\n float extrude_length_without_perspective = length(dist);\\n float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\\n v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\\n\\n v_tex_a = vec2(a_linesofar * u_patternscale_a.x, normal.y * u_patternscale_a.y + u_tex_y_a);\\n v_tex_b = vec2(a_linesofar * u_patternscale_b.x, normal.y * u_patternscale_b.y + u_tex_y_b);\\n\\n v_width2 = vec2(outset, inset);\\n}\\n\"\n},raster:{fragmentSource:\"uniform float u_fade_t;\\nuniform float u_opacity;\\nuniform sampler2D u_image0;\\nuniform sampler2D u_image1;\\nvarying vec2 v_pos0;\\nvarying vec2 v_pos1;\\n\\nuniform float u_brightness_low;\\nuniform float u_brightness_high;\\n\\nuniform float u_saturation_factor;\\nuniform float u_contrast_factor;\\nuniform vec3 u_spin_weights;\\n\\nvoid main() {\\n\\n // read and cross-fade colors from the main and parent tiles\\n vec4 color0 = texture2D(u_image0, v_pos0);\\n vec4 color1 = texture2D(u_image1, v_pos1);\\n vec4 color = mix(color0, color1, u_fade_t);\\n color.a *= u_opacity;\\n vec3 rgb = color.rgb;\\n\\n // spin\\n rgb = vec3(\\n dot(rgb, u_spin_weights.xyz),\\n dot(rgb, u_spin_weights.zxy),\\n dot(rgb, u_spin_weights.yzx));\\n\\n // saturation\\n float average = (color.r + color.g + color.b) / 3.0;\\n rgb += (average - rgb) * u_saturation_factor;\\n\\n // contrast\\n rgb = (rgb - 0.5) * u_contrast_factor + 0.5;\\n\\n // brightness\\n vec3 u_high_vec = vec3(u_brightness_low, u_brightness_low, u_brightness_low);\\n vec3 u_low_vec = vec3(u_brightness_high, u_brightness_high, u_brightness_high);\\n\\n gl_FragColor = vec4(mix(u_high_vec, u_low_vec, rgb) * color.a, color.a);\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform vec2 u_tl_parent;\\nuniform float u_scale_parent;\\nuniform float u_buffer_scale;\\n\\nattribute vec2 a_pos;\\nattribute vec2 a_texture_pos;\\n\\nvarying vec2 v_pos0;\\nvarying vec2 v_pos1;\\n\\nvoid main() {\\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\\n v_pos0 = (((a_texture_pos / 32767.0) - 0.5) / u_buffer_scale ) + 0.5;\\n v_pos1 = (v_pos0 * u_scale_parent) + u_tl_parent;\\n}\\n\"},symbolIcon:{fragmentSource:\"uniform sampler2D u_texture;\\nuniform sampler2D u_fadetexture;\\n\\n#pragma mapbox: define lowp float opacity\\n\\nvarying vec2 v_tex;\\nvarying vec2 v_fade_tex;\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float opacity\\n\\n lowp float alpha = texture2D(u_fadetexture, v_fade_tex).a * opacity;\\n gl_FragColor = texture2D(u_texture, v_tex) * alpha;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:'\\nattribute vec4 a_pos_offset;\\nattribute vec4 a_data;\\n\\n// icon-size data (see symbol_sdf.vertex.glsl for more)\\nattribute vec3 a_size;\\nuniform bool u_is_size_zoom_constant;\\nuniform bool u_is_size_feature_constant;\\nuniform mediump float u_size_t; // used to interpolate between zoom stops when size is a composite function\\nuniform mediump float u_size; // used when size is both zoom and feature constant\\nuniform mediump float u_layout_size; // used when size is feature constant\\n\\n#pragma mapbox: define lowp float opacity\\n\\n// matrix is for the vertex position.\\nuniform mat4 u_matrix;\\n\\nuniform bool u_is_text;\\nuniform mediump float u_zoom;\\nuniform bool u_rotate_with_map;\\nuniform vec2 u_extrude_scale;\\n\\nuniform vec2 u_texsize;\\n\\nvarying vec2 v_tex;\\nvarying vec2 v_fade_tex;\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float opacity\\n\\n vec2 a_pos = a_pos_offset.xy;\\n vec2 a_offset = a_pos_offset.zw;\\n\\n vec2 a_tex = a_data.xy;\\n mediump vec2 label_data = unpack_float(a_data[2]);\\n mediump float a_labelminzoom = label_data[0];\\n mediump vec2 a_zoom = unpack_float(a_data[3]);\\n mediump float a_minzoom = a_zoom[0];\\n mediump float a_maxzoom = a_zoom[1];\\n\\n float size;\\n // In order to accommodate placing labels around corners in\\n // symbol-placement: line, each glyph in a label could have multiple\\n // \"quad\"s only one of which should be shown at a given zoom level.\\n // The min/max zoom assigned to each quad is based on the font size at\\n // the vector tile\\'s zoom level, which might be different than at the\\n // currently rendered zoom level if text-size is zoom-dependent.\\n // Thus, we compensate for this difference by calculating an adjustment\\n // based on the scale of rendered text size relative to layout text size.\\n mediump float layoutSize;\\n if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {\\n size = mix(a_size[0], a_size[1], u_size_t) / 10.0;\\n layoutSize = a_size[2] / 10.0;\\n } else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {\\n size = a_size[0] / 10.0;\\n layoutSize = size;\\n } else if (!u_is_size_zoom_constant && u_is_size_feature_constant) {\\n size = u_size;\\n layoutSize = u_layout_size;\\n } else {\\n size = u_size;\\n layoutSize = u_size;\\n }\\n\\n float fontScale = u_is_text ? size / 24.0 : size;\\n\\n mediump float zoomAdjust = log2(size / layoutSize);\\n mediump float adjustedZoom = (u_zoom - zoomAdjust) * 10.0;\\n // result: z = 0 if a_minzoom <= adjustedZoom < a_maxzoom, and 1 otherwise\\n mediump float z = 2.0 - step(a_minzoom, adjustedZoom) - (1.0 - step(a_maxzoom, adjustedZoom));\\n\\n vec2 extrude = fontScale * u_extrude_scale * (a_offset / 64.0);\\n if (u_rotate_with_map) {\\n gl_Position = u_matrix * vec4(a_pos + extrude, 0, 1);\\n gl_Position.z += z * gl_Position.w;\\n } else {\\n gl_Position = u_matrix * vec4(a_pos, 0, 1) + vec4(extrude, 0, 0);\\n }\\n\\n v_tex = a_tex / u_texsize;\\n v_fade_tex = vec2(a_labelminzoom / 255.0, 0.0);\\n}\\n'},symbolSDF:{fragmentSource:\"#define SDF_PX 8.0\\n#define EDGE_GAMMA 0.105/DEVICE_PIXEL_RATIO\\n\\nuniform bool u_is_halo;\\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\\n\\nuniform sampler2D u_texture;\\nuniform sampler2D u_fadetexture;\\nuniform highp float u_gamma_scale;\\nuniform bool u_is_text;\\n\\nvarying vec2 v_tex;\\nvarying vec2 v_fade_tex;\\nvarying float v_gamma_scale;\\nvarying float v_size;\\n\\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\\n\\n float fontScale = u_is_text ? v_size / 24.0 : v_size;\\n\\n lowp vec4 color = fill_color;\\n highp float gamma = EDGE_GAMMA / (fontScale * u_gamma_scale);\\n lowp float buff = (256.0 - 64.0) / 256.0;\\n if (u_is_halo) {\\n color = halo_color;\\n gamma = (halo_blur * 1.19 / SDF_PX + EDGE_GAMMA) / (fontScale * u_gamma_scale);\\n buff = (6.0 - halo_width / fontScale) / SDF_PX;\\n }\\n\\n lowp float dist = texture2D(u_texture, v_tex).a;\\n lowp float fade_alpha = texture2D(u_fadetexture, v_fade_tex).a;\\n highp float gamma_scaled = gamma * v_gamma_scale;\\n highp float alpha = smoothstep(buff - gamma_scaled, buff + gamma_scaled, dist) * fade_alpha;\\n\\n gl_FragColor = color * (alpha * opacity);\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"const float PI = 3.141592653589793;\\n\\nattribute vec4 a_pos_offset;\\nattribute vec4 a_data;\\n\\n// contents of a_size vary based on the type of property value\\n// used for {text,icon}-size.\\n// For constants, a_size is disabled.\\n// For source functions, we bind only one value per vertex: the value of {text,icon}-size evaluated for the current feature.\\n// For composite functions:\\n// [ text-size(lowerZoomStop, feature),\\n// text-size(upperZoomStop, feature),\\n// layoutSize == text-size(layoutZoomLevel, feature) ]\\nattribute vec3 a_size;\\nuniform bool u_is_size_zoom_constant;\\nuniform bool u_is_size_feature_constant;\\nuniform mediump float u_size_t; // used to interpolate between zoom stops when size is a composite function\\nuniform mediump float u_size; // used when size is both zoom and feature constant\\nuniform mediump float u_layout_size; // used when size is feature constant\\n\\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\\n\\n// matrix is for the vertex position.\\nuniform mat4 u_matrix;\\n\\nuniform bool u_is_text;\\nuniform mediump float u_zoom;\\nuniform bool u_rotate_with_map;\\nuniform bool u_pitch_with_map;\\nuniform mediump float u_pitch;\\nuniform mediump float u_bearing;\\nuniform mediump float u_aspect_ratio;\\nuniform vec2 u_extrude_scale;\\n\\nuniform vec2 u_texsize;\\n\\nvarying vec2 v_tex;\\nvarying vec2 v_fade_tex;\\nvarying float v_gamma_scale;\\nvarying float v_size;\\n\\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\\n\\n vec2 a_pos = a_pos_offset.xy;\\n vec2 a_offset = a_pos_offset.zw;\\n\\n vec2 a_tex = a_data.xy;\\n\\n mediump vec2 label_data = unpack_float(a_data[2]);\\n mediump float a_labelminzoom = label_data[0];\\n mediump float a_labelangle = label_data[1];\\n\\n mediump vec2 a_zoom = unpack_float(a_data[3]);\\n mediump float a_minzoom = a_zoom[0];\\n mediump float a_maxzoom = a_zoom[1];\\n\\n // In order to accommodate placing labels around corners in\\n // symbol-placement: line, each glyph in a label could have multiple\\n // \\\"quad\\\"s only one of which should be shown at a given zoom level.\\n // The min/max zoom assigned to each quad is based on the font size at\\n // the vector tile's zoom level, which might be different than at the\\n // currently rendered zoom level if text-size is zoom-dependent.\\n // Thus, we compensate for this difference by calculating an adjustment\\n // based on the scale of rendered text size relative to layout text size.\\n mediump float layoutSize;\\n if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {\\n v_size = mix(a_size[0], a_size[1], u_size_t) / 10.0;\\n layoutSize = a_size[2] / 10.0;\\n } else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {\\n v_size = a_size[0] / 10.0;\\n layoutSize = v_size;\\n } else if (!u_is_size_zoom_constant && u_is_size_feature_constant) {\\n v_size = u_size;\\n layoutSize = u_layout_size;\\n } else {\\n v_size = u_size;\\n layoutSize = u_size;\\n }\\n\\n float fontScale = u_is_text ? v_size / 24.0 : v_size;\\n\\n mediump float zoomAdjust = log2(v_size / layoutSize);\\n mediump float adjustedZoom = (u_zoom - zoomAdjust) * 10.0;\\n // result: z = 0 if a_minzoom <= adjustedZoom < a_maxzoom, and 1 otherwise\\n // Used below to move the vertex out of the clip space for when the current\\n // zoom is out of the glyph's zoom range.\\n mediump float z = 2.0 - step(a_minzoom, adjustedZoom) - (1.0 - step(a_maxzoom, adjustedZoom));\\n\\n // pitch-alignment: map\\n // rotation-alignment: map | viewport\\n if (u_pitch_with_map) {\\n lowp float angle = u_rotate_with_map ? (a_labelangle / 256.0 * 2.0 * PI) : u_bearing;\\n lowp float asin = sin(angle);\\n lowp float acos = cos(angle);\\n mat2 RotationMatrix = mat2(acos, asin, -1.0 * asin, acos);\\n vec2 offset = RotationMatrix * a_offset;\\n vec2 extrude = fontScale * u_extrude_scale * (offset / 64.0);\\n gl_Position = u_matrix * vec4(a_pos + extrude, 0, 1);\\n gl_Position.z += z * gl_Position.w;\\n // pitch-alignment: viewport\\n // rotation-alignment: map\\n } else if (u_rotate_with_map) {\\n // foreshortening factor to apply on pitched maps\\n // as a label goes from horizontal <=> vertical in angle\\n // it goes from 0% foreshortening to up to around 70% foreshortening\\n lowp float pitchfactor = 1.0 - cos(u_pitch * sin(u_pitch * 0.75));\\n\\n lowp float lineangle = a_labelangle / 256.0 * 2.0 * PI;\\n\\n // use the lineangle to position points a,b along the line\\n // project the points and calculate the label angle in projected space\\n // this calculation allows labels to be rendered unskewed on pitched maps\\n vec4 a = u_matrix * vec4(a_pos, 0, 1);\\n vec4 b = u_matrix * vec4(a_pos + vec2(cos(lineangle),sin(lineangle)), 0, 1);\\n lowp float angle = atan((b[1]/b[3] - a[1]/a[3])/u_aspect_ratio, b[0]/b[3] - a[0]/a[3]);\\n lowp float asin = sin(angle);\\n lowp float acos = cos(angle);\\n mat2 RotationMatrix = mat2(acos, -1.0 * asin, asin, acos);\\n\\n vec2 offset = RotationMatrix * (vec2((1.0-pitchfactor)+(pitchfactor*cos(angle*2.0)), 1.0) * a_offset);\\n vec2 extrude = fontScale * u_extrude_scale * (offset / 64.0);\\n gl_Position = u_matrix * vec4(a_pos, 0, 1) + vec4(extrude, 0, 0);\\n gl_Position.z += z * gl_Position.w;\\n // pitch-alignment: viewport\\n // rotation-alignment: viewport\\n } else {\\n vec2 extrude = fontScale * u_extrude_scale * (a_offset / 64.0);\\n gl_Position = u_matrix * vec4(a_pos, 0, 1) + vec4(extrude, 0, 0);\\n }\\n\\n v_gamma_scale = gl_Position.w;\\n\\n v_tex = a_tex / u_texsize;\\n v_fade_tex = vec2(a_labelminzoom / 255.0, 0.0);\\n}\\n\"}};\n},{\"path\":23}],80:[function(_dereq_,module,exports){\n\"use strict\";var VertexArrayObject=function(){this.boundProgram=null,this.boundVertexBuffer=null,this.boundVertexBuffer2=null,this.boundElementBuffer=null,this.boundVertexOffset=null,this.vao=null};VertexArrayObject.prototype.bind=function(e,t,r,i,n,s){void 0===e.extVertexArrayObject&&(e.extVertexArrayObject=e.getExtension(\"OES_vertex_array_object\"));var o=!this.vao||this.boundProgram!==t||this.boundVertexBuffer!==r||this.boundVertexBuffer2!==n||this.boundElementBuffer!==i||this.boundVertexOffset!==s;!e.extVertexArrayObject||o?(this.freshBind(e,t,r,i,n,s),this.gl=e):e.extVertexArrayObject.bindVertexArrayOES(this.vao)},VertexArrayObject.prototype.freshBind=function(e,t,r,i,n,s){var o,u=t.numAttributes;if(e.extVertexArrayObject)this.vao&&this.destroy(),this.vao=e.extVertexArrayObject.createVertexArrayOES(),e.extVertexArrayObject.bindVertexArrayOES(this.vao),o=0,this.boundProgram=t,this.boundVertexBuffer=r,this.boundVertexBuffer2=n,this.boundElementBuffer=i,this.boundVertexOffset=s;else{o=e.currentNumAttributes||0;for(var b=u;bthis.maxzoom?Math.pow(2,t.coord.z-this.maxzoom):1,r={type:this.type,uid:t.uid,coord:t.coord,zoom:t.coord.z,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,overscaling:i,angle:this.map.transform.angle,pitch:this.map.transform.pitch,showCollisionBoxes:this.map.showCollisionBoxes};t.workerID=this.dispatcher.send(\"loadTile\",r,function(i,r){if(t.unloadVectorData(),!t.aborted)return i?e(i):(t.loadVectorData(r,o.map.painter),t.redoWhenDone&&(t.redoWhenDone=!1,t.redoPlacement(o)),e(null))},this.workerID)},e.prototype.abortTile=function(t){t.aborted=!0},e.prototype.unloadTile=function(t){t.unloadVectorData(),this.dispatcher.send(\"removeTile\",{uid:t.uid,type:this.type,source:this.id},function(){},t.workerID)},e.prototype.onRemove=function(){this.dispatcher.broadcast(\"removeSource\",{type:this.type,source:this.id},function(){})},e.prototype.serialize=function(){return{type:this.type,data:this._data}},e}(Evented);module.exports=GeoJSONSource;\n},{\"../data/extent\":54,\"../util/evented\":203,\"../util/util\":215,\"../util/window\":197}],84:[function(_dereq_,module,exports){\n\"use strict\";var ajax=_dereq_(\"../util/ajax\"),rewind=_dereq_(\"geojson-rewind\"),GeoJSONWrapper=_dereq_(\"./geojson_wrapper\"),vtpbf=_dereq_(\"vt-pbf\"),supercluster=_dereq_(\"supercluster\"),geojsonvt=_dereq_(\"geojson-vt\"),VectorTileWorkerSource=_dereq_(\"./vector_tile_worker_source\"),GeoJSONWorkerSource=function(e){function r(r,t,o){e.call(this,r,t),o&&(this.loadGeoJSON=o),this._geoJSONIndexes={}}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.loadVectorData=function(e,r){var t=e.source,o=e.coord;if(!this._geoJSONIndexes[t])return r(null,null);var n=this._geoJSONIndexes[t].getTile(Math.min(o.z,e.maxZoom),o.x,o.y);if(!n)return r(null,null);var u=new GeoJSONWrapper(n.features);u.name=\"_geojsonTileLayer\";var a=vtpbf({layers:{_geojsonTileLayer:u}});0===a.byteOffset&&a.byteLength===a.buffer.byteLength||(a=new Uint8Array(a)),u.rawData=a.buffer,r(null,u)},r.prototype.loadData=function(e,r){var t=function(t,o){var n=this;return t?r(t):\"object\"!=typeof o?r(new Error(\"Input data is not a valid GeoJSON object.\")):(rewind(o,!0),void this._indexData(o,e,function(t,o){return t?r(t):(n._geoJSONIndexes[e.source]=o,void r(null))}))}.bind(this);this.loadGeoJSON(e,t)},r.prototype.loadGeoJSON=function(e,r){if(e.url)ajax.getJSON(e.url,r);else{if(\"string\"!=typeof e.data)return r(new Error(\"Input data is not a valid GeoJSON object.\"));try{return r(null,JSON.parse(e.data))}catch(e){return r(new Error(\"Input data is not a valid GeoJSON object.\"))}}},r.prototype.removeSource=function(e){this._geoJSONIndexes[e.source]&&delete this._geoJSONIndexes[e.source]},r.prototype._indexData=function(e,r,t){try{r.cluster?t(null,supercluster(r.superclusterOptions).load(e.features)):t(null,geojsonvt(e,r.geojsonVtOptions))}catch(e){return t(e)}},r}(VectorTileWorkerSource);module.exports=GeoJSONWorkerSource;\n},{\"../util/ajax\":194,\"./geojson_wrapper\":85,\"./vector_tile_worker_source\":98,\"geojson-rewind\":7,\"geojson-vt\":11,\"supercluster\":29,\"vt-pbf\":38}],85:[function(_dereq_,module,exports){\n\"use strict\";var Point=_dereq_(\"point-geometry\"),VectorTileFeature=_dereq_(\"vector-tile\").VectorTileFeature,EXTENT=_dereq_(\"../data/extent\"),FeatureWrapper=function(e){var t=this;if(this.type=e.type,1===e.type){this.rawGeometry=[];for(var r=0;rt)){var n=Math.pow(2,Math.min(a.coord.z,i._source.maxzoom)-Math.min(e.z,i._source.maxzoom));if(Math.floor(a.coord.x/n)===e.x&&Math.floor(a.coord.y/n)===e.y)for(o[s]=!0,r=!0;a&&a.coord.z-1>e.z;){var d=a.coord.parent(i._source.maxzoom).id;a=i._tiles[d],a&&a.hasData()&&(delete o[s],o[d]=!0)}}}return r},t.prototype.findLoadedParent=function(e,t,o){for(var i=this,r=e.z-1;r>=t;r--){e=e.parent(i._source.maxzoom);var s=i._tiles[e.id];if(s&&s.hasData())return o[e.id]=!0,s;if(i._cache.has(e.id))return o[e.id]=!0,i._cache.getWithoutRemoving(e.id)}},t.prototype.updateCacheSize=function(e){var t=Math.ceil(e.width/e.tileSize)+1,o=Math.ceil(e.height/e.tileSize)+1,i=t*o,r=5;this._cache.setMaxSize(Math.floor(i*r))},t.prototype.update=function(e){var o=this;if(this.transform=e,this._sourceLoaded){var i,r,s,a;this.updateCacheSize(e);var n=(this._source.roundZoom?Math.round:Math.floor)(this.getZoom(e)),d=Math.max(n-t.maxOverzooming,this._source.minzoom),c=Math.max(n+t.maxUnderzooming,this._source.minzoom),h={};this._coveredTiles={};var u;for(this.used?this._source.coord?u=e.getVisibleWrappedCoordinates(this._source.coord):(u=e.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(u=u.filter(function(e){return o._source.hasTile(e)}))):u=[],i=0;i=Date.now())&&(o.findLoadedChildren(r,c,h)&&(h[_]=!0),a=o.findLoadedParent(r,d,l),a&&o.addTile(a.coord))}var f;for(f in l)h[f]||(o._coveredTiles[f]=!0);for(f in l)h[f]=!0;var T=util.keysDifference(this._tiles,h);for(i=0;ithis._source.maxzoom?Math.pow(2,r-this._source.maxzoom):1;t=new Tile(o,this._source.tileSize*s,this._source.maxzoom),this.loadTile(t,this._tileLoaded.bind(this,t,e.id,t.state))}return t.uses++,this._tiles[e.id]=t,i||this._source.fire(\"dataloading\",{tile:t,coord:t.coord,dataType:\"source\"}),t},t.prototype._setTileReloadTimer=function(e,t){var o=this,i=t.getExpiryTimeout();i&&(this._timers[e]=setTimeout(function(){o.reloadTile(e,\"expired\"),o._timers[e]=void 0},i))},t.prototype._setCacheInvalidationTimer=function(e,t){var o=this,i=t.getExpiryTimeout();i&&(this._cacheTimers[e]=setTimeout(function(){o._cache.remove(e),o._cacheTimers[e]=void 0},i))},t.prototype.removeTile=function(e){var t=this._tiles[e];if(t&&(t.uses--,delete this._tiles[e],this._timers[e]&&(clearTimeout(this._timers[e]),this._timers[e]=void 0),!(t.uses>0)))if(t.hasData()){var o=t.coord.wrapped().id;this._cache.add(o,t),this._setCacheInvalidationTimer(o,t)}else t.aborted=!0,this.abortTile(t),this.unloadTile(t)},t.prototype.clearTiles=function(){var e=this;for(var t in e._tiles)e.removeTile(t);this._cache.reset()},t.prototype.tilesIn=function(e){for(var t=this,o={},i=this.getIds(),r=1/0,s=1/0,a=-(1/0),n=-(1/0),d=e[0].zoom,c=0;c=0&&p[1].y>=0){for(var _=[],f=0;fo)r=!1;else if(t)if(this.expirationTime=a.minX&&t.x=a.minY&&t.yi.row){var o=t;t=i,i=o}return{x0:t.column,y0:t.row,x1:i.column,y1:i.row,dx:i.column-t.column,dy:i.row-t.row}}function scanSpans(t,i,o,r,e){var n=Math.max(o,Math.floor(i.y0)),h=Math.min(r,Math.ceil(i.y1));if(t.x0===i.x0&&t.y0===i.y0?t.x0+i.dy/t.dy*t.dx0,l=i.dx<0,u=n;ua.dy&&(h=s,s=a,a=h),s.dy>d.dy&&(h=s,s=d,d=h),a.dy>d.dy&&(h=a,a=d,d=h),s.dy&&scanSpans(d,s,r,e,n),a.dy&&scanSpans(d,a,r,e,n)}function getQuadkey(t,i,o){for(var r,e=\"\",n=t;n>0;n--)r=1<t?new TileCoord(this.z-1,this.x,this.y,this.w):new TileCoord(this.z-1,Math.floor(this.x/2),Math.floor(this.y/2),this.w)},TileCoord.prototype.wrapped=function(){return new TileCoord(this.z,this.x,this.y,0)},TileCoord.prototype.children=function(t){if(this.z>=t)return[new TileCoord(this.z+1,this.x,this.y,this.w)];var i=this.z+1,o=2*this.x,r=2*this.y;return[new TileCoord(i,o,r,this.w),new TileCoord(i,o+1,r,this.w),new TileCoord(i,o,r+1,this.w),new TileCoord(i,o+1,r+1,this.w)]},TileCoord.cover=function(t,i,o,r){function e(t,i,e){var s,a,d,y;if(e>=0&&e<=n)for(s=t;sthis.maxzoom?Math.pow(2,e.coord.z-this.maxzoom):1,r={url:normalizeURL(e.coord.url(this.tiles,this.maxzoom,this.scheme),this.url),uid:e.uid,coord:e.coord,zoom:e.coord.z,tileSize:this.tileSize*o,type:this.type,source:this.id,overscaling:o,angle:this.map.transform.angle,pitch:this.map.transform.pitch,showCollisionBoxes:this.map.showCollisionBoxes};e.workerID&&\"expired\"!==e.state?\"loading\"===e.state?e.reloadCallback=t:this.dispatcher.send(\"reloadTile\",r,i.bind(this),e.workerID):e.workerID=this.dispatcher.send(\"loadTile\",r,i.bind(this))},t.prototype.abortTile=function(e){this.dispatcher.send(\"abortTile\",{uid:e.uid,type:this.type,source:this.id},null,e.workerID)},t.prototype.unloadTile=function(e){e.unloadVectorData(),this.dispatcher.send(\"removeTile\",{uid:e.uid,type:this.type,source:this.id},null,e.workerID)},t}(Evented);module.exports=VectorTileSource;\n},{\"../util/evented\":203,\"../util/mapbox\":210,\"../util/util\":215,\"./load_tilejson\":87,\"./tile_bounds\":95}],98:[function(_dereq_,module,exports){\n\"use strict\";var ajax=_dereq_(\"../util/ajax\"),vt=_dereq_(\"vector-tile\"),Protobuf=_dereq_(\"pbf\"),WorkerTile=_dereq_(\"./worker_tile\"),util=_dereq_(\"../util/util\"),VectorTileWorkerSource=function(e,r,t){this.actor=e,this.layerIndex=r,t&&(this.loadVectorData=t),this.loading={},this.loaded={}};VectorTileWorkerSource.prototype.loadTile=function(e,r){function t(e,t){return delete this.loading[o][i],e?r(e):t?(a.vectorTile=t,a.parse(t,this.layerIndex,this.actor,function(e,o,i){if(e)return r(e);var a={};t.expires&&(a.expires=t.expires),t.cacheControl&&(a.cacheControl=t.cacheControl),r(null,util.extend({rawTileData:t.rawData},o,a),i)}),this.loaded[o]=this.loaded[o]||{},void(this.loaded[o][i]=a)):r(null,null)}var o=e.source,i=e.uid;this.loading[o]||(this.loading[o]={});var a=this.loading[o][i]=new WorkerTile(e);a.abort=this.loadVectorData(e,t.bind(this))},VectorTileWorkerSource.prototype.reloadTile=function(e,r){function t(e,t){if(this.reloadCallback){var o=this.reloadCallback;delete this.reloadCallback,this.parse(this.vectorTile,a.layerIndex,a.actor,o)}r(e,t)}var o=this.loaded[e.source],i=e.uid,a=this;if(o&&o[i]){var l=o[i];\"parsing\"===l.status?l.reloadCallback=r:\"done\"===l.status&&l.parse(l.vectorTile,this.layerIndex,this.actor,t.bind(l))}},VectorTileWorkerSource.prototype.abortTile=function(e){var r=this.loading[e.source],t=e.uid;r&&r[t]&&r[t].abort&&(r[t].abort(),delete r[t])},VectorTileWorkerSource.prototype.removeTile=function(e){var r=this.loaded[e.source],t=e.uid;r&&r[t]&&delete r[t]},VectorTileWorkerSource.prototype.loadVectorData=function(e,r){function t(e,t){if(e)return r(e);var o=new vt.VectorTile(new Protobuf(t.data));o.rawData=t.data,o.cacheControl=t.cacheControl,o.expires=t.expires,r(e,o)}var o=ajax.getArrayBuffer(e.url,t.bind(this));return function(){o.abort()}},VectorTileWorkerSource.prototype.redoPlacement=function(e,r){var t=this.loaded[e.source],o=this.loading[e.source],i=e.uid;if(t&&t[i]){var a=t[i],l=a.redoPlacement(e.angle,e.pitch,e.showCollisionBoxes);l.result&&r(null,l.result,l.transferables)}else o&&o[i]&&(o[i].angle=e.angle)},module.exports=VectorTileWorkerSource;\n},{\"../util/ajax\":194,\"../util/util\":215,\"./worker_tile\":101,\"pbf\":25,\"vector-tile\":34}],99:[function(_dereq_,module,exports){\n\"use strict\";var ajax=_dereq_(\"../util/ajax\"),ImageSource=_dereq_(\"./image_source\"),VideoSource=function(t){function e(e,o,i,r){t.call(this,e,o,i,r),this.roundZoom=!0,this.type=\"video\",this.options=o}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.load=function(){var t=this,e=this.options;this.urls=e.urls,ajax.getVideo(e.urls,function(e,o){if(e)return t.fire(\"error\",{error:e});t.video=o,t.video.loop=!0;var i;t.video.addEventListener(\"playing\",function(){i=t.map.style.animationLoop.set(1/0),t.map._rerender()}),t.video.addEventListener(\"pause\",function(){t.map.style.animationLoop.cancel(i)}),t.map&&t.video.play(),t._finishLoading()})},e.prototype.getVideo=function(){return this.video},e.prototype.onAdd=function(t){this.map||(this.load(),this.map=t,this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},e.prototype.prepare=function(){!this.tile||this.video.readyState<2||this._prepareImage(this.map.painter.gl,this.video)},e.prototype.serialize=function(){return{type:\"video\",urls:this.urls,coordinates:this.coordinates}},e}(ImageSource);module.exports=VideoSource;\n},{\"../util/ajax\":194,\"./image_source\":86}],100:[function(_dereq_,module,exports){\n\"use strict\";var Actor=_dereq_(\"../util/actor\"),StyleLayerIndex=_dereq_(\"../style/style_layer_index\"),VectorTileWorkerSource=_dereq_(\"./vector_tile_worker_source\"),GeoJSONWorkerSource=_dereq_(\"./geojson_worker_source\"),globalRTLTextPlugin=_dereq_(\"./rtl_text_plugin\"),Worker=function(e){var r=this;this.self=e,this.actor=new Actor(e,this),this.layerIndexes={},this.workerSourceTypes={vector:VectorTileWorkerSource,geojson:GeoJSONWorkerSource},this.workerSources={},this.self.registerWorkerSource=function(e,o){if(r.workerSourceTypes[e])throw new Error('Worker source with name \"'+e+'\" already registered.');r.workerSourceTypes[e]=o},this.self.registerRTLTextPlugin=function(e){if(globalRTLTextPlugin.applyArabicShaping||globalRTLTextPlugin.processBidirectionalText)throw new Error(\"RTL text plugin already registered.\");globalRTLTextPlugin.applyArabicShaping=e.applyArabicShaping,globalRTLTextPlugin.processBidirectionalText=e.processBidirectionalText}};Worker.prototype.setLayers=function(e,r){this.getLayerIndex(e).replace(r)},Worker.prototype.updateLayers=function(e,r){this.getLayerIndex(e).update(r.layers,r.removedIds,r.symbolOrder)},Worker.prototype.loadTile=function(e,r,o){this.getWorkerSource(e,r.type).loadTile(r,o)},Worker.prototype.reloadTile=function(e,r,o){this.getWorkerSource(e,r.type).reloadTile(r,o)},Worker.prototype.abortTile=function(e,r){this.getWorkerSource(e,r.type).abortTile(r)},Worker.prototype.removeTile=function(e,r){this.getWorkerSource(e,r.type).removeTile(r)},Worker.prototype.removeSource=function(e,r){var o=this.getWorkerSource(e,r.type);void 0!==o.removeSource&&o.removeSource(r)},Worker.prototype.redoPlacement=function(e,r,o){this.getWorkerSource(e,r.type).redoPlacement(r,o)},Worker.prototype.loadWorkerSource=function(e,r,o){try{this.self.importScripts(r.url),o()}catch(e){o(e)}},Worker.prototype.loadRTLTextPlugin=function(e,r,o){try{globalRTLTextPlugin.applyArabicShaping||globalRTLTextPlugin.processBidirectionalText||this.self.importScripts(r)}catch(e){o(e)}},Worker.prototype.getLayerIndex=function(e){var r=this.layerIndexes[e];return r||(r=this.layerIndexes[e]=new StyleLayerIndex),r},Worker.prototype.getWorkerSource=function(e,r){var o=this;if(this.workerSources[e]||(this.workerSources[e]={}),!this.workerSources[e][r]){var t={send:function(r,t,i,n){o.actor.send(r,t,i,n,e)}};this.workerSources[e][r]=new this.workerSourceTypes[r](t,this.getLayerIndex(e))}return this.workerSources[e][r]},module.exports=function(e){return new Worker(e)};\n},{\"../style/style_layer_index\":157,\"../util/actor\":193,\"./geojson_worker_source\":84,\"./rtl_text_plugin\":91,\"./vector_tile_worker_source\":98}],101:[function(_dereq_,module,exports){\n\"use strict\";function recalculateLayers(e,i){for(var r=0,o=e.layers;r=B.maxzoom||B.layout&&\"none\"===B.layout.visibility)){for(var b=0,k=x;b=0;w--){var A=n[i.symbolOrder[w]];A&&t.symbolBuckets.push(A)}if(0===this.symbolBuckets.length)return T(new CollisionTile(this.angle,this.pitch,this.collisionBoxArray));var D=0,I=Object.keys(c.iconDependencies),O=util.mapObject(c.glyphDependencies,function(e){return Object.keys(e).map(Number)}),L=function(e){if(e)return o(e);if(D++,2===D){for(var i=new CollisionTile(t.angle,t.pitch,t.collisionBoxArray),r=0,s=t.symbolBuckets;r\"===i||\"<=\"===i||\">=\"===i?compileComparisonOp(e[1],e[2],i,!0):\"any\"===i?compileLogicalOp(e.slice(1),\"||\"):\"all\"===i?compileLogicalOp(e.slice(1),\"&&\"):\"none\"===i?compileNegation(compileLogicalOp(e.slice(1),\"||\")):\"in\"===i?compileInOp(e[1],e.slice(2)):\"!in\"===i?compileNegation(compileInOp(e[1],e.slice(2))):\"has\"===i?compileHasOp(e[1]):\"!has\"===i?compileNegation(compileHasOp(e[1])):\"true\";return\"(\"+n+\")\"}function compilePropertyReference(e){return\"$type\"===e?\"f.type\":\"$id\"===e?\"f.id\":\"p[\"+JSON.stringify(e)+\"]\"}function compileComparisonOp(e,i,n,r){var o=compilePropertyReference(e),t=\"$type\"===e?types.indexOf(i):JSON.stringify(i);return(r?\"typeof \"+o+\"=== typeof \"+t+\"&&\":\"\")+o+n+t}function compileLogicalOp(e,i){return e.map(compile).join(i)}function compileInOp(e,i){\"$type\"===e&&(i=i.map(function(e){return types.indexOf(e)}));var n=JSON.stringify(i.sort(compare)),r=compilePropertyReference(e);return i.length<=200?n+\".indexOf(\"+r+\") !== -1\":\"function(v, a, i, j) {while (i <= j) { var m = (i + j) >> 1; if (a[m] === v) return true; if (a[m] > v) j = m - 1; else i = m + 1;}return false; }(\"+r+\", \"+n+\",0,\"+(i.length-1)+\")\"}function compileHasOp(e){return\"$id\"===e?'\"id\" in f':JSON.stringify(e)+\" in p\"}function compileNegation(e){return\"!(\"+e+\")\"}function compare(e,i){return ei?1:0}module.exports=createFilter;var types=[\"Unknown\",\"Point\",\"LineString\",\"Polygon\"];\n},{}],106:[function(_dereq_,module,exports){\n\"use strict\";function xyz2lab(r){return r>t3?Math.pow(r,1/3):r/t2+t0}function lab2xyz(r){return r>t1?r*r*r:t2*(r-t0)}function xyz2rgb(r){return 255*(r<=.0031308?12.92*r:1.055*Math.pow(r,1/2.4)-.055)}function rgb2xyz(r){return r/=255,r<=.04045?r/12.92:Math.pow((r+.055)/1.055,2.4)}function rgbToLab(r){var t=rgb2xyz(r[0]),a=rgb2xyz(r[1]),n=rgb2xyz(r[2]),b=xyz2lab((.4124564*t+.3575761*a+.1804375*n)/Xn),o=xyz2lab((.2126729*t+.7151522*a+.072175*n)/Yn),g=xyz2lab((.0193339*t+.119192*a+.9503041*n)/Zn);return[116*o-16,500*(b-o),200*(o-g),r[3]]}function labToRgb(r){var t=(r[0]+16)/116,a=isNaN(r[1])?t:t+r[1]/500,n=isNaN(r[2])?t:t-r[2]/200;return t=Yn*lab2xyz(t),a=Xn*lab2xyz(a),n=Zn*lab2xyz(n),[xyz2rgb(3.2404542*a-1.5371385*t-.4985314*n),xyz2rgb(-.969266*a+1.8760108*t+.041556*n),xyz2rgb(.0556434*a-.2040259*t+1.0572252*n),r[3]]}function rgbToHcl(r){var t=rgbToLab(r),a=t[0],n=t[1],b=t[2],o=Math.atan2(b,n)*rad2deg;return[o<0?o+360:o,Math.sqrt(n*n+b*b),a,r[3]]}function hclToRgb(r){var t=r[0]*deg2rad,a=r[1],n=r[2];return labToRgb([n,Math.cos(t)*a,Math.sin(t)*a,r[3]])}var Xn=.95047,Yn=1,Zn=1.08883,t0=4/29,t1=6/29,t2=3*t1*t1,t3=t1*t1*t1,deg2rad=Math.PI/180,rad2deg=180/Math.PI;module.exports={lab:{forward:rgbToLab,reverse:labToRgb},hcl:{forward:rgbToHcl,reverse:hclToRgb}};\n},{}],107:[function(_dereq_,module,exports){\n\"use strict\";function identityFunction(t){return t}function createFunction(t,e){var o,n=\"color\"===e.type;if(isFunctionDefinition(t)){var r=t.stops&&\"object\"==typeof t.stops[0][0],a=r||void 0!==t.property,i=r||!a,s=t.type||(\"interpolated\"===e.function?\"exponential\":\"interval\");n&&(t=extend({},t),t.stops&&(t.stops=t.stops.map(function(t){return[t[0],parseColor(t[1])]})),t.default?t.default=parseColor(t.default):t.default=parseColor(e.default));var u,p,l;if(\"exponential\"===s)u=evaluateExponentialFunction;else if(\"interval\"===s)u=evaluateIntervalFunction;else if(\"categorical\"===s){u=evaluateCategoricalFunction,p=Object.create(null);for(var c=0,f=t.stops;c=t.stops[n-1][0])return t.stops[n-1][1];var r=findStopLessThanOrEqualTo(t.stops,o);return t.stops[r][1]}function evaluateExponentialFunction(t,e,o){var n=void 0!==t.base?t.base:1;if(\"number\"!==getType(o))return coalesce(t.default,e.default);var r=t.stops.length;if(1===r)return t.stops[0][1];if(o<=t.stops[0][0])return t.stops[0][1];if(o>=t.stops[r-1][0])return t.stops[r-1][1];var a=findStopLessThanOrEqualTo(t.stops,o),i=interpolationFactor(o,n,t.stops[a][0],t.stops[a+1][0]),s=t.stops[a][1],u=t.stops[a+1][1],p=interpolate[e.type]||identityFunction;return\"function\"==typeof s?function(){var t=s.apply(void 0,arguments),e=u.apply(void 0,arguments);if(void 0!==t&&void 0!==e)return p(t,e,i)}:p(s,u,i)}function evaluateIdentityFunction(t,e,o){return\"color\"===e.type?o=parseColor(o):getType(o)!==e.type&&(o=void 0),coalesce(o,t.default,e.default)}function findStopLessThanOrEqualTo(t,e){for(var o,n,r=t.length,a=0,i=r-1,s=0;a<=i;){if(s=Math.floor((a+i)/2),o=t[s][0],n=t[s+1][0],e===o||e>o&&ee&&(i=s-1)}return Math.max(s-1,0)}function isFunctionDefinition(t){return\"object\"==typeof t&&(t.stops||\"identity\"===t.type)}function interpolationFactor(t,e,o,n){var r=n-o,a=t-o;return 1===e?a/r:(Math.pow(e,a)-1)/(Math.pow(e,r)-1)}var colorSpaces=_dereq_(\"./color_spaces\"),parseColor=_dereq_(\"../util/parse_color\"),extend=_dereq_(\"../util/extend\"),getType=_dereq_(\"../util/get_type\"),interpolate=_dereq_(\"../util/interpolate\");module.exports=createFunction,module.exports.isFunctionDefinition=isFunctionDefinition,module.exports.interpolationFactor=interpolationFactor,module.exports.findStopLessThanOrEqualTo=findStopLessThanOrEqualTo;\n},{\"../util/extend\":121,\"../util/get_type\":122,\"../util/interpolate\":123,\"../util/parse_color\":124,\"./color_spaces\":106}],108:[function(_dereq_,module,exports){\n\"use strict\";function key(r){return stringify(refProperties.map(function(e){return r[e]}))}function groupByLayout(r){for(var e={},t=0;t255?255:e}function clamp_css_float(e){return e<0?0:e>1?1:e}function parse_css_int(e){return clamp_css_byte(\"%\"===e[e.length-1]?parseFloat(e)/100*255:parseInt(e))}function parse_css_float(e){return clamp_css_float(\"%\"===e[e.length-1]?parseFloat(e)/100:parseFloat(e))}function css_hue_to_rgb(e,r,l){return l<0?l+=1:l>1&&(l-=1),6*l<1?e+(r-e)*l*6:2*l<1?r:3*l<2?e+(r-e)*(2/3-l)*6:e}function parseCSSColor(e){var r=e.replace(/ /g,\"\").toLowerCase();if(r in kCSSColorTable)return kCSSColorTable[r].slice();if(\"#\"===r[0]){if(4===r.length){var l=parseInt(r.substr(1),16);return l>=0&&l<=4095?[(3840&l)>>4|(3840&l)>>8,240&l|(240&l)>>4,15&l|(15&l)<<4,1]:null}if(7===r.length){var l=parseInt(r.substr(1),16);return l>=0&&l<=16777215?[(16711680&l)>>16,(65280&l)>>8,255&l,1]:null}return null}var a=r.indexOf(\"(\"),t=r.indexOf(\")\");if(a!==-1&&t+1===r.length){var n=r.substr(0,a),s=r.substr(a+1,t-(a+1)).split(\",\"),o=1;switch(n){case\"rgba\":if(4!==s.length)return null;o=parse_css_float(s.pop());case\"rgb\":return 3!==s.length?null:[parse_css_int(s[0]),parse_css_int(s[1]),parse_css_int(s[2]),o];case\"hsla\":if(4!==s.length)return null;o=parse_css_float(s.pop());case\"hsl\":if(3!==s.length)return null;var i=(parseFloat(s[0])%360+360)%360/360,u=parse_css_float(s[1]),g=parse_css_float(s[2]),d=g<=.5?g*(u+1):g+u-g*u,c=2*g-d;return[clamp_css_byte(255*css_hue_to_rgb(c,d,i+1/3)),clamp_css_byte(255*css_hue_to_rgb(c,d,i)),clamp_css_byte(255*css_hue_to_rgb(c,d,i-1/3)),o];default:return null}}return null}var kCSSColorTable={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],rebeccapurple:[102,51,153,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};try{exports.parseCSSColor=parseCSSColor}catch(e){}\n},{}],110:[function(_dereq_,module,exports){\nfunction sss(r){var e,t,s,n,u,a;switch(typeof r){case\"object\":if(null===r)return null;if(isArray(r)){for(s=\"[\",t=r.length-1,e=0;e-1&&(s+=sss(r[e])),s+\"]\"}for(n=objKeys(r).sort(),t=n.length,s=\"{\",u=n[e=0],a=t>0&&void 0!==r[u];e15?\"\\\\u00\"+e.toString(16):\"\\\\u000\"+e.toString(16)}};module.exports=function(r){if(void 0!==r)return\"\"+sss(r)},module.exports.stringSearch=strReg,module.exports.stringReplace=strReplace;\n},{}],111:[function(_dereq_,module,exports){\nfunction isObjectLike(r){return!!r&&\"object\"==typeof r}function arraySome(r,e){for(var a=-1,t=r.length;++as))return!1;for(;++c-1&&t%1==0&&t<=MAX_SAFE_INTEGER}function isObject(t){var e=typeof t;return!!t&&(\"object\"==e||\"function\"==e)}function isObjectLike(t){return!!t&&\"object\"==typeof t}var MAX_SAFE_INTEGER=9007199254740991,argsTag=\"[object Arguments]\",funcTag=\"[object Function]\",genTag=\"[object GeneratorFunction]\",objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,objectToString=objectProto.toString,propertyIsEnumerable=objectProto.propertyIsEnumerable;module.exports=isArguments;\n},{}],115:[function(_dereq_,module,exports){\nfunction isObjectLike(t){return!!t&&\"object\"==typeof t}function getNative(t,r){var e=null==t?void 0:t[r];return isNative(e)?e:void 0}function isLength(t){return\"number\"==typeof t&&t>-1&&t%1==0&&t<=MAX_SAFE_INTEGER}function isFunction(t){return isObject(t)&&objToString.call(t)==funcTag}function isObject(t){var r=typeof t;return!!t&&(\"object\"==r||\"function\"==r)}function isNative(t){return null!=t&&(isFunction(t)?reIsNative.test(fnToString.call(t)):isObjectLike(t)&&reIsHostCtor.test(t))}var arrayTag=\"[object Array]\",funcTag=\"[object Function]\",reIsHostCtor=/^\\[object .+?Constructor\\]$/,objectProto=Object.prototype,fnToString=Function.prototype.toString,hasOwnProperty=objectProto.hasOwnProperty,objToString=objectProto.toString,reIsNative=RegExp(\"^\"+fnToString.call(hasOwnProperty).replace(/[\\\\^$.*+?()[\\]{}|]/g,\"\\\\$&\").replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g,\"$1.*?\")+\"$\"),nativeIsArray=getNative(Array,\"isArray\"),MAX_SAFE_INTEGER=9007199254740991,isArray=nativeIsArray||function(t){return isObjectLike(t)&&isLength(t.length)&&objToString.call(t)==arrayTag};module.exports=isArray;\n},{}],116:[function(_dereq_,module,exports){\nfunction isEqual(a,l,i,e){i=\"function\"==typeof i?bindCallback(i,e,3):void 0;var s=i?i(a,l):void 0;return void 0===s?baseIsEqual(a,l,i):!!s}var baseIsEqual=_dereq_(\"lodash._baseisequal\"),bindCallback=_dereq_(\"lodash._bindcallback\");module.exports=isEqual;\n},{\"lodash._baseisequal\":111,\"lodash._bindcallback\":112}],117:[function(_dereq_,module,exports){\nfunction isLength(a){return\"number\"==typeof a&&a>-1&&a%1==0&&a<=MAX_SAFE_INTEGER}function isObjectLike(a){return!!a&&\"object\"==typeof a}function isTypedArray(a){return isObjectLike(a)&&isLength(a.length)&&!!typedArrayTags[objectToString.call(a)]}var MAX_SAFE_INTEGER=9007199254740991,argsTag=\"[object Arguments]\",arrayTag=\"[object Array]\",boolTag=\"[object Boolean]\",dateTag=\"[object Date]\",errorTag=\"[object Error]\",funcTag=\"[object Function]\",mapTag=\"[object Map]\",numberTag=\"[object Number]\",objectTag=\"[object Object]\",regexpTag=\"[object RegExp]\",setTag=\"[object Set]\",stringTag=\"[object String]\",weakMapTag=\"[object WeakMap]\",arrayBufferTag=\"[object ArrayBuffer]\",dataViewTag=\"[object DataView]\",float32Tag=\"[object Float32Array]\",float64Tag=\"[object Float64Array]\",int8Tag=\"[object Int8Array]\",int16Tag=\"[object Int16Array]\",int32Tag=\"[object Int32Array]\",uint8Tag=\"[object Uint8Array]\",uint8ClampedTag=\"[object Uint8ClampedArray]\",uint16Tag=\"[object Uint16Array]\",uint32Tag=\"[object Uint32Array]\",typedArrayTags={};typedArrayTags[float32Tag]=typedArrayTags[float64Tag]=typedArrayTags[int8Tag]=typedArrayTags[int16Tag]=typedArrayTags[int32Tag]=typedArrayTags[uint8Tag]=typedArrayTags[uint8ClampedTag]=typedArrayTags[uint16Tag]=typedArrayTags[uint32Tag]=!0,typedArrayTags[argsTag]=typedArrayTags[arrayTag]=typedArrayTags[arrayBufferTag]=typedArrayTags[boolTag]=typedArrayTags[dataViewTag]=typedArrayTags[dateTag]=typedArrayTags[errorTag]=typedArrayTags[funcTag]=typedArrayTags[mapTag]=typedArrayTags[numberTag]=typedArrayTags[objectTag]=typedArrayTags[regexpTag]=typedArrayTags[setTag]=typedArrayTags[stringTag]=typedArrayTags[weakMapTag]=!1;var objectProto=Object.prototype,objectToString=objectProto.toString;module.exports=isTypedArray;\n},{}],118:[function(_dereq_,module,exports){\nfunction baseProperty(e){return function(t){return null==t?void 0:t[e]}}function isArrayLike(e){return null!=e&&isLength(getLength(e))}function isIndex(e,t){return e=\"number\"==typeof e||reIsUint.test(e)?+e:-1,t=null==t?MAX_SAFE_INTEGER:t,e>-1&&e%1==0&&e-1&&e%1==0&&e<=MAX_SAFE_INTEGER}function shimKeys(e){for(var t=keysIn(e),r=t.length,n=r&&e.length,s=!!n&&isLength(n)&&(isArray(e)||isArguments(e)),o=-1,i=[];++o0;++n\":{},\">=\":{},\"<\":{},\"<=\":{},\"in\":{},\"!in\":{},\"all\":{},\"any\":{},\"none\":{},\"has\":{},\"!has\":{}}},\"geometry_type\":{\"type\":\"enum\",\"values\":{\"Point\":{},\"LineString\":{},\"Polygon\":{}}},\"function\":{\"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\":false}},\"function_stop\":{\"type\":\"array\",\"minimum\":0,\"maximum\":22,\"value\":[\"number\",\"color\"],\"length\":2},\"light\":{\"anchor\":{\"type\":\"enum\",\"default\":\"viewport\",\"values\":{\"map\":{},\"viewport\":{}},\"transition\":false},\"position\":{\"type\":\"array\",\"default\":[1.15,210,30],\"length\":3,\"value\":\"number\",\"transition\":true,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":false},\"color\":{\"type\":\"color\",\"default\":\"#ffffff\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":false,\"transition\":true},\"intensity\":{\"type\":\"number\",\"default\":0.5,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":false,\"transition\":true}},\"paint\":[\"paint_fill\",\"paint_line\",\"paint_circle\",\"paint_fill-extrusion\",\"paint_symbol\",\"paint_raster\",\"paint_background\"],\"paint_fill\":{\"fill-antialias\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":true},\"fill-opacity\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true},\"fill-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[{\"!\":\"fill-pattern\"}]},\"fill-outline-color\":{\"type\":\"color\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[{\"!\":\"fill-pattern\"},{\"fill-antialias\":true}]},\"fill-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\"},\"fill-translate-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"fill-translate\"]},\"fill-pattern\":{\"type\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"transition\":true}},\"paint_fill-extrusion\":{\"fill-extrusion-opacity\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":false,\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true},\"fill-extrusion-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[{\"!\":\"fill-extrusion-pattern\"}]},\"fill-extrusion-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\"},\"fill-extrusion-translate-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"fill-extrusion-translate\"]},\"fill-extrusion-pattern\":{\"type\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"transition\":true},\"fill-extrusion-height\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"default\":0,\"minimum\":0,\"maximum\":65535,\"units\":\"meters\",\"transition\":true},\"fill-extrusion-base\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"default\":0,\"minimum\":0,\"maximum\":65535,\"units\":\"meters\",\"transition\":true,\"requires\":[\"fill-extrusion-height\"]}},\"paint_line\":{\"line-opacity\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true},\"line-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[{\"!\":\"line-pattern\"}]},\"line-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\"},\"line-translate-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"line-translate\"]},\"line-width\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\"},\"line-gap-width\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\"},\"line-offset\":{\"type\":\"number\",\"default\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\"},\"line-blur\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\"},\"line-dasharray\":{\"type\":\"array\",\"value\":\"number\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"minimum\":0,\"transition\":true,\"units\":\"line widths\",\"requires\":[{\"!\":\"line-pattern\"}]},\"line-pattern\":{\"type\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"transition\":true}},\"paint_circle\":{\"circle-radius\":{\"type\":\"number\",\"default\":5,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\"},\"circle-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true},\"circle-blur\":{\"type\":\"number\",\"default\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true},\"circle-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true},\"circle-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\"},\"circle-translate-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"circle-translate\"]},\"circle-pitch-scale\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\"},\"circle-stroke-width\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\"},\"circle-stroke-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true},\"circle-stroke-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true}},\"paint_symbol\":{\"icon-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[\"icon-image\"]},\"icon-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[\"icon-image\"]},\"icon-halo-color\":{\"type\":\"color\",\"default\":\"rgba(0, 0, 0, 0)\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[\"icon-image\"]},\"icon-halo-width\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"icon-image\"]},\"icon-halo-blur\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"icon-image\"]},\"icon-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"icon-image\"]},\"icon-translate-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"icon-image\",\"icon-translate\"]},\"text-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[\"text-field\"]},\"text-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[\"text-field\"]},\"text-halo-color\":{\"type\":\"color\",\"default\":\"rgba(0, 0, 0, 0)\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[\"text-field\"]},\"text-halo-width\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"text-field\"]},\"text-halo-blur\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"text-field\"]},\"text-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"text-field\"]},\"text-translate-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"text-field\",\"text-translate\"]}},\"paint_raster\":{\"raster-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true},\"raster-hue-rotate\":{\"type\":\"number\",\"default\":0,\"period\":360,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"degrees\"},\"raster-brightness-min\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"default\":0,\"minimum\":0,\"maximum\":1,\"transition\":true},\"raster-brightness-max\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true},\"raster-saturation\":{\"type\":\"number\",\"default\":0,\"minimum\":-1,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true},\"raster-contrast\":{\"type\":\"number\",\"default\":0,\"minimum\":-1,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true},\"raster-fade-duration\":{\"type\":\"number\",\"default\":300,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"milliseconds\"}},\"paint_background\":{\"background-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"requires\":[{\"!\":\"background-pattern\"}]},\"background-pattern\":{\"type\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"transition\":true},\"background-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true}},\"transition\":{\"duration\":{\"type\":\"number\",\"default\":300,\"minimum\":0,\"units\":\"milliseconds\"},\"delay\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"units\":\"milliseconds\"}}}\n},{}],121:[function(_dereq_,module,exports){\n\"use strict\";module.exports=function(r){for(var t=arguments,e=1;e7)return[new ValidationError(u,a,\"constants have been deprecated as of v8\")];if(!(a in l.constants))return[new ValidationError(u,a,'constant \"%s\" not found',a)];e=extend({},e,{value:l.constants[a]})}return n.function&&\"object\"===getType(a)?r(e):n.type&&i[n.type]?i[n.type](e):t(extend({},e,{valueSpec:n.type?o[n.type]:n}))};\n},{\"../error/validation_error\":104,\"../util/extend\":121,\"../util/get_type\":122,\"./validate_array\":128,\"./validate_boolean\":129,\"./validate_color\":130,\"./validate_constants\":131,\"./validate_enum\":132,\"./validate_filter\":133,\"./validate_function\":134,\"./validate_layer\":136,\"./validate_light\":138,\"./validate_number\":139,\"./validate_object\":140,\"./validate_source\":143,\"./validate_string\":144}],128:[function(_dereq_,module,exports){\n\"use strict\";var getType=_dereq_(\"../util/get_type\"),validate=_dereq_(\"./validate\"),ValidationError=_dereq_(\"../error/validation_error\");module.exports=function(e){var r=e.value,t=e.valueSpec,a=e.style,n=e.styleSpec,l=e.key,i=e.arrayElementValidator||validate;if(\"array\"!==getType(r))return[new ValidationError(l,r,\"array expected, %s found\",getType(r))];if(t.length&&r.length!==t.length)return[new ValidationError(l,r,\"array length %d expected, length %d found\",t.length,r.length)];if(t[\"min-length\"]&&r.length7)return t?[new ValidationError(e,t,\"constants have been deprecated as of v8\")]:[];var o=getType(t);if(\"object\"!==o)return[new ValidationError(e,t,\"object expected, %s found\",o)];var n=[];for(var i in t)\"@\"!==i[0]&&n.push(new ValidationError(e+\".\"+i,t[i],'constants must start with \"@\"'));return n};\n},{\"../error/validation_error\":104,\"../util/get_type\":122}],132:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),unbundle=_dereq_(\"../util/unbundle_jsonlint\");module.exports=function(e){var r=e.key,n=e.value,u=e.valueSpec,o=[];return Array.isArray(u.values)?u.values.indexOf(unbundle(n))===-1&&o.push(new ValidationError(r,n,\"expected one of [%s], %s found\",u.values.join(\", \"),n)):Object.keys(u.values).indexOf(unbundle(n))===-1&&o.push(new ValidationError(r,n,\"expected one of [%s], %s found\",Object.keys(u.values).join(\", \"),n)),o};\n},{\"../error/validation_error\":104,\"../util/unbundle_jsonlint\":126}],133:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),validateEnum=_dereq_(\"./validate_enum\"),getType=_dereq_(\"../util/get_type\"),unbundle=_dereq_(\"../util/unbundle_jsonlint\");module.exports=function e(r){var t,a=r.value,n=r.key,l=r.styleSpec,s=[];if(\"array\"!==getType(a))return[new ValidationError(n,a,\"array expected, %s found\",getType(a))];if(a.length<1)return[new ValidationError(n,a,\"filter array must have at least 1 element\")];switch(s=s.concat(validateEnum({key:n+\"[0]\",value:a[0],valueSpec:l.filter_operator,style:r.style,styleSpec:r.styleSpec})),unbundle(a[0])){case\"<\":case\"<=\":case\">\":case\">=\":a.length>=2&&\"$type\"===unbundle(a[1])&&s.push(new ValidationError(n,a,'\"$type\" cannot be use with operator \"%s\"',a[0]));case\"==\":case\"!=\":3!==a.length&&s.push(new ValidationError(n,a,'filter array for operator \"%s\" must have 3 elements',a[0]));case\"in\":case\"!in\":a.length>=2&&(t=getType(a[1]),\"string\"!==t&&s.push(new ValidationError(n+\"[1]\",a[1],\"string expected, %s found\",t)));for(var o=2;ounbundle(r[0].zoom))return[new ValidationError(o,r[0].zoom,\"stop zoom values must appear in ascending order\")];unbundle(r[0].zoom)!==l&&(l=unbundle(r[0].zoom),i=void 0,s={}),t=t.concat(validateObject({key:o+\"[0]\",value:r[0],valueSpec:{zoom:{}},style:e.style,styleSpec:e.styleSpec,objectElementValidators:{zoom:validateNumber,value:a}}))}else t=t.concat(a({key:o+\"[0]\",value:r[0],valueSpec:{},style:e.style,styleSpec:e.styleSpec}));return t.concat(validate({key:o+\"[1]\",value:r[1],valueSpec:u,style:e.style,styleSpec:e.styleSpec}))}function a(e){var t=getType(e.value),r=unbundle(e.value);if(n){if(t!==n)return[new ValidationError(e.key,e.value,\"%s stop domain type must match previous stop domain type %s\",t,n)]}else n=t;if(\"number\"!==t&&\"string\"!==t&&\"boolean\"!==t)return[new ValidationError(e.key,e.value,\"stop domain value must be a number, string, or boolean\")];if(\"number\"!==t&&\"categorical\"!==p){var a=\"number expected, %s found\";return u[\"property-function\"]&&void 0===p&&(a+='\\nIf you intended to use a categorical function, specify `\"type\": \"categorical\"`.'),[new ValidationError(e.key,e.value,a,t)]}return\"categorical\"!==p||\"number\"!==t||isFinite(r)&&Math.floor(r)===r?\"number\"===t&&void 0!==i&&r=8&&(d&&!e.valueSpec[\"property-function\"]?v.push(new ValidationError(e.key,e.value,\"property functions not supported\")):y&&!e.valueSpec[\"zoom-function\"]&&v.push(new ValidationError(e.key,e.value,\"zoom functions not supported\"))),\"categorical\"!==p&&!c||void 0!==e.value.property||v.push(new ValidationError(e.key,e.value,'\"property\" property is required')),v};\n},{\"../error/validation_error\":104,\"../util/get_type\":122,\"../util/unbundle_jsonlint\":126,\"./validate\":127,\"./validate_array\":128,\"./validate_number\":139,\"./validate_object\":140}],135:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),validateString=_dereq_(\"./validate_string\");module.exports=function(r){var e=r.value,t=r.key,a=validateString(r);return a.length?a:(e.indexOf(\"{fontstack}\")===-1&&a.push(new ValidationError(t,e,'\"glyphs\" url must include a \"{fontstack}\" token')),e.indexOf(\"{range}\")===-1&&a.push(new ValidationError(t,e,'\"glyphs\" url must include a \"{range}\" token')),a)};\n},{\"../error/validation_error\":104,\"./validate_string\":144}],136:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),unbundle=_dereq_(\"../util/unbundle_jsonlint\"),validateObject=_dereq_(\"./validate_object\"),validateFilter=_dereq_(\"./validate_filter\"),validatePaintProperty=_dereq_(\"./validate_paint_property\"),validateLayoutProperty=_dereq_(\"./validate_layout_property\"),extend=_dereq_(\"../util/extend\");module.exports=function(e){var r=[],t=e.value,a=e.key,i=e.style,l=e.styleSpec;t.type||t.ref||r.push(new ValidationError(a,t,'either \"type\" or \"ref\" is required'));var u=unbundle(t.type),n=unbundle(t.ref);if(t.id)for(var o=unbundle(t.id),s=0;sm.maximum?[new ValidationError(r,i,\"%s is greater than the maximum value %s\",i,m.maximum)]:[]};\n},{\"../error/validation_error\":104,\"../util/get_type\":122}],140:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),getType=_dereq_(\"../util/get_type\"),validateSpec=_dereq_(\"./validate\");module.exports=function(e){var r=e.key,t=e.value,i=e.valueSpec||{},a=e.objectElementValidators||{},o=e.style,l=e.styleSpec,n=[],u=getType(t);if(\"object\"!==u)return[new ValidationError(r,t,\"object expected, %s found\",u)];for(var d in t){var p=d.split(\".\")[0],s=i[p]||i[\"*\"],c=void 0;if(a[p])c=a[p];else if(i[p])c=validateSpec;else if(a[\"*\"])c=a[\"*\"];else{if(!i[\"*\"]){n.push(new ValidationError(r,t[d],'unknown property \"%s\"',d));continue}c=validateSpec}n=n.concat(c({key:(r?r+\".\":r)+d,value:t[d],valueSpec:s,style:o,styleSpec:l,object:t,objectKey:d}))}for(var v in i)i[v].required&&void 0===i[v].default&&void 0===t[v]&&n.push(new ValidationError(r,t,'missing required property \"%s\"',v));return n};\n},{\"../error/validation_error\":104,\"../util/get_type\":122,\"./validate\":127}],141:[function(_dereq_,module,exports){\n\"use strict\";var validateProperty=_dereq_(\"./validate_property\");module.exports=function(r){return validateProperty(r,\"paint\")};\n},{\"./validate_property\":142}],142:[function(_dereq_,module,exports){\n\"use strict\";var validate=_dereq_(\"./validate\"),ValidationError=_dereq_(\"../error/validation_error\"),getType=_dereq_(\"../util/get_type\");module.exports=function(e,t){var r=e.key,i=e.style,a=e.styleSpec,n=e.value,o=e.objectKey,l=a[t+\"_\"+e.layerType];if(!l)return[];var y=o.match(/^(.*)-transition$/);if(\"paint\"===t&&y&&l[y[1]]&&l[y[1]].transition)return validate({key:r,value:n,valueSpec:a.transition,style:i,styleSpec:a});var p=e.valueSpec||l[o];if(!p)return[new ValidationError(r,n,'unknown property \"%s\"',o)];var s;if(\"string\"===getType(n)&&p[\"property-function\"]&&!p.tokens&&(s=/^{([^}]+)}$/.exec(n)))return[new ValidationError(r,n,'\"%s\" does not support interpolation syntax\\nUse an identity property function instead: `{ \"type\": \"identity\", \"property\": %s` }`.',o,JSON.stringify(s[1]))];var u=[];return\"symbol\"===e.layerType&&\"text-field\"===o&&i&&!i.glyphs&&u.push(new ValidationError(r,n,'use of \"text-field\" requires a style \"glyphs\" property')),u.concat(validate({key:e.key,value:n,valueSpec:p,style:i,styleSpec:a}))};\n},{\"../error/validation_error\":104,\"../util/get_type\":122,\"./validate\":127}],143:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),unbundle=_dereq_(\"../util/unbundle_jsonlint\"),validateObject=_dereq_(\"./validate_object\"),validateEnum=_dereq_(\"./validate_enum\");module.exports=function(e){var a=e.value,t=e.key,r=e.styleSpec,l=e.style;if(!a.type)return[new ValidationError(t,a,'\"type\" is required')];var u=unbundle(a.type),i=[];switch(u){case\"vector\":case\"raster\":if(i=i.concat(validateObject({key:t,value:a,valueSpec:r.source_tile,style:e.style,styleSpec:r})),\"url\"in a)for(var s in a)[\"type\",\"url\",\"tileSize\"].indexOf(s)<0&&i.push(new ValidationError(t+\".\"+s,a[s],'a source with a \"url\" property may not include a \"%s\" property',s));return i;case\"geojson\":return validateObject({key:t,value:a,valueSpec:r.source_geojson,style:l,styleSpec:r});case\"video\":return validateObject({key:t,value:a,valueSpec:r.source_video,style:l,styleSpec:r});case\"image\":return validateObject({key:t,value:a,valueSpec:r.source_image,style:l,styleSpec:r});case\"canvas\":return validateObject({key:t,value:a,valueSpec:r.source_canvas,style:l,styleSpec:r});default:return validateEnum({key:t+\".type\",value:a.type,valueSpec:{values:[\"vector\",\"raster\",\"geojson\",\"video\",\"image\",\"canvas\"]},style:l,styleSpec:r})}};\n},{\"../error/validation_error\":104,\"../util/unbundle_jsonlint\":126,\"./validate_enum\":132,\"./validate_object\":140}],144:[function(_dereq_,module,exports){\n\"use strict\";var getType=_dereq_(\"../util/get_type\"),ValidationError=_dereq_(\"../error/validation_error\");module.exports=function(r){var e=r.value,t=r.key,i=getType(e);return\"string\"!==i?[new ValidationError(t,e,\"string expected, %s found\",i)]:[]};\n},{\"../error/validation_error\":104,\"../util/get_type\":122}],145:[function(_dereq_,module,exports){\n\"use strict\";function validateStyleMin(e,a){a=a||latestStyleSpec;var t=[];return t=t.concat(validate({key:\"\",value:e,valueSpec:a.$root,styleSpec:a,style:e,objectElementValidators:{glyphs:validateGlyphsURL,\"*\":function(){return[]}}})),a.$version>7&&e.constants&&(t=t.concat(validateConstants({key:\"constants\",value:e.constants,style:e,styleSpec:a}))),sortErrors(t)}function sortErrors(e){return[].concat(e).sort(function(e,a){return e.line-a.line})}function wrapCleanErrors(e){return function(){return sortErrors(e.apply(this,arguments))}}var validateConstants=_dereq_(\"./validate/validate_constants\"),validate=_dereq_(\"./validate/validate\"),latestStyleSpec=_dereq_(\"./reference/latest\"),validateGlyphsURL=_dereq_(\"./validate/validate_glyphs_url\");validateStyleMin.source=wrapCleanErrors(_dereq_(\"./validate/validate_source\")),validateStyleMin.light=wrapCleanErrors(_dereq_(\"./validate/validate_light\")),validateStyleMin.layer=wrapCleanErrors(_dereq_(\"./validate/validate_layer\")),validateStyleMin.filter=wrapCleanErrors(_dereq_(\"./validate/validate_filter\")),validateStyleMin.paintProperty=wrapCleanErrors(_dereq_(\"./validate/validate_paint_property\")),validateStyleMin.layoutProperty=wrapCleanErrors(_dereq_(\"./validate/validate_layout_property\")),module.exports=validateStyleMin;\n},{\"./reference/latest\":119,\"./validate/validate\":127,\"./validate/validate_constants\":131,\"./validate/validate_filter\":133,\"./validate/validate_glyphs_url\":135,\"./validate/validate_layer\":136,\"./validate/validate_layout_property\":137,\"./validate/validate_light\":138,\"./validate/validate_paint_property\":141,\"./validate/validate_source\":143}],146:[function(_dereq_,module,exports){\n\"use strict\";var AnimationLoop=function(){this.n=0,this.times=[]};AnimationLoop.prototype.stopped=function(){return this.times=this.times.filter(function(t){return t.time>=(new Date).getTime()}),!this.times.length},AnimationLoop.prototype.set=function(t){return this.times.push({id:this.n,time:t+(new Date).getTime()}),this.n++},AnimationLoop.prototype.cancel=function(t){this.times=this.times.filter(function(i){return i.id!==t})},module.exports=AnimationLoop;\n},{}],147:[function(_dereq_,module,exports){\n\"use strict\";var Evented=_dereq_(\"../util/evented\"),ajax=_dereq_(\"../util/ajax\"),browser=_dereq_(\"../util/browser\"),normalizeURL=_dereq_(\"../util/mapbox\").normalizeSpriteURL,SpritePosition=function(){this.x=0,this.y=0,this.width=0,this.height=0,this.pixelRatio=1,this.sdf=!1},ImageSprite=function(t){function e(e,i){var r=this;t.call(this),this.base=e,this.retina=browser.devicePixelRatio>1,this.setEventedParent(i);var a=this.retina?\"@2x\":\"\";ajax.getJSON(normalizeURL(e,a,\".json\"),function(t,e){return t?void r.fire(\"error\",{error:t}):(r.data=e,void(r.imgData&&r.fire(\"data\",{dataType:\"style\"})))}),ajax.getImage(normalizeURL(e,a,\".png\"),function(t,e){return t?void r.fire(\"error\",{error:t}):(r.imgData=browser.getImageData(e),r.width=e.width,void(r.data&&r.fire(\"data\",{dataType:\"style\"})))})}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.toJSON=function(){return this.base},e.prototype.loaded=function(){return!(!this.data||!this.imgData)},e.prototype.resize=function(){var t=this;if(browser.devicePixelRatio>1!==this.retina){var i=new e(this.base);i.on(\"data\",function(){t.data=i.data,t.imgData=i.imgData,t.width=i.width,t.retina=i.retina})}},e.prototype.getSpritePosition=function(t){if(!this.loaded())return new SpritePosition;var e=this.data&&this.data[t];return e&&this.imgData?e:new SpritePosition},e}(Evented);module.exports=ImageSprite;\n},{\"../util/ajax\":194,\"../util/browser\":195,\"../util/evented\":203,\"../util/mapbox\":210}],148:[function(_dereq_,module,exports){\n\"use strict\";var styleSpec=_dereq_(\"../style-spec/reference/latest\"),util=_dereq_(\"../util/util\"),Evented=_dereq_(\"../util/evented\"),validateStyle=_dereq_(\"./validate_style\"),StyleDeclaration=_dereq_(\"./style_declaration\"),StyleTransition=_dereq_(\"./style_transition\"),TRANSITION_SUFFIX=\"-transition\",Light=function(t){function i(i){t.call(this),this.properties=[\"anchor\",\"color\",\"position\",\"intensity\"],this._specifications=styleSpec.light,this.set(i)}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.set=function(t){var i=this;if(!this._validate(validateStyle.light,t)){this._declarations={},this._transitions={},this._transitionOptions={},this.calculated={},t=util.extend({anchor:this._specifications.anchor.default,color:this._specifications.color.default,position:this._specifications.position.default,intensity:this._specifications.intensity.default},t);for(var e=0,o=i.properties;eMath.floor(e)&&(t.lastIntegerZoom=Math.floor(e+1),t.lastIntegerZoomTime=Date.now()),t.lastZoom=e},t.prototype._checkLoaded=function(){if(!this._loaded)throw new Error(\"Style is not done loading\")},t.prototype.update=function(e,t){var r=this;if(this._changed){var i=Object.keys(this._updatedLayers),o=Object.keys(this._removedLayers);(i.length||o.length||this._updatedSymbolOrder)&&this._updateWorkerLayers(i,o);for(var s in r._updatedSources){var a=r._updatedSources[s];\"reload\"===a?r._reloadSource(s):\"clear\"===a&&r._clearSource(s)}this._applyClasses(e,t),this._resetUpdates(),this.fire(\"data\",{dataType:\"style\"})}},t.prototype._updateWorkerLayers=function(e,t){var r=this,i=this._updatedSymbolOrder?this._order.filter(function(e){return\"symbol\"===r._layers[e].type}):null;this.dispatcher.broadcast(\"updateLayers\",{layers:this._serializeLayers(e),removedIds:t,symbolOrder:i})},t.prototype._resetUpdates=function(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSymbolOrder=!1,this._updatedSources={},this._updatedPaintProps={},this._updatedAllPaintProps=!1},t.prototype.setState=function(e){var t=this;if(this._checkLoaded(),validateStyle.emitErrors(this,validateStyle(e)))return!1;e=util.extend({},e),e.layers=deref(e.layers);var r=diff(this.serialize(),e).filter(function(e){return!(e.command in ignoredDiffOperations)});if(0===r.length)return!1;var i=r.filter(function(e){return!(e.command in supportedDiffOperations)});if(i.length>0)throw new Error(\"Unimplemented: \"+i.map(function(e){return e.command}).join(\", \")+\".\");return r.forEach(function(e){\"setTransition\"!==e.command&&t[e.command].apply(t,e.args)}),this.stylesheet=e,!0},t.prototype.addSource=function(e,t,r){var i=this;if(this._checkLoaded(),void 0!==this.sourceCaches[e])throw new Error(\"There is already a source with this ID\");if(!t.type)throw new Error(\"The type property must be defined, but the only the following properties were given: \"+Object.keys(t)+\".\");var o=[\"vector\",\"raster\",\"geojson\",\"video\",\"image\",\"canvas\"],s=o.indexOf(t.type)>=0;if(!s||!this._validate(validateStyle.source,\"sources.\"+e,t,null,r)){var a=this.sourceCaches[e]=new SourceCache(e,t,this.dispatcher);a.style=this,a.setEventedParent(this,function(){return{isSourceLoaded:i.loaded(),source:a.serialize(),sourceId:e}}),a.onAdd(this.map),this._changed=!0}},t.prototype.removeSource=function(e){if(this._checkLoaded(),void 0===this.sourceCaches[e])throw new Error(\"There is no source with this ID\");var t=this.sourceCaches[e];delete this.sourceCaches[e],delete this._updatedSources[e],t.setEventedParent(null),t.clearTiles(),t.onRemove&&t.onRemove(this.map),this._changed=!0},t.prototype.getSource=function(e){return this.sourceCaches[e]&&this.sourceCaches[e].getSource()},t.prototype.addLayer=function(e,t,r){this._checkLoaded();var i=e.id;if(\"object\"==typeof e.source&&(this.addSource(i,e.source),e=util.extend(e,{source:i})),!this._validate(validateStyle.layer,\"layers.\"+i,e,{arrayIndex:-1},r)){var o=StyleLayer.create(e);this._validateLayer(o),o.setEventedParent(this,{layer:{id:i}});var s=t?this._order.indexOf(t):this._order.length;if(this._order.splice(s,0,i),this._layers[i]=o,this._removedLayers[i]&&o.source){var a=this._removedLayers[i];delete this._removedLayers[i],this._updatedSources[o.source]=a.type!==o.type?\"clear\":\"reload\"}this._updateLayer(o),\"symbol\"===o.type&&(this._updatedSymbolOrder=!0),this.updateClasses(i)}},t.prototype.moveLayer=function(e,t){this._checkLoaded(),this._changed=!0;var r=this._layers[e];if(!r)return void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be moved.\")});var i=this._order.indexOf(e);this._order.splice(i,1);var o=t?this._order.indexOf(t):this._order.length;this._order.splice(o,0,e),\"symbol\"===r.type&&(this._updatedSymbolOrder=!0,r.source&&!this._updatedSources[r.source]&&(this._updatedSources[r.source]=\"reload\"))},t.prototype.removeLayer=function(e){this._checkLoaded();var t=this._layers[e];if(!t)return void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be removed.\")});t.setEventedParent(null);var r=this._order.indexOf(e);this._order.splice(r,1),\"symbol\"===t.type&&(this._updatedSymbolOrder=!0),this._changed=!0,this._removedLayers[e]=t,delete this._layers[e],delete this._updatedLayers[e],delete this._updatedPaintProps[e]},t.prototype.getLayer=function(e){return this._layers[e]},t.prototype.setLayerZoomRange=function(e,t,r){this._checkLoaded();var i=this.getLayer(e);return i?void(i.minzoom===t&&i.maxzoom===r||(null!=t&&(i.minzoom=t),null!=r&&(i.maxzoom=r),this._updateLayer(i))):void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot have zoom extent.\")})},t.prototype.setFilter=function(e,t){this._checkLoaded();var r=this.getLayer(e);return r?void(null!==t&&void 0!==t&&this._validate(validateStyle.filter,\"layers.\"+r.id+\".filter\",t)||util.deepEqual(r.filter,t)||(r.filter=util.clone(t),this._updateLayer(r))):void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be filtered.\")})},t.prototype.getFilter=function(e){return util.clone(this.getLayer(e).filter)},t.prototype.setLayoutProperty=function(e,t,r){this._checkLoaded();var i=this.getLayer(e);return i?void(util.deepEqual(i.getLayoutProperty(t),r)||(i.setLayoutProperty(t,r),this._updateLayer(i))):void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be styled.\")})},t.prototype.getLayoutProperty=function(e,t){return this.getLayer(e).getLayoutProperty(t)},t.prototype.setPaintProperty=function(e,t,r,i){this._checkLoaded();var o=this.getLayer(e);if(!o)return void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be styled.\")});if(!util.deepEqual(o.getPaintProperty(t,i),r)){var s=o.isPaintValueFeatureConstant(t);o.setPaintProperty(t,r,i);var a=!(r&&MapboxGLFunction.isFunctionDefinition(r)&&\"$zoom\"!==r.property&&void 0!==r.property);a&&s||this._updateLayer(o),this.updateClasses(e,t)}},t.prototype.getPaintProperty=function(e,t,r){return this.getLayer(e).getPaintProperty(t,r)},t.prototype.getTransition=function(){return util.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},t.prototype.updateClasses=function(e,t){if(this._changed=!0,e){var r=this._updatedPaintProps;r[e]||(r[e]={}),r[e][t||\"all\"]=!0}else this._updatedAllPaintProps=!0},t.prototype.serialize=function(){var e=this;return util.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:util.mapObject(this.sourceCaches,function(e){return e.serialize()}),layers:this._order.map(function(t){return e._layers[t].serialize()})},function(e){return void 0!==e})},t.prototype._updateLayer=function(e){this._updatedLayers[e.id]=!0,e.source&&!this._updatedSources[e.source]&&(this._updatedSources[e.source]=\"reload\"),this._changed=!0},t.prototype._flattenRenderedFeatures=function(e){for(var t=this,r=[],i=this._order.length-1;i>=0;i--)for(var o=t._order[i],s=0,a=e;s=this.maxzoom)||\"none\"===this.layout.visibility)},i.prototype.updatePaintTransitions=function(t,i,a,e,o){for(var n=this,r=util.extend({},this._paintDeclarations[\"\"]),s=0;s=this.endTime)return o;var a=this.oldTransition.calculate(t,i,this.startTime),n=util.easeCubicInOut((e-this.startTime-this.delay)/this.duration);return this.interp(a,o,n)},StyleTransition.prototype._calculateTargetValue=function(t,i){if(!this.zoomTransitioned)return this.declaration.calculate(t,i);var e=t.zoom,o=this.zoomHistory.lastIntegerZoom,a=e>o?2:.5,n=this.declaration.calculate({zoom:e>o?e-1:e+1},i),r=this.declaration.calculate({zoom:e},i),s=Math.min((Date.now()-this.zoomHistory.lastIntegerZoomTime)/this.duration,1),l=Math.abs(e-o),u=interpolate(s,1,l);return void 0!==n&&void 0!==r?{from:n,fromScale:a,to:r,toScale:1,t:u}:void 0},module.exports=StyleTransition;\n},{\"../style-spec/util/interpolate\":123,\"../util/util\":215}],159:[function(_dereq_,module,exports){\n\"use strict\";module.exports=_dereq_(\"../style-spec/validate_style.min\"),module.exports.emitErrors=function(r,e){if(e&&e.length){for(var t=0;t-a/2;){if(s--,s<0)return!1;f-=e[s].dist(i),i=e[s]}f+=e[s].dist(e[s+1]),s++;for(var l=[],o=0;f
r;)o-=l.shift().angleDelta;if(o>n)return!1;s++,f+=c.dist(g)}return!0}module.exports=checkMaxAngle;\n},{}],162:[function(_dereq_,module,exports){\n\"use strict\";function clipLine(n,x,y,o,e){for(var r=[],t=0;t=o&&w.x>=o||(P.x>=o?P=new Point(o,P.y+(w.y-P.y)*((o-P.x)/(w.x-P.x)))._round():w.x>=o&&(w=new Point(o,P.y+(w.y-P.y)*((o-P.x)/(w.x-P.x)))._round()),P.y>=e&&w.y>=e||(P.y>=e?P=new Point(P.x+(w.x-P.x)*((e-P.y)/(w.y-P.y)),e)._round():w.y>=e&&(w=new Point(P.x+(w.x-P.x)*((e-P.y)/(w.y-P.y)),e)._round()),u&&P.equals(u[u.length-1])||(u=[P],r.push(u)),u.push(w)))))}return r}var Point=_dereq_(\"point-geometry\");module.exports=clipLine;\n},{\"point-geometry\":26}],163:[function(_dereq_,module,exports){\n\"use strict\";var createStructArrayType=_dereq_(\"../util/struct_array\"),Point=_dereq_(\"point-geometry\"),CollisionBoxArray=createStructArrayType({members:[{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:\"Float32\",name:\"maxScale\"},{type:\"Uint32\",name:\"featureIndex\"},{type:\"Uint16\",name:\"sourceLayerIndex\"},{type:\"Uint16\",name:\"bucketIndex\"},{type:\"Int16\",name:\"bbox0\"},{type:\"Int16\",name:\"bbox1\"},{type:\"Int16\",name:\"bbox2\"},{type:\"Int16\",name:\"bbox3\"},{type:\"Float32\",name:\"placementScale\"}]});Object.defineProperty(CollisionBoxArray.prototype.StructType.prototype,\"anchorPoint\",{get:function(){return new Point(this.anchorPointX,this.anchorPointY)}}),module.exports=CollisionBoxArray;\n},{\"../util/struct_array\":213,\"point-geometry\":26}],164:[function(_dereq_,module,exports){\n\"use strict\";var CollisionFeature=function(t,e,i,o,s,a,n,r,l,d,u){var h=n.top*r-l,x=n.bottom*r+l,f=n.left*r-l,m=n.right*r+l;if(this.boxStartIndex=t.length,d){var _=x-h,b=m-f;if(_>0)if(_=Math.max(10*r,_),u){var v=e[i.segment+1].sub(e[i.segment])._unit()._mult(b),c=[i.sub(v),i.add(v)];this._addLineCollisionBoxes(t,c,i,0,b,_,o,s,a)}else this._addLineCollisionBoxes(t,e,i,i.segment,b,_,o,s,a)}else t.emplaceBack(i.x,i.y,f,h,m,x,1/0,o,s,a,0,0,0,0,0);this.boxEndIndex=t.length};CollisionFeature.prototype._addLineCollisionBoxes=function(t,e,i,o,s,a,n,r,l){var d=a/2,u=Math.floor(s/d),h=-a/2,x=this.boxes,f=i,m=o+1,_=h;do{if(m--,m<0)return x;_-=e[m].dist(f),f=e[m]}while(_>-s/2);for(var b=e[m].dist(e[m+1]),v=0;v=e.length)return x;b=e[m].dist(e[m+1])}var g=c-_,p=e[m],C=e[m+1],B=C.sub(p)._unit()._mult(g)._add(p)._round(),M=Math.max(Math.abs(c-h)-d/2,0),y=s/2/M;t.emplaceBack(B.x,B.y,-a/2,-a/2,a/2,a/2,y,n,r,l,0,0,0,0,0)}return x},module.exports=CollisionFeature;\n},{}],165:[function(_dereq_,module,exports){\n\"use strict\";var Point=_dereq_(\"point-geometry\"),EXTENT=_dereq_(\"../data/extent\"),Grid=_dereq_(\"grid-index\"),intersectionTests=_dereq_(\"../util/intersection_tests\"),CollisionTile=function(t,e,i){if(\"object\"==typeof t){var r=t;i=e,t=r.angle,e=r.pitch,this.grid=new Grid(r.grid),this.ignoredGrid=new Grid(r.ignoredGrid)}else this.grid=new Grid(EXTENT,12,6),this.ignoredGrid=new Grid(EXTENT,12,0);this.minScale=.5,this.maxScale=2,this.angle=t,this.pitch=e;var a=Math.sin(t),o=Math.cos(t);if(this.rotationMatrix=[o,-a,a,o],this.reverseRotationMatrix=[o,a,-a,o],this.yStretch=1/Math.cos(e/180*Math.PI),this.yStretch=Math.pow(this.yStretch,1.3),this.collisionBoxArray=i,0===i.length){i.emplaceBack();var n=32767;i.emplaceBack(0,0,0,-n,0,n,n,0,0,0,0,0,0,0,0,0),i.emplaceBack(EXTENT,0,0,-n,0,n,n,0,0,0,0,0,0,0,0,0),i.emplaceBack(0,0,-n,0,n,0,n,0,0,0,0,0,0,0,0,0),i.emplaceBack(0,EXTENT,-n,0,n,0,n,0,0,0,0,0,0,0,0,0)}this.tempCollisionBox=i.get(0),this.edges=[i.get(1),i.get(2),i.get(3),i.get(4)]};CollisionTile.prototype.serialize=function(t){var e=this.grid.toArrayBuffer(),i=this.ignoredGrid.toArrayBuffer();return t&&(t.push(e),t.push(i)),{angle:this.angle,pitch:this.pitch,grid:e,ignoredGrid:i}},CollisionTile.prototype.placeCollisionFeature=function(t,e,i){for(var r=this,a=this.collisionBoxArray,o=this.minScale,n=this.rotationMatrix,l=this.yStretch,h=t.boxStartIndex;h=r.maxScale)return o}if(i){var S=void 0;if(r.angle){var P=r.reverseRotationMatrix,b=new Point(s.x1,s.y1).matMult(P),T=new Point(s.x2,s.y1).matMult(P),w=new Point(s.x1,s.y2).matMult(P),N=new Point(s.x2,s.y2).matMult(P);S=r.tempCollisionBox,S.anchorPointX=s.anchorPoint.x,S.anchorPointY=s.anchorPoint.y,S.x1=Math.min(b.x,T.x,w.x,N.x),S.y1=Math.min(b.y,T.x,w.x,N.x),S.x2=Math.max(b.x,T.x,w.x,N.x),S.y2=Math.max(b.y,T.x,w.x,N.x),S.maxScale=s.maxScale}else S=s;for(var B=0;B=r.maxScale)return o}}}return o},CollisionTile.prototype.queryRenderedSymbols=function(t,e){var i={},r=[];if(0===t.length||0===this.grid.length&&0===this.ignoredGrid.length)return r;for(var a=this.collisionBoxArray,o=this.rotationMatrix,n=this.yStretch,l=[],h=1/0,s=1/0,x=-(1/0),c=-(1/0),g=0;gS.maxScale)){var T=S.anchorPoint.matMult(o),w=T.x+S.x1/e,N=T.y+S.y1/e*n,B=T.x+S.x2/e,G=T.y+S.y2/e*n,E=[new Point(w,N),new Point(B,N),new Point(B,G),new Point(w,G)];intersectionTests.polygonIntersectsPolygon(l,E)&&(i[P][b]=!0,r.push(u[v]))}}return r},CollisionTile.prototype.getPlacementScale=function(t,e,i,r,a){var o=e.x-r.x,n=e.y-r.y,l=(a.x1-i.x2)/o,h=(a.x2-i.x1)/o,s=(a.y1-i.y2)*this.yStretch/n,x=(a.y2-i.y1)*this.yStretch/n;(isNaN(l)||isNaN(h))&&(l=h=1),(isNaN(s)||isNaN(x))&&(s=x=1);var c=Math.min(Math.max(l,h),Math.max(s,x)),g=a.maxScale,y=i.maxScale;return c>g&&(c=g),c>y&&(c=y),c>t&&c>=a.placementScale&&(t=c),t},CollisionTile.prototype.insertCollisionFeature=function(t,e,i){for(var r=this,a=i?this.ignoredGrid:this.grid,o=this.collisionBoxArray,n=t.boxStartIndex;n=0&&k=0&&q=0&&p+h<=s){var M=new Anchor(k,q,A,f)._round();n&&!checkMaxAngle(e,M,l,n,a)||x.push(M)}}g+=y}return i||x.length||o||(x=resample(e,g/2,t,n,a,l,o,!0,c)),x}var interpolate=_dereq_(\"../style-spec/util/interpolate\"),Anchor=_dereq_(\"../symbol/anchor\"),checkMaxAngle=_dereq_(\"./check_max_angle\");module.exports=getAnchors;\n},{\"../style-spec/util/interpolate\":123,\"../symbol/anchor\":160,\"./check_max_angle\":161}],167:[function(_dereq_,module,exports){\n\"use strict\";var ShelfPack=_dereq_(\"@mapbox/shelf-pack\"),util=_dereq_(\"../util/util\"),SIZE_GROWTH_RATE=4,DEFAULT_SIZE=128,MAX_SIZE=2048,GlyphAtlas=function(){this.width=DEFAULT_SIZE,this.height=DEFAULT_SIZE,this.atlas=new ShelfPack(this.width,this.height),this.index={},this.ids={},this.data=new Uint8Array(this.width*this.height)};GlyphAtlas.prototype.getGlyphs=function(){var t,i,e,h=this,r={};for(var s in h.ids)t=s.split(\"#\"),i=t[0],e=t[1],r[i]||(r[i]=[]),r[i].push(e);return r},GlyphAtlas.prototype.getRects=function(){var t,i,e,h=this,r={};for(var s in h.ids)t=s.split(\"#\"),i=t[0],e=t[1],r[i]||(r[i]={}),r[i][e]=h.index[s];return r},GlyphAtlas.prototype.addGlyph=function(t,i,e,h){var r=this;if(!e)return null;var s=i+\"#\"+e.id;if(this.index[s])return this.ids[s].indexOf(t)<0&&this.ids[s].push(t),this.index[s];if(!e.bitmap)return null;var a=e.width+2*h,E=e.height+2*h,n=1,l=a+2*n,T=E+2*n;l+=4-l%4,T+=4-T%4;var u=this.atlas.packOne(l,T);if(u||(this.resize(),u=this.atlas.packOne(l,T)),!u)return util.warnOnce(\"glyph bitmap overflow\"),null;this.index[s]=u,this.ids[s]=[t];for(var d=this.data,p=e.bitmap,A=0;A=MAX_SIZE||e>=MAX_SIZE)){this.texture&&(this.gl&&this.gl.deleteTexture(this.texture),this.texture=null),this.width*=SIZE_GROWTH_RATE,this.height*=SIZE_GROWTH_RATE,this.atlas.resize(this.width,this.height);for(var h=new ArrayBuffer(this.width*this.height),r=0;r65535)return a(\"glyphs > 65535 not supported\");void 0===this.loading[t]&&(this.loading[t]={});var l=this.loading[t];if(l[e])l[e].push(a);else{l[e]=[a];var i=256*e+\"-\"+(256*e+255),r=glyphUrl(t,i,this.url);ajax.getArrayBuffer(r,function(t,a){for(var i=!t&&new Glyphs(new Protobuf(a.data)),r=0;r=0^o,r=Math.abs(n),h=new Point(e.x,e.y),c=getSegmentEnd(l,a,i),g={anchor:h,end:c,index:i,minScale:getMinScaleForSegment(r,h,c),maxScale:1/0};;){if(insertSegmentGlyph(t,g,l,o),g.minScale<=e.scale)return e.scale;var u=getNextVirtualSegment(g,a,r,l);if(!u)return g.minScale;g=u}}function insertSegmentGlyph(t,e,n,a){var i=Math.atan2(e.end.y-e.anchor.y,e.end.x-e.anchor.x),o=n?i:i+Math.PI;t.push({anchorPoint:e.anchor,upsideDown:a,minScale:e.minScale,maxScale:e.maxScale,angle:(o+2*Math.PI)%(2*Math.PI)})}function getVirtualSegmentAnchor(t,e,n){var a=e.sub(t)._unit();return t.sub(a._mult(n))}function getMinScaleForSegment(t,e,n){var a=e.dist(n);return t/a}function getSegmentEnd(t,e,n){return t?e[n+1]:e[n]}function getNextVirtualSegment(t,e,n,a){for(var i=t.end,o=i,l=t.index;o.equals(i);){if(a&&l+21?2:1,this.dirty=!0}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.allocateImage=function(t,i){t/=this.pixelRatio,i/=this.pixelRatio;var e=2,r=t+e+(4-(t+e)%4),a=i+e+(4-(i+e)%4),h=this.shelfPack.packOne(r,a);return h?h:(util.warnOnce(\"SpriteAtlas out of space.\"),null)},i.prototype.addImage=function(t,i,e){var r,a,h;if(i instanceof window.HTMLImageElement?(r=i.width,a=i.height,i=browser.getImageData(i),h=1):(r=e.width,a=e.height,h=e.pixelRatio||1),ArrayBuffer.isView(i)&&(i=new Uint32Array(i.buffer)),!(i instanceof Uint32Array))return this.fire(\"error\",{error:new Error(\"Image provided in an invalid format. Supported formats are HTMLImageElement and ArrayBufferView.\")});if(this.images[t])return this.fire(\"error\",{error:new Error(\"An image with this name already exists.\")});var s=this.allocateImage(r,a);if(!s)return this.fire(\"error\",{error:new Error(\"There is not enough space to add this image.\")});var o={rect:s,width:r/h,height:a/h,sdf:!1,pixelRatio:h/this.pixelRatio};this.images[t]=o,this.copy(i,r,s,{pixelRatio:h,x:0,y:0,width:r,height:a},!1),this.fire(\"data\",{dataType:\"style\"})},i.prototype.removeImage=function(t){var i=this.images[t];return delete this.images[t],i?(this.shelfPack.unref(i.rect),void this.fire(\"data\",{dataType:\"style\"})):this.fire(\"error\",{error:new Error(\"No image with this name exists.\")})},i.prototype.getImage=function(t,i){if(this.images[t])return this.images[t];if(!this.sprite)return null;var e=this.sprite.getSpritePosition(t);if(!e.width||!e.height)return null;var r=this.allocateImage(e.width,e.height);if(!r)return null;var a={rect:r,width:e.width/e.pixelRatio,height:e.height/e.pixelRatio,sdf:e.sdf,pixelRatio:e.pixelRatio/this.pixelRatio};if(this.images[t]=a,!this.sprite.imgData)return null;var h=new Uint32Array(this.sprite.imgData.buffer);return this.copy(h,this.sprite.width,r,e,i),a},i.prototype.getPosition=function(t,i){var e=this.getImage(t,i),r=e&&e.rect;if(!r)return null;var a=e.width*e.pixelRatio,h=e.height*e.pixelRatio,s=1;return{size:[e.width,e.height],tl:[(r.x+s)/this.width,(r.y+s)/this.height],br:[(r.x+s+a)/this.width,(r.y+s+h)/this.height]}},i.prototype.allocate=function(){var t=this;if(!this.data){var i=Math.floor(this.width*this.pixelRatio),e=Math.floor(this.height*this.pixelRatio);this.data=new Uint32Array(i*e);for(var r=0;r1||(b?(clearTimeout(b),b=null,h(\"dblclick\",t)):b=setTimeout(l,300))}function i(e){f(\"touchmove\",e)}function c(e){f(\"touchend\",e)}function d(e){f(\"touchcancel\",e)}function l(){b=null}function s(e){var t=DOM.mousePos(g,e);t.equals(L)&&h(\"click\",e)}function v(e){h(\"dblclick\",e),e.preventDefault()}function m(t){var n=e.dragRotate&&e.dragRotate.isActive();E||n?E&&(p=t):h(\"contextmenu\",t),t.preventDefault()}function h(t,n){var o=DOM.mousePos(g,n);return e.fire(t,{lngLat:e.unproject(o),point:o,originalEvent:n})}function f(t,n){var o=DOM.touchPos(g,n),r=o.reduce(function(e,t,n,o){return e.add(t.div(o.length))},new Point(0,0));return e.fire(t,{lngLat:e.unproject(r),point:r,lngLats:o.map(function(t){return e.unproject(t)},this),points:o,originalEvent:n})}var g=e.getCanvasContainer(),p=null,E=!1,L=null,b=null;for(var q in handlers)e[q]=new handlers[q](e,t),t.interactive&&t[q]&&e[q].enable(t[q]);g.addEventListener(\"mouseout\",n,!1),g.addEventListener(\"mousedown\",o,!1),g.addEventListener(\"mouseup\",r,!1),g.addEventListener(\"mousemove\",a,!1),g.addEventListener(\"touchstart\",u,!1),g.addEventListener(\"touchend\",c,!1),g.addEventListener(\"touchmove\",i,!1),g.addEventListener(\"touchcancel\",d,!1),g.addEventListener(\"click\",s,!1),g.addEventListener(\"dblclick\",v,!1),g.addEventListener(\"contextmenu\",m,!1)};\n},{\"../util/dom\":202,\"./handler/box_zoom\":182,\"./handler/dblclick_zoom\":183,\"./handler/drag_pan\":184,\"./handler/drag_rotate\":185,\"./handler/keyboard\":186,\"./handler/scroll_zoom\":187,\"./handler/touch_zoom_rotate\":188,\"point-geometry\":26}],175:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),interpolate=_dereq_(\"../style-spec/util/interpolate\"),browser=_dereq_(\"../util/browser\"),LngLat=_dereq_(\"../geo/lng_lat\"),LngLatBounds=_dereq_(\"../geo/lng_lat_bounds\"),Point=_dereq_(\"point-geometry\"),Evented=_dereq_(\"../util/evented\"),Camera=function(t){function e(e,i){t.call(this),this.moving=!1,this.transform=e,this._bearingSnap=i.bearingSnap}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getCenter=function(){return this.transform.center},e.prototype.setCenter=function(t,e){return this.jumpTo({center:t},e)},e.prototype.panBy=function(t,e,i){return t=Point.convert(t).mult(-1),this.panTo(this.transform.center,util.extend({offset:t},e),i)},e.prototype.panTo=function(t,e,i){return this.easeTo(util.extend({center:t},e),i)},e.prototype.getZoom=function(){return this.transform.zoom},e.prototype.setZoom=function(t,e){return this.jumpTo({zoom:t},e),this},e.prototype.zoomTo=function(t,e,i){return this.easeTo(util.extend({zoom:t},e),i)},e.prototype.zoomIn=function(t,e){return this.zoomTo(this.getZoom()+1,t,e),this},e.prototype.zoomOut=function(t,e){return this.zoomTo(this.getZoom()-1,t,e),this},e.prototype.getBearing=function(){return this.transform.bearing},e.prototype.setBearing=function(t,e){return this.jumpTo({bearing:t},e),this},e.prototype.rotateTo=function(t,e,i){return this.easeTo(util.extend({bearing:t},e),i)},e.prototype.resetNorth=function(t,e){return this.rotateTo(0,util.extend({duration:1e3},t),e),this},e.prototype.snapToNorth=function(t,e){return Math.abs(this.getBearing())e?1:0}),[\"bottom\",\"left\",\"right\",\"top\"]))return void util.warnOnce(\"options.padding must be a positive number, or an Object with keys 'bottom', 'left', 'right', 'top'\");t=LngLatBounds.convert(t);var n=[e.padding.left-e.padding.right,e.padding.top-e.padding.bottom],r=Math.min(e.padding.right,e.padding.left),a=Math.min(e.padding.top,e.padding.bottom);e.offset=[e.offset[0]+n[0],e.offset[1]+n[1]];var s=Point.convert(e.offset),h=this.transform,p=h.project(t.getNorthWest()),u=h.project(t.getSouthEast()),c=u.sub(p),f=(h.width-2*r-2*Math.abs(s.x))/c.x,m=(h.height-2*a-2*Math.abs(s.y))/c.y;return m<0||f<0?void util.warnOnce(\"Map cannot fit within canvas with the given bounds, padding, and/or offset.\"):(e.center=h.unproject(p.add(u).div(2)),e.zoom=Math.min(h.scaleZoom(h.scale*Math.min(f,m)),e.maxZoom),e.bearing=0,e.linear?this.easeTo(e,i):this.flyTo(e,i))},e.prototype.jumpTo=function(t,e){this.stop();var i=this.transform,o=!1,n=!1,r=!1;return\"zoom\"in t&&i.zoom!==+t.zoom&&(o=!0,i.zoom=+t.zoom),\"center\"in t&&(i.center=LngLat.convert(t.center)),\"bearing\"in t&&i.bearing!==+t.bearing&&(n=!0,i.bearing=+t.bearing),\"pitch\"in t&&i.pitch!==+t.pitch&&(r=!0,i.pitch=+t.pitch),this.fire(\"movestart\",e).fire(\"move\",e),o&&this.fire(\"zoomstart\",e).fire(\"zoom\",e).fire(\"zoomend\",e),n&&this.fire(\"rotate\",e),r&&this.fire(\"pitchstart\",e).fire(\"pitch\",e).fire(\"pitchend\",e),this.fire(\"moveend\",e)},e.prototype.easeTo=function(t,e){var i=this;this.stop(),t=util.extend({offset:[0,0],duration:500,easing:util.ease},t),t.animate===!1&&(t.duration=0),t.smoothEasing&&0!==t.duration&&(t.easing=this._smoothOutEasing(t.duration));var o=this.transform,n=this.getZoom(),r=this.getBearing(),a=this.getPitch(),s=\"zoom\"in t?+t.zoom:n,h=\"bearing\"in t?this._normalizeBearing(t.bearing,r):r,p=\"pitch\"in t?+t.pitch:a,u=o.centerPoint.add(Point.convert(t.offset)),c=o.pointLocation(u),f=LngLat.convert(t.center||c);this._normalizeCenter(f);var m,g,d=o.project(c),l=o.project(f).sub(d),v=o.zoomScale(s-n);return t.around&&(m=LngLat.convert(t.around),g=o.locationPoint(m)),this.zooming=s!==n,this.rotating=r!==h,this.pitching=p!==a,this._prepareEase(e,t.noMoveStart),clearTimeout(this._onEaseEnd),this._ease(function(t){if(this.zooming&&(o.zoom=interpolate(n,s,t)),this.rotating&&(o.bearing=interpolate(r,h,t)),this.pitching&&(o.pitch=interpolate(a,p,t)),m)o.setLocationAtPoint(m,g);else{var i=o.zoomScale(o.zoom-n),c=s>n?Math.min(2,v):Math.max(.5,v),f=Math.pow(c,1-t),b=o.unproject(d.add(l.mult(t*f)).mult(i));o.setLocationAtPoint(o.renderWorldCopies?b.wrap():b,u)}this._fireMoveEvents(e)},function(){t.delayEndEvents?i._onEaseEnd=setTimeout(function(){return i._easeToEnd(e)},t.delayEndEvents):i._easeToEnd(e)},t),this},e.prototype._prepareEase=function(t,e){this.moving=!0,e||this.fire(\"movestart\",t),this.zooming&&this.fire(\"zoomstart\",t),this.pitching&&this.fire(\"pitchstart\",t)},e.prototype._fireMoveEvents=function(t){this.fire(\"move\",t),this.zooming&&this.fire(\"zoom\",t),this.rotating&&this.fire(\"rotate\",t),this.pitching&&this.fire(\"pitch\",t)},e.prototype._easeToEnd=function(t){var e=this.zooming,i=this.pitching;this.moving=!1,this.zooming=!1,this.rotating=!1,this.pitching=!1,e&&this.fire(\"zoomend\",t),i&&this.fire(\"pitchend\",t),this.fire(\"moveend\",t)},e.prototype.flyTo=function(t,e){function i(t){var e=(M*M-z*z+(t?-1:1)*L*L*E*E)/(2*(t?M:z)*L*E);return Math.log(Math.sqrt(e*e+1)-e)}function o(t){return(Math.exp(t)-Math.exp(-t))/2}function n(t){return(Math.exp(t)+Math.exp(-t))/2}function r(t){return o(t)/n(t)}var a=this;this.stop(),t=util.extend({offset:[0,0],speed:1.2,curve:1.42,easing:util.ease},t);var s=this.transform,h=this.getZoom(),p=this.getBearing(),u=this.getPitch(),c=\"zoom\"in t?+t.zoom:h,f=\"bearing\"in t?this._normalizeBearing(t.bearing,p):p,m=\"pitch\"in t?+t.pitch:u,g=s.zoomScale(c-h),d=s.centerPoint.add(Point.convert(t.offset)),l=s.pointLocation(d),v=LngLat.convert(t.center||l);this._normalizeCenter(v);var b=s.project(l),y=s.project(v).sub(b),_=t.curve,z=Math.max(s.width,s.height),M=z/g,E=y.mag();if(\"minZoom\"in t){var T=util.clamp(Math.min(t.minZoom,h,c),s.minZoom,s.maxZoom),x=z/s.zoomScale(T-h);_=Math.sqrt(x/E*2)}var L=_*_,j=i(0),w=function(t){return n(j)/n(j+_*t)},P=function(t){return z*((n(j)*r(j+_*t)-o(j))/L)/E},Z=(i(1)-j)/_;if(Math.abs(E)<1e-6){if(Math.abs(z-M)<1e-6)return this.easeTo(t,e);var q=M180?-360:i<-180?360:0}},e.prototype._smoothOutEasing=function(t){var e=util.ease;if(this._prevEase){var i=this._prevEase,o=(Date.now()-i.start)/i.duration,n=i.easing(o+.01)-i.easing(o),r=.27/Math.sqrt(n*n+1e-4)*.01,a=Math.sqrt(.0729-r*r);e=util.bezier(r,a,.25,1)}return this._prevEase={start:(new Date).getTime(),duration:t,easing:e},e},e}(Evented);module.exports=Camera;\n},{\"../geo/lng_lat\":62,\"../geo/lng_lat_bounds\":63,\"../style-spec/util/interpolate\":123,\"../util/browser\":195,\"../util/evented\":203,\"../util/util\":215,\"point-geometry\":26}],176:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../../util/dom\"),util=_dereq_(\"../../util/util\"),AttributionControl=function(t){this.options=t,util.bindAll([\"_updateEditLink\",\"_updateData\",\"_updateCompact\"],this)};AttributionControl.prototype.getDefaultPosition=function(){return\"bottom-right\"},AttributionControl.prototype.onAdd=function(t){var i=this.options&&this.options.compact;return this._map=t,this._container=DOM.create(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-attrib\"),i&&this._container.classList.add(\"mapboxgl-compact\"),this._updateAttributions(),this._updateEditLink(),this._map.on(\"sourcedata\",this._updateData),this._map.on(\"moveend\",this._updateEditLink),void 0===i&&(this._map.on(\"resize\",this._updateCompact),this._updateCompact()),this._container},AttributionControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off(\"sourcedata\",this._updateData),this._map.off(\"moveend\",this._updateEditLink),this._map.off(\"resize\",this._updateCompact),this._map=void 0},AttributionControl.prototype._updateEditLink=function(){if(this._editLink||(this._editLink=this._container.querySelector(\".mapboxgl-improve-map\")),this._editLink){var t=this._map.getCenter();this._editLink.href=\"https://www.mapbox.com/map-feedback/#/\"+t.lng+\"/\"+t.lat+\"/\"+Math.round(this._map.getZoom()+1)}},AttributionControl.prototype._updateData=function(t){t&&\"metadata\"===t.sourceDataType&&(this._updateAttributions(),this._updateEditLink())},AttributionControl.prototype._updateAttributions=function(){if(this._map.style){var t=[],i=this._map.style.sourceCaches;for(var o in i){var n=i[o].getSource();n.attribution&&t.indexOf(n.attribution)<0&&t.push(n.attribution)}t.sort(function(t,i){return t.length-i.length}),t=t.filter(function(i,o){for(var n=o+1;n=0)return!1;return!0}),this._container.innerHTML=t.join(\" | \"),this._editLink=null}},AttributionControl.prototype._updateCompact=function(){var t=this._map.getCanvasContainer().offsetWidth<=640;this._container.classList[t?\"add\":\"remove\"](\"mapboxgl-compact\")},module.exports=AttributionControl;\n},{\"../../util/dom\":202,\"../../util/util\":215}],177:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../../util/dom\"),util=_dereq_(\"../../util/util\"),window=_dereq_(\"../../util/window\"),FullscreenControl=function(){this._fullscreen=!1,util.bindAll([\"_onClickFullscreen\",\"_changeIcon\"],this),\"onfullscreenchange\"in window.document?this._fullscreenchange=\"fullscreenchange\":\"onmozfullscreenchange\"in window.document?this._fullscreenchange=\"mozfullscreenchange\":\"onwebkitfullscreenchange\"in window.document?this._fullscreenchange=\"webkitfullscreenchange\":\"onmsfullscreenchange\"in window.document&&(this._fullscreenchange=\"MSFullscreenChange\")};FullscreenControl.prototype.onAdd=function(e){var n=\"mapboxgl-ctrl\",l=this._container=DOM.create(\"div\",n+\" mapboxgl-ctrl-group\"),t=this._fullscreenButton=DOM.create(\"button\",n+\"-icon \"+n+\"-fullscreen\",this._container);return t.setAttribute(\"aria-label\",\"Toggle fullscreen\"),t.type=\"button\",this._fullscreenButton.addEventListener(\"click\",this._onClickFullscreen),this._mapContainer=e.getContainer(),window.document.addEventListener(this._fullscreenchange,this._changeIcon),l},FullscreenControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},FullscreenControl.prototype._isFullscreen=function(){return this._fullscreen},FullscreenControl.prototype._changeIcon=function(){var e=window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement;if(e===this._mapContainer!==this._fullscreen){this._fullscreen=!this._fullscreen;var n=\"mapboxgl-ctrl\";this._fullscreenButton.classList.toggle(n+\"-shrink\"),this._fullscreenButton.classList.toggle(n+\"-fullscreen\")}},FullscreenControl.prototype._onClickFullscreen=function(){this._isFullscreen()?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._mapContainer.requestFullscreen?this._mapContainer.requestFullscreen():this._mapContainer.mozRequestFullScreen?this._mapContainer.mozRequestFullScreen():this._mapContainer.msRequestFullscreen?this._mapContainer.msRequestFullscreen():this._mapContainer.webkitRequestFullscreen&&this._mapContainer.webkitRequestFullscreen()},module.exports=FullscreenControl;\n},{\"../../util/dom\":202,\"../../util/util\":215,\"../../util/window\":197}],178:[function(_dereq_,module,exports){\n\"use strict\";function checkGeolocationSupport(t){void 0!==supportsGeolocation?t(supportsGeolocation):void 0!==window.navigator.permissions?window.navigator.permissions.query({name:\"geolocation\"}).then(function(o){supportsGeolocation=\"denied\"!==o.state,t(supportsGeolocation)}):(supportsGeolocation=!!window.navigator.geolocation,t(supportsGeolocation))}var Evented=_dereq_(\"../../util/evented\"),DOM=_dereq_(\"../../util/dom\"),window=_dereq_(\"../../util/window\"),util=_dereq_(\"../../util/util\"),defaultGeoPositionOptions={enableHighAccuracy:!1,timeout:6e3},className=\"mapboxgl-ctrl\",supportsGeolocation,GeolocateControl=function(t){function o(o){t.call(this),this.options=o||{},util.bindAll([\"_onSuccess\",\"_onError\",\"_finish\",\"_setupUI\"],this)}return t&&(o.__proto__=t),o.prototype=Object.create(t&&t.prototype),o.prototype.constructor=o,o.prototype.onAdd=function(t){return this._map=t,this._container=DOM.create(\"div\",className+\" \"+className+\"-group\"),checkGeolocationSupport(this._setupUI),this._container},o.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map=void 0},o.prototype._onSuccess=function(t){this._map.jumpTo({center:[t.coords.longitude,t.coords.latitude],zoom:17,bearing:0,pitch:0}),this.fire(\"geolocate\",t),this._finish()},o.prototype._onError=function(t){this.fire(\"error\",t),this._finish()},o.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},o.prototype._setupUI=function(t){t!==!1&&(this._container.addEventListener(\"contextmenu\",function(t){return t.preventDefault()}),this._geolocateButton=DOM.create(\"button\",className+\"-icon \"+className+\"-geolocate\",this._container),this._geolocateButton.type=\"button\",this._geolocateButton.setAttribute(\"aria-label\",\"Geolocate\"),this.options.watchPosition&&this._geolocateButton.setAttribute(\"aria-pressed\",!1),this._geolocateButton.addEventListener(\"click\",this._onClickGeolocate.bind(this)))},o.prototype._onClickGeolocate=function(){var t=util.extend(defaultGeoPositionOptions,this.options&&this.options.positionOptions||{});this.options.watchPosition?void 0!==this._geolocationWatchID?(this._geolocateButton.classList.remove(\"mapboxgl-watching\"),this._geolocateButton.setAttribute(\"aria-pressed\",!1),window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0):(this._geolocateButton.classList.add(\"mapboxgl-watching\"),this._geolocateButton.setAttribute(\"aria-pressed\",!0),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,t)):(window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,t),this._timeoutId=setTimeout(this._finish,1e4))},o}(Evented);module.exports=GeolocateControl;\n},{\"../../util/dom\":202,\"../../util/evented\":203,\"../../util/util\":215,\"../../util/window\":197}],179:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../../util/dom\"),util=_dereq_(\"../../util/util\"),LogoControl=function(){util.bindAll([\"_updateLogo\"],this)};LogoControl.prototype.onAdd=function(o){return this._map=o,this._container=DOM.create(\"div\",\"mapboxgl-ctrl\"),this._map.on(\"sourcedata\",this._updateLogo),this._updateLogo(),this._container},LogoControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off(\"sourcedata\",this._updateLogo)},LogoControl.prototype.getDefaultPosition=function(){return\"bottom-left\"},LogoControl.prototype._updateLogo=function(o){if(o&&\"metadata\"===o.sourceDataType)if(!this._container.childNodes.length&&this._logoRequired()){var t=DOM.create(\"a\",\"mapboxgl-ctrl-logo\");t.target=\"_blank\",t.href=\"https://www.mapbox.com/\",t.setAttribute(\"aria-label\",\"Mapbox logo\"),this._container.appendChild(t),this._map.off(\"data\",this._updateLogo)}else this._container.childNodes.length&&!this._logoRequired()&&this.onRemove()},LogoControl.prototype._logoRequired=function(){if(this._map.style){var o=this._map.style.sourceCaches;for(var t in o){var e=o[t].getSource();if(e.mapbox_logo)return!0}return!1}},module.exports=LogoControl;\n},{\"../../util/dom\":202,\"../../util/util\":215}],180:[function(_dereq_,module,exports){\n\"use strict\";function copyMouseEvent(t){return new window.MouseEvent(t.type,{button:2,buttons:2,bubbles:!0,cancelable:!0,detail:t.detail,view:t.view,screenX:t.screenX,screenY:t.screenY,clientX:t.clientX,clientY:t.clientY,movementX:t.movementX,movementY:t.movementY,ctrlKey:t.ctrlKey,shiftKey:t.shiftKey,altKey:t.altKey,metaKey:t.metaKey})}var DOM=_dereq_(\"../../util/dom\"),window=_dereq_(\"../../util/window\"),util=_dereq_(\"../../util/util\"),className=\"mapboxgl-ctrl\",NavigationControl=function(){util.bindAll([\"_rotateCompassArrow\"],this)};NavigationControl.prototype._rotateCompassArrow=function(){var t=\"rotate(\"+this._map.transform.angle*(180/Math.PI)+\"deg)\";this._compassArrow.style.transform=t},NavigationControl.prototype.onAdd=function(t){return this._map=t,this._container=DOM.create(\"div\",className+\" \"+className+\"-group\",t.getContainer()),this._container.addEventListener(\"contextmenu\",this._onContextMenu.bind(this)),this._zoomInButton=this._createButton(className+\"-icon \"+className+\"-zoom-in\",\"Zoom In\",t.zoomIn.bind(t)),this._zoomOutButton=this._createButton(className+\"-icon \"+className+\"-zoom-out\",\"Zoom Out\",t.zoomOut.bind(t)),this._compass=this._createButton(className+\"-icon \"+className+\"-compass\",\"Reset North\",t.resetNorth.bind(t)),this._compassArrow=DOM.create(\"span\",className+\"-compass-arrow\",this._compass),this._compass.addEventListener(\"mousedown\",this._onCompassDown.bind(this)),this._onCompassMove=this._onCompassMove.bind(this),this._onCompassUp=this._onCompassUp.bind(this),this._map.on(\"rotate\",this._rotateCompassArrow),this._rotateCompassArrow(),this._container},NavigationControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off(\"rotate\",this._rotateCompassArrow),this._map=void 0},NavigationControl.prototype._onContextMenu=function(t){t.preventDefault()},NavigationControl.prototype._onCompassDown=function(t){0===t.button&&(DOM.disableDrag(),window.document.addEventListener(\"mousemove\",this._onCompassMove),window.document.addEventListener(\"mouseup\",this._onCompassUp),this._map.getCanvasContainer().dispatchEvent(copyMouseEvent(t)),t.stopPropagation())},NavigationControl.prototype._onCompassMove=function(t){0===t.button&&(this._map.getCanvasContainer().dispatchEvent(copyMouseEvent(t)),t.stopPropagation())},NavigationControl.prototype._onCompassUp=function(t){0===t.button&&(window.document.removeEventListener(\"mousemove\",this._onCompassMove),window.document.removeEventListener(\"mouseup\",this._onCompassUp),DOM.enableDrag(),this._map.getCanvasContainer().dispatchEvent(copyMouseEvent(t)),t.stopPropagation())},NavigationControl.prototype._createButton=function(t,o,e){var n=DOM.create(\"button\",t,this._container);return n.type=\"button\",n.setAttribute(\"aria-label\",o),n.addEventListener(\"click\",function(){e()}),n},module.exports=NavigationControl;\n},{\"../../util/dom\":202,\"../../util/util\":215,\"../../util/window\":197}],181:[function(_dereq_,module,exports){\n\"use strict\";function updateScale(t,e,o){var n=o&&o.maxWidth||100,i=t._container.clientHeight/2,a=getDistance(t.unproject([0,i]),t.unproject([n,i]));if(o&&\"imperial\"===o.unit){var r=3.2808*a;if(r>5280){var l=r/5280;setScale(e,n,l,\"mi\")}else setScale(e,n,r,\"ft\")}else setScale(e,n,a,\"m\")}function setScale(t,e,o,n){var i=getRoundNum(o),a=i/o;\"m\"===n&&i>=1e3&&(i/=1e3,n=\"km\"),t.style.width=e*a+\"px\",t.innerHTML=i+n}function getDistance(t,e){var o=6371e3,n=Math.PI/180,i=t.lat*n,a=e.lat*n,r=Math.sin(i)*Math.sin(a)+Math.cos(i)*Math.cos(a)*Math.cos((e.lng-t.lng)*n),l=o*Math.acos(Math.min(r,1));return l}function getRoundNum(t){var e=Math.pow(10,(\"\"+Math.floor(t)).length-1),o=t/e;return o=o>=10?10:o>=5?5:o>=3?3:o>=2?2:1,e*o}var DOM=_dereq_(\"../../util/dom\"),util=_dereq_(\"../../util/util\"),ScaleControl=function(t){this.options=t,util.bindAll([\"_onMove\"],this)};ScaleControl.prototype.getDefaultPosition=function(){return\"bottom-left\"},ScaleControl.prototype._onMove=function(){updateScale(this._map,this._container,this.options)},ScaleControl.prototype.onAdd=function(t){return this._map=t,this._container=DOM.create(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-scale\",t.getContainer()),this._map.on(\"move\",this._onMove),this._onMove(),this._container},ScaleControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off(\"move\",this._onMove),this._map=void 0},module.exports=ScaleControl;\n},{\"../../util/dom\":202,\"../../util/util\":215}],182:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../../util/dom\"),LngLatBounds=_dereq_(\"../../geo/lng_lat_bounds\"),util=_dereq_(\"../../util/util\"),window=_dereq_(\"../../util/window\"),BoxZoomHandler=function(o){this._map=o,this._el=o.getCanvasContainer(),this._container=o.getContainer(),util.bindAll([\"_onMouseDown\",\"_onMouseMove\",\"_onMouseUp\",\"_onKeyDown\"],this)};BoxZoomHandler.prototype.isEnabled=function(){return!!this._enabled},BoxZoomHandler.prototype.isActive=function(){return!!this._active},BoxZoomHandler.prototype.enable=function(){this.isEnabled()||(this._map.dragPan&&this._map.dragPan.disable(),this._el.addEventListener(\"mousedown\",this._onMouseDown,!1),this._map.dragPan&&this._map.dragPan.enable(),this._enabled=!0)},BoxZoomHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener(\"mousedown\",this._onMouseDown),this._enabled=!1)},BoxZoomHandler.prototype._onMouseDown=function(o){o.shiftKey&&0===o.button&&(window.document.addEventListener(\"mousemove\",this._onMouseMove,!1),window.document.addEventListener(\"keydown\",this._onKeyDown,!1),window.document.addEventListener(\"mouseup\",this._onMouseUp,!1),DOM.disableDrag(),this._startPos=DOM.mousePos(this._el,o),this._active=!0)},BoxZoomHandler.prototype._onMouseMove=function(o){var e=this._startPos,t=DOM.mousePos(this._el,o);this._box||(this._box=DOM.create(\"div\",\"mapboxgl-boxzoom\",this._container),this._container.classList.add(\"mapboxgl-crosshair\"),this._fireEvent(\"boxzoomstart\",o));var n=Math.min(e.x,t.x),i=Math.max(e.x,t.x),s=Math.min(e.y,t.y),a=Math.max(e.y,t.y);DOM.setTransform(this._box,\"translate(\"+n+\"px,\"+s+\"px)\"),this._box.style.width=i-n+\"px\",this._box.style.height=a-s+\"px\"},BoxZoomHandler.prototype._onMouseUp=function(o){if(0===o.button){var e=this._startPos,t=DOM.mousePos(this._el,o),n=(new LngLatBounds).extend(this._map.unproject(e)).extend(this._map.unproject(t));this._finish(),e.x===t.x&&e.y===t.y?this._fireEvent(\"boxzoomcancel\",o):this._map.fitBounds(n,{linear:!0}).fire(\"boxzoomend\",{originalEvent:o,boxZoomBounds:n})}},BoxZoomHandler.prototype._onKeyDown=function(o){27===o.keyCode&&(this._finish(),this._fireEvent(\"boxzoomcancel\",o))},BoxZoomHandler.prototype._finish=function(){this._active=!1,window.document.removeEventListener(\"mousemove\",this._onMouseMove,!1),window.document.removeEventListener(\"keydown\",this._onKeyDown,!1),window.document.removeEventListener(\"mouseup\",this._onMouseUp,!1),this._container.classList.remove(\"mapboxgl-crosshair\"),this._box&&(this._box.parentNode.removeChild(this._box),this._box=null),DOM.enableDrag()},BoxZoomHandler.prototype._fireEvent=function(o,e){return this._map.fire(o,{originalEvent:e})},module.exports=BoxZoomHandler;\n},{\"../../geo/lng_lat_bounds\":63,\"../../util/dom\":202,\"../../util/util\":215,\"../../util/window\":197}],183:[function(_dereq_,module,exports){\n\"use strict\";var DoubleClickZoomHandler=function(o){this._map=o,this._onDblClick=this._onDblClick.bind(this)};DoubleClickZoomHandler.prototype.isEnabled=function(){return!!this._enabled},DoubleClickZoomHandler.prototype.enable=function(){this.isEnabled()||(this._map.on(\"dblclick\",this._onDblClick),this._enabled=!0)},DoubleClickZoomHandler.prototype.disable=function(){this.isEnabled()&&(this._map.off(\"dblclick\",this._onDblClick),this._enabled=!1)},DoubleClickZoomHandler.prototype._onDblClick=function(o){this._map.zoomTo(this._map.getZoom()+(o.originalEvent.shiftKey?-1:1),{around:o.lngLat},o)},module.exports=DoubleClickZoomHandler;\n},{}],184:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../../util/dom\"),util=_dereq_(\"../../util/util\"),window=_dereq_(\"../../util/window\"),inertiaLinearity=.3,inertiaEasing=util.bezier(0,0,inertiaLinearity,1),inertiaMaxSpeed=1400,inertiaDeceleration=2500,DragPanHandler=function(t){this._map=t,this._el=t.getCanvasContainer(),util.bindAll([\"_onDown\",\"_onMove\",\"_onUp\",\"_onTouchEnd\",\"_onMouseUp\"],this)};DragPanHandler.prototype.isEnabled=function(){return!!this._enabled},DragPanHandler.prototype.isActive=function(){return!!this._active},DragPanHandler.prototype.enable=function(){this.isEnabled()||(this._el.classList.add(\"mapboxgl-touch-drag-pan\"),this._el.addEventListener(\"mousedown\",this._onDown),this._el.addEventListener(\"touchstart\",this._onDown),this._enabled=!0)},DragPanHandler.prototype.disable=function(){this.isEnabled()&&(this._el.classList.remove(\"mapboxgl-touch-drag-pan\"),this._el.removeEventListener(\"mousedown\",this._onDown),this._el.removeEventListener(\"touchstart\",this._onDown),this._enabled=!1)},DragPanHandler.prototype._onDown=function(t){this._ignoreEvent(t)||this.isActive()||(t.touches?(window.document.addEventListener(\"touchmove\",this._onMove),window.document.addEventListener(\"touchend\",this._onTouchEnd)):(window.document.addEventListener(\"mousemove\",this._onMove),window.document.addEventListener(\"mouseup\",this._onMouseUp)),window.addEventListener(\"blur\",this._onMouseUp),this._active=!1,this._startPos=this._pos=DOM.mousePos(this._el,t),this._inertia=[[Date.now(),this._pos]])},DragPanHandler.prototype._onMove=function(t){if(!this._ignoreEvent(t)){this.isActive()||(this._active=!0,this._map.moving=!0,this._fireEvent(\"dragstart\",t),this._fireEvent(\"movestart\",t));var e=DOM.mousePos(this._el,t),n=this._map;n.stop(),this._drainInertiaBuffer(),this._inertia.push([Date.now(),e]),n.transform.setLocationAtPoint(n.transform.pointLocation(this._pos),e),this._fireEvent(\"drag\",t),this._fireEvent(\"move\",t),this._pos=e,t.preventDefault()}},DragPanHandler.prototype._onUp=function(t){var e=this;if(this.isActive()){this._active=!1,this._fireEvent(\"dragend\",t),this._drainInertiaBuffer();var n=function(){e._map.moving=!1,e._fireEvent(\"moveend\",t)},i=this._inertia;if(i.length<2)return void n();var o=i[i.length-1],r=i[0],a=o[1].sub(r[1]),s=(o[0]-r[0])/1e3;if(0===s||o[1].equals(r[1]))return void n();var u=a.mult(inertiaLinearity/s),d=u.mag();d>inertiaMaxSpeed&&(d=inertiaMaxSpeed,u._unit()._mult(d));var h=d/(inertiaDeceleration*inertiaLinearity),v=u.mult(-h/2);this._map.panBy(v,{duration:1e3*h,easing:inertiaEasing,noMoveStart:!0},{originalEvent:t})}},DragPanHandler.prototype._onMouseUp=function(t){this._ignoreEvent(t)||(this._onUp(t),window.document.removeEventListener(\"mousemove\",this._onMove),window.document.removeEventListener(\"mouseup\",this._onMouseUp),window.removeEventListener(\"blur\",this._onMouseUp))},DragPanHandler.prototype._onTouchEnd=function(t){this._ignoreEvent(t)||(this._onUp(t),window.document.removeEventListener(\"touchmove\",this._onMove),window.document.removeEventListener(\"touchend\",this._onTouchEnd))},DragPanHandler.prototype._fireEvent=function(t,e){return this._map.fire(t,{originalEvent:e})},DragPanHandler.prototype._ignoreEvent=function(t){var e=this._map;if(e.boxZoom&&e.boxZoom.isActive())return!0;if(e.dragRotate&&e.dragRotate.isActive())return!0;if(t.touches)return t.touches.length>1;if(t.ctrlKey)return!0;var n=1,i=0;return\"mousemove\"===t.type?t.buttons&0===n:t.button&&t.button!==i},DragPanHandler.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now(),n=160;t.length>0&&e-t[0][0]>n;)t.shift()},module.exports=DragPanHandler;\n},{\"../../util/dom\":202,\"../../util/util\":215,\"../../util/window\":197}],185:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../../util/dom\"),util=_dereq_(\"../../util/util\"),window=_dereq_(\"../../util/window\"),inertiaLinearity=.25,inertiaEasing=util.bezier(0,0,inertiaLinearity,1),inertiaMaxSpeed=180,inertiaDeceleration=720,DragRotateHandler=function(t,e){this._map=t,this._el=t.getCanvasContainer(),this._bearingSnap=e.bearingSnap,this._pitchWithRotate=e.pitchWithRotate!==!1,util.bindAll([\"_onDown\",\"_onMove\",\"_onUp\"],this)};DragRotateHandler.prototype.isEnabled=function(){return!!this._enabled},DragRotateHandler.prototype.isActive=function(){return!!this._active},DragRotateHandler.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener(\"mousedown\",this._onDown),this._enabled=!0)},DragRotateHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener(\"mousedown\",this._onDown),this._enabled=!1)},DragRotateHandler.prototype._onDown=function(t){this._ignoreEvent(t)||this.isActive()||(window.document.addEventListener(\"mousemove\",this._onMove),window.document.addEventListener(\"mouseup\",this._onUp),window.addEventListener(\"blur\",this._onUp),this._active=!1,this._inertia=[[Date.now(),this._map.getBearing()]],this._startPos=this._pos=DOM.mousePos(this._el,t),this._center=this._map.transform.centerPoint,t.preventDefault())},DragRotateHandler.prototype._onMove=function(t){if(!this._ignoreEvent(t)){this.isActive()||(this._active=!0,this._map.moving=!0,this._fireEvent(\"rotatestart\",t),this._fireEvent(\"movestart\",t),this._pitchWithRotate&&this._fireEvent(\"pitchstart\",t));var e=this._map;e.stop();var i=this._pos,n=DOM.mousePos(this._el,t),r=.8*(i.x-n.x),a=(i.y-n.y)*-.5,o=e.getBearing()-r,s=e.getPitch()-a,h=this._inertia,_=h[h.length-1];this._drainInertiaBuffer(),h.push([Date.now(),e._normalizeBearing(o,_[1])]),e.transform.bearing=o,this._pitchWithRotate&&(this._fireEvent(\"pitch\",t),e.transform.pitch=s),this._fireEvent(\"rotate\",t),this._fireEvent(\"move\",t),this._pos=n}},DragRotateHandler.prototype._onUp=function(t){var e=this;if(!this._ignoreEvent(t)&&(window.document.removeEventListener(\"mousemove\",this._onMove),window.document.removeEventListener(\"mouseup\",this._onUp),window.removeEventListener(\"blur\",this._onUp),this.isActive())){this._active=!1,this._fireEvent(\"rotateend\",t),this._drainInertiaBuffer();var i=this._map,n=i.getBearing(),r=this._inertia,a=function(){Math.abs(n)inertiaMaxSpeed&&(u=inertiaMaxSpeed);var l=u/(inertiaDeceleration*inertiaLinearity),g=p*u*(l/2);_+=g,Math.abs(i._normalizeBearing(_,0))1;var i=t.ctrlKey?1:2,n=t.ctrlKey?0:2,r=t.button;return\"undefined\"!=typeof InstallTrigger&&2===t.button&&t.ctrlKey&&window.navigator.platform.toUpperCase().indexOf(\"MAC\")>=0&&(r=0),\"mousemove\"===t.type?t.buttons&0===i:!this.isActive()&&r!==n},DragRotateHandler.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now(),i=160;t.length>0&&e-t[0][0]>i;)t.shift()},module.exports=DragRotateHandler;\n},{\"../../util/dom\":202,\"../../util/util\":215,\"../../util/window\":197}],186:[function(_dereq_,module,exports){\n\"use strict\";function easeOut(e){return e*(2-e)}var panStep=100,bearingStep=15,pitchStep=10,KeyboardHandler=function(e){this._map=e,this._el=e.getCanvasContainer(),this._onKeyDown=this._onKeyDown.bind(this)};KeyboardHandler.prototype.isEnabled=function(){return!!this._enabled},KeyboardHandler.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener(\"keydown\",this._onKeyDown,!1),this._enabled=!0)},KeyboardHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener(\"keydown\",this._onKeyDown),this._enabled=!1)},KeyboardHandler.prototype._onKeyDown=function(e){if(!(e.altKey||e.ctrlKey||e.metaKey)){var t=0,a=0,n=0,r=0,i=0;switch(e.keyCode){case 61:case 107:case 171:case 187:t=1;break;case 189:case 109:case 173:t=-1;break;case 37:e.shiftKey?a=-1:(e.preventDefault(),r=-1);break;case 39:e.shiftKey?a=1:(e.preventDefault(),r=1);break;case 38:e.shiftKey?n=1:(e.preventDefault(),i=-1);break;case 40:e.shiftKey?n=-1:(i=1,e.preventDefault());break;default:return}var s=this._map,o=s.getZoom(),d={duration:300,delayEndEvents:500,easing:easeOut,zoom:t?Math.round(o)+t*(e.shiftKey?2:1):o,bearing:s.getBearing()+a*bearingStep,pitch:s.getPitch()+n*pitchStep,offset:[-r*panStep,-i*panStep],center:s.getCenter()};s.easeTo(d,{originalEvent:e})}},module.exports=KeyboardHandler;\n},{}],187:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../../util/dom\"),util=_dereq_(\"../../util/util\"),browser=_dereq_(\"../../util/browser\"),window=_dereq_(\"../../util/window\"),ua=window.navigator.userAgent.toLowerCase(),firefox=ua.indexOf(\"firefox\")!==-1,safari=ua.indexOf(\"safari\")!==-1&&ua.indexOf(\"chrom\")===-1,ScrollZoomHandler=function(e){this._map=e,this._el=e.getCanvasContainer(),util.bindAll([\"_onWheel\",\"_onTimeout\"],this)};ScrollZoomHandler.prototype.isEnabled=function(){return!!this._enabled},ScrollZoomHandler.prototype.enable=function(e){this.isEnabled()||(this._el.addEventListener(\"wheel\",this._onWheel,!1),this._el.addEventListener(\"mousewheel\",this._onWheel,!1),this._enabled=!0,this._aroundCenter=e&&\"center\"===e.around)},ScrollZoomHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener(\"wheel\",this._onWheel),this._el.removeEventListener(\"mousewheel\",this._onWheel),this._enabled=!1)},ScrollZoomHandler.prototype._onWheel=function(e){var t;\"wheel\"===e.type?(t=e.deltaY,firefox&&e.deltaMode===window.WheelEvent.DOM_DELTA_PIXEL&&(t/=browser.devicePixelRatio),e.deltaMode===window.WheelEvent.DOM_DELTA_LINE&&(t*=40)):\"mousewheel\"===e.type&&(t=-e.wheelDeltaY,safari&&(t/=3));var o=browser.now(),i=o-(this._time||0);this._pos=DOM.mousePos(this._el,e),this._time=o,0!==t&&t%4.000244140625===0?this._type=\"wheel\":0!==t&&Math.abs(t)<4?this._type=\"trackpad\":i>400?(this._type=null,this._lastValue=t,this._timeout=setTimeout(this._onTimeout,40)):this._type||(this._type=Math.abs(i*t)<200?\"trackpad\":\"wheel\",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,t+=this._lastValue)),e.shiftKey&&t&&(t/=4),this._type&&this._zoom(-t,e),e.preventDefault()},ScrollZoomHandler.prototype._onTimeout=function(){this._type=\"wheel\",this._zoom(-this._lastValue)},ScrollZoomHandler.prototype._zoom=function(e,t){if(0!==e){var o=this._map,i=2/(1+Math.exp(-Math.abs(e/100)));e<0&&0!==i&&(i=1/i);var l=o.ease?o.ease.to:o.transform.scale,s=o.transform.scaleZoom(l*i);o.zoomTo(s,{duration:\"wheel\"===this._type?200:0,around:this._aroundCenter?o.getCenter():o.unproject(this._pos),delayEndEvents:200,smoothEasing:!0},{originalEvent:t})}},module.exports=ScrollZoomHandler;\n},{\"../../util/browser\":195,\"../../util/dom\":202,\"../../util/util\":215,\"../../util/window\":197}],188:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../../util/dom\"),util=_dereq_(\"../../util/util\"),window=_dereq_(\"../../util/window\"),inertiaLinearity=.15,inertiaEasing=util.bezier(0,0,inertiaLinearity,1),inertiaDeceleration=12,inertiaMaxSpeed=2.5,significantScaleThreshold=.15,significantRotateThreshold=4,TouchZoomRotateHandler=function(t){this._map=t,this._el=t.getCanvasContainer(),util.bindAll([\"_onStart\",\"_onMove\",\"_onEnd\"],this)};TouchZoomRotateHandler.prototype.isEnabled=function(){return!!this._enabled},TouchZoomRotateHandler.prototype.enable=function(t){this.isEnabled()||(this._el.classList.add(\"mapboxgl-touch-zoom-rotate\"),this._el.addEventListener(\"touchstart\",this._onStart,!1),this._enabled=!0,this._aroundCenter=t&&\"center\"===t.around)},TouchZoomRotateHandler.prototype.disable=function(){this.isEnabled()&&(this._el.classList.remove(\"mapboxgl-touch-zoom-rotate\"),this._el.removeEventListener(\"touchstart\",this._onStart),this._enabled=!1)},TouchZoomRotateHandler.prototype.disableRotation=function(){this._rotationDisabled=!0},TouchZoomRotateHandler.prototype.enableRotation=function(){this._rotationDisabled=!1},TouchZoomRotateHandler.prototype._onStart=function(t){if(2===t.touches.length){var e=DOM.mousePos(this._el,t.touches[0]),o=DOM.mousePos(this._el,t.touches[1]);this._startVec=e.sub(o),this._startScale=this._map.transform.scale,this._startBearing=this._map.transform.bearing,this._gestureIntent=void 0,this._inertia=[],window.document.addEventListener(\"touchmove\",this._onMove,!1),window.document.addEventListener(\"touchend\",this._onEnd,!1)}},TouchZoomRotateHandler.prototype._onMove=function(t){if(2===t.touches.length){var e=DOM.mousePos(this._el,t.touches[0]),o=DOM.mousePos(this._el,t.touches[1]),i=e.add(o).div(2),n=e.sub(o),a=n.mag()/this._startVec.mag(),r=this._rotationDisabled?0:180*n.angleWith(this._startVec)/Math.PI,s=this._map;if(this._gestureIntent){var h={duration:0,around:s.unproject(i)};\"rotate\"===this._gestureIntent&&(h.bearing=this._startBearing+r),\"zoom\"!==this._gestureIntent&&\"rotate\"!==this._gestureIntent||(h.zoom=s.transform.scaleZoom(this._startScale*a)),s.stop(),this._drainInertiaBuffer(),this._inertia.push([Date.now(),a,i]),s.easeTo(h,{originalEvent:t})}else{var u=Math.abs(1-a)>significantScaleThreshold,l=Math.abs(r)>significantRotateThreshold;l?this._gestureIntent=\"rotate\":u&&(this._gestureIntent=\"zoom\"),this._gestureIntent&&(this._startVec=n,this._startScale=s.transform.scale,this._startBearing=s.transform.bearing)}t.preventDefault()}},TouchZoomRotateHandler.prototype._onEnd=function(t){window.document.removeEventListener(\"touchmove\",this._onMove),window.document.removeEventListener(\"touchend\",this._onEnd),this._drainInertiaBuffer();var e=this._inertia,o=this._map;if(e.length<2)return void o.snapToNorth({},{originalEvent:t});var i=e[e.length-1],n=e[0],a=o.transform.scaleZoom(this._startScale*i[1]),r=o.transform.scaleZoom(this._startScale*n[1]),s=a-r,h=(i[0]-n[0])/1e3,u=i[2];if(0===h||a===r)return void o.snapToNorth({},{originalEvent:t});var l=s*inertiaLinearity/h;Math.abs(l)>inertiaMaxSpeed&&(l=l>0?inertiaMaxSpeed:-inertiaMaxSpeed);var d=1e3*Math.abs(l/(inertiaDeceleration*inertiaLinearity)),c=a+l*d/2e3;c<0&&(c=0),o.easeTo({zoom:c,duration:d,easing:inertiaEasing,around:this._aroundCenter?o.getCenter():o.unproject(u)},{originalEvent:t})},TouchZoomRotateHandler.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now(),o=160;t.length>2&&e-t[0][0]>o;)t.shift()},module.exports=TouchZoomRotateHandler;\n},{\"../../util/dom\":202,\"../../util/util\":215,\"../../util/window\":197}],189:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),window=_dereq_(\"../util/window\"),Hash=function(){util.bindAll([\"_onHashChange\",\"_updateHash\"],this)};Hash.prototype.addTo=function(t){return this._map=t,window.addEventListener(\"hashchange\",this._onHashChange,!1),this._map.on(\"moveend\",this._updateHash),this},Hash.prototype.remove=function(){return window.removeEventListener(\"hashchange\",this._onHashChange,!1),this._map.off(\"moveend\",this._updateHash),delete this._map,this},Hash.prototype._onHashChange=function(){var t=window.location.hash.replace(\"#\",\"\").split(\"/\");return t.length>=3&&(this._map.jumpTo({center:[+t[2],+t[1]],zoom:+t[0],bearing:+(t[3]||0),pitch:+(t[4]||0)}),!0)},Hash.prototype._updateHash=function(){var t=this._map.getCenter(),e=this._map.getZoom(),a=this._map.getBearing(),h=this._map.getPitch(),i=Math.max(0,Math.ceil(Math.log(e)/Math.LN2)),n=\"#\"+Math.round(100*e)/100+\"/\"+t.lat.toFixed(i)+\"/\"+t.lng.toFixed(i);(a||h)&&(n+=\"/\"+Math.round(10*a)/10),h&&(n+=\"/\"+Math.round(h)),window.history.replaceState(\"\",\"\",n)},module.exports=Hash;\n},{\"../util/util\":215,\"../util/window\":197}],190:[function(_dereq_,module,exports){\n\"use strict\";function removeNode(t){t.parentNode&&t.parentNode.removeChild(t)}var util=_dereq_(\"../util/util\"),browser=_dereq_(\"../util/browser\"),window=_dereq_(\"../util/window\"),DOM=_dereq_(\"../util/dom\"),ajax=_dereq_(\"../util/ajax\"),Style=_dereq_(\"../style/style\"),AnimationLoop=_dereq_(\"../style/animation_loop\"),Painter=_dereq_(\"../render/painter\"),Transform=_dereq_(\"../geo/transform\"),Hash=_dereq_(\"./hash\"),bindHandlers=_dereq_(\"./bind_handlers\"),Camera=_dereq_(\"./camera\"),LngLat=_dereq_(\"../geo/lng_lat\"),LngLatBounds=_dereq_(\"../geo/lng_lat_bounds\"),Point=_dereq_(\"point-geometry\"),AttributionControl=_dereq_(\"./control/attribution_control\"),LogoControl=_dereq_(\"./control/logo_control\"),isSupported=_dereq_(\"mapbox-gl-supported\"),defaultMinZoom=0,defaultMaxZoom=22,defaultOptions={center:[0,0],zoom:0,bearing:0,pitch:0,minZoom:defaultMinZoom,maxZoom:defaultMaxZoom,interactive:!0,scrollZoom:!0,boxZoom:!0,dragRotate:!0,dragPan:!0,keyboard:!0,doubleClickZoom:!0,touchZoomRotate:!0,bearingSnap:7,hash:!1,attributionControl:!0,failIfMajorPerformanceCaveat:!1,preserveDrawingBuffer:!1,trackResize:!0,renderWorldCopies:!0,refreshExpiredTiles:!0},Map=function(t){function e(e){var o=this;if(e=util.extend({},defaultOptions,e),null!=e.minZoom&&null!=e.maxZoom&&e.minZoom>e.maxZoom)throw new Error(\"maxZoom must be greater than minZoom\");var i=new Transform(e.minZoom,e.maxZoom,e.renderWorldCopies);if(t.call(this,i,e),this._interactive=e.interactive,this._failIfMajorPerformanceCaveat=e.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=e.preserveDrawingBuffer,this._trackResize=e.trackResize,this._bearingSnap=e.bearingSnap,this._refreshExpiredTiles=e.refreshExpiredTiles,\"string\"==typeof e.container){if(this._container=window.document.getElementById(e.container),!this._container)throw new Error(\"Container '\"+e.container+\"' not found.\")}else this._container=e.container;this.animationLoop=new AnimationLoop,e.maxBounds&&this.setMaxBounds(e.maxBounds),util.bindAll([\"_onWindowOnline\",\"_onWindowResize\",\"_contextLost\",\"_contextRestored\",\"_update\",\"_render\",\"_onData\",\"_onDataLoading\"],this),this._setupContainer(),this._setupPainter(),this.on(\"move\",this._update.bind(this,!1)),this.on(\"zoom\",this._update.bind(this,!0)),this.on(\"moveend\",function(){o.animationLoop.set(300),o._rerender()}),\"undefined\"!=typeof window&&(window.addEventListener(\"online\",this._onWindowOnline,!1),window.addEventListener(\"resize\",this._onWindowResize,!1)),bindHandlers(this,e),this._hash=e.hash&&(new Hash).addTo(this),this._hash&&this._hash._onHashChange()||this.jumpTo({center:e.center,zoom:e.zoom,bearing:e.bearing,pitch:e.pitch}),this._classes=[],this.resize(),e.classes&&this.setClasses(e.classes),e.style&&this.setStyle(e.style),e.attributionControl&&this.addControl(new AttributionControl),this.addControl(new LogoControl,e.logoPosition),this.on(\"style.load\",function(){this.transform.unmodified&&this.jumpTo(this.style.stylesheet),this.style.update(this._classes,{transition:!1})}),this.on(\"data\",this._onData),this.on(\"dataloading\",this._onDataLoading)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var o={showTileBoundaries:{},showCollisionBoxes:{},showOverdrawInspector:{},repaint:{},vertices:{}};return e.prototype.addControl=function(t,e){void 0===e&&t.getDefaultPosition&&(e=t.getDefaultPosition()),void 0===e&&(e=\"top-right\");var o=t.onAdd(this),i=this._controlPositions[e];return e.indexOf(\"bottom\")!==-1?i.insertBefore(o,i.firstChild):i.appendChild(o),this},e.prototype.removeControl=function(t){return t.onRemove(this),this},e.prototype.addClass=function(t,e){return util.warnOnce(\"Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.\"),this._classes.indexOf(t)>=0||\"\"===t?this:(this._classes.push(t),this._classOptions=e,this.style&&this.style.updateClasses(),this._update(!0))},e.prototype.removeClass=function(t,e){util.warnOnce(\"Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.\");var o=this._classes.indexOf(t);return o<0||\"\"===t?this:(this._classes.splice(o,1),this._classOptions=e,this.style&&this.style.updateClasses(),this._update(!0))},e.prototype.setClasses=function(t,e){util.warnOnce(\"Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.\");for(var o={},i=0;i=0},e.prototype.getClasses=function(){return util.warnOnce(\"Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.\"),this._classes},e.prototype.resize=function(){var t=this._containerDimensions(),e=t[0],o=t[1];return this._resizeCanvas(e,o),this.transform.resize(e,o),this.painter.resize(e,o),this.fire(\"movestart\").fire(\"move\").fire(\"resize\").fire(\"moveend\")},e.prototype.getBounds=function(){var t=new LngLatBounds(this.transform.pointLocation(new Point(0,this.transform.height)),this.transform.pointLocation(new Point(this.transform.width,0)));return(this.transform.angle||this.transform.pitch)&&(t.extend(this.transform.pointLocation(new Point(this.transform.size.x,0))),t.extend(this.transform.pointLocation(new Point(0,this.transform.size.y)))),t},e.prototype.setMaxBounds=function(t){if(t){var e=LngLatBounds.convert(t);this.transform.lngRange=[e.getWest(),e.getEast()],this.transform.latRange=[e.getSouth(),e.getNorth()],this.transform._constrain(),this._update()}else null!==t&&void 0!==t||(this.transform.lngRange=[],this.transform.latRange=[],this._update());return this},e.prototype.setMinZoom=function(t){if(t=null===t||void 0===t?defaultMinZoom:t,t>=defaultMinZoom&&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\")},e.prototype.getMaxZoom=function(){return this.transform.maxZoom},e.prototype.project=function(t){return this.transform.locationPoint(LngLat.convert(t))},e.prototype.unproject=function(t){return this.transform.pointLocation(Point.convert(t))},e.prototype.on=function(e,o,i){var r=this;if(void 0===i)return t.prototype.on.call(this,e,o);var s=function(){if(\"mouseenter\"===e||\"mouseover\"===e){var t=!1,s=function(s){var n=r.queryRenderedFeatures(s.point,{layers:[o]});n.length?t||(t=!0,i.call(r,util.extend({features:n},s,{type:e}))):t=!1},n=function(){t=!1};return{layer:o,listener:i,delegates:{mousemove:s,mouseout:n}}}if(\"mouseleave\"===e||\"mouseout\"===e){var a=!1,h=function(t){var s=r.queryRenderedFeatures(t.point,{layers:[o]});s.length?a=!0:a&&(a=!1,i.call(r,util.extend({},t,{type:e})))},l=function(t){a&&(a=!1,i.call(r,util.extend({},t,{type:e})))};return{layer:o,listener:i,delegates:{mousemove:h,mouseout:l}}}var u=function(t){var e=r.queryRenderedFeatures(t.point,{layers:[o]});e.length&&i.call(r,util.extend({features:e},t))};return{layer:o,listener:i,delegates:(d={},d[e]=u,d)};var d}();this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[e]=this._delegatedListeners[e]||[],this._delegatedListeners[e].push(s);for(var n in s.delegates)r.on(n,s.delegates[n]);return this},e.prototype.off=function(e,o,i){var r=this;if(void 0===i)return t.prototype.off.call(this,e,o);if(this._delegatedListeners&&this._delegatedListeners[e])for(var s=this._delegatedListeners[e],n=0;nthis._map.transform.height-n?[\"bottom\"]:[],this._pos.xthis._map.transform.width-e/2&&t.push(\"right\"),t=0===t.length?\"bottom\":t.join(\"-\")}var i=this._pos.add(o[t]).round(),r={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%)\"},s=this._container.classList;for(var p in r)s.remove(\"mapboxgl-popup-anchor-\"+p);s.add(\"mapboxgl-popup-anchor-\"+t),DOM.setTransform(this._container,r[t]+\" translate(\"+i.x+\"px,\"+i.y+\"px)\")}},o.prototype._onClickClose=function(){this.remove()},o}(Evented);module.exports=Popup;\n},{\"../geo/lng_lat\":62,\"../util/dom\":202,\"../util/evented\":203,\"../util/smart_wrap\":212,\"../util/util\":215,\"../util/window\":197,\"point-geometry\":26}],193:[function(_dereq_,module,exports){\n\"use strict\";var Actor=function(t,e,a){this.target=t,this.parent=e,this.mapId=a,this.callbacks={},this.callbackID=0,this.receive=this.receive.bind(this),this.target.addEventListener(\"message\",this.receive,!1)};Actor.prototype.send=function(t,e,a,r,s){var i=a?this.mapId+\":\"+this.callbackID++:null;a&&(this.callbacks[i]=a),this.target.postMessage({targetMapId:s,sourceMapId:this.mapId,type:t,id:String(i),data:e},r)},Actor.prototype.receive=function(t){var e,a=this,r=t.data,s=r.id;if(!r.targetMapId||this.mapId===r.targetMapId){var i=function(t,e,r){a.target.postMessage({sourceMapId:a.mapId,type:\"\",id:String(s),error:t?String(t):null,data:e},r)};if(\"\"===r.type)e=this.callbacks[r.id],delete this.callbacks[r.id],e&&e(r.error||null,r.data);else if(\"undefined\"!=typeof r.id&&this.parent[r.type])this.parent[r.type](r.sourceMapId,r.data,i);else if(\"undefined\"!=typeof r.id&&this.parent.getWorkerSource){var p=r.type.split(\".\"),d=this.parent.getWorkerSource(r.sourceMapId,p[0]);d[p[1]](r.data,i)}else this.parent[r.type](r.data)}},Actor.prototype.remove=function(){this.target.removeEventListener(\"message\",this.receive,!1)},module.exports=Actor;\n},{}],194:[function(_dereq_,module,exports){\n\"use strict\";function sameOrigin(e){var t=window.document.createElement(\"a\");return t.href=e,t.protocol===window.document.location.protocol&&t.host===window.document.location.host}var window=_dereq_(\"./window\"),AJAXError=function(e){function t(t,r){e.call(this,t),this.status=r}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(Error);exports.getJSON=function(e,t){var r=new window.XMLHttpRequest;return r.open(\"GET\",e,!0),r.setRequestHeader(\"Accept\",\"application/json\"),r.onerror=function(e){t(e)},r.onload=function(){if(r.status>=200&&r.status<300&&r.response){var e;try{e=JSON.parse(r.response)}catch(e){return t(e)}t(null,e)}else t(new AJAXError(r.statusText,r.status))},r.send(),r},exports.getArrayBuffer=function(e,t){var r=new window.XMLHttpRequest;return r.open(\"GET\",e,!0),r.responseType=\"arraybuffer\",r.onerror=function(e){t(e)},r.onload=function(){return 0===r.response.byteLength&&200===r.status?t(new Error(\"http status 200 returned without content.\")):void(r.status>=200&&r.status<300&&r.response?t(null,{data:r.response,cacheControl:r.getResponseHeader(\"Cache-Control\"),expires:r.getResponseHeader(\"Expires\")}):t(new AJAXError(r.statusText,r.status)))},r.send(),r};var transparentPngUrl=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=\";exports.getImage=function(e,t){return exports.getArrayBuffer(e,function(e,r){if(e)return t(e);var n=new window.Image,o=window.URL||window.webkitURL;n.onload=function(){t(null,n),o.revokeObjectURL(n.src)};var s=new window.Blob([new Uint8Array(r.data)],{type:\"image/png\"});n.cacheControl=r.cacheControl,n.expires=r.expires,n.src=r.data.byteLength?o.createObjectURL(s):transparentPngUrl})},exports.getVideo=function(e,t){var r=window.document.createElement(\"video\");r.onloadstart=function(){t(null,r)};for(var n=0;n=a+n?e.call(t,1):(e.call(t,(i-a)/n),exports.frame(o)))}if(!n)return e.call(t,1),null;var r=!1,a=module.exports.now();return exports.frame(o),function(){r=!0}},exports.getImageData=function(e){var n=window.document.createElement(\"canvas\"),t=n.getContext(\"2d\");return n.width=e.width,n.height=e.height,t.drawImage(e,0,0,e.width,e.height),t.getImageData(0,0,e.width,e.height).data},exports.supported=_dereq_(\"mapbox-gl-supported\"),exports.hardwareConcurrency=window.navigator.hardwareConcurrency||4,Object.defineProperty(exports,\"devicePixelRatio\",{get:function(){return window.devicePixelRatio}}),exports.supportsWebp=!1;var webpImgTest=window.document.createElement(\"img\");webpImgTest.onload=function(){exports.supportsWebp=!0},webpImgTest.src=\"data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=\";\n},{\"./window\":197,\"mapbox-gl-supported\":22}],196:[function(_dereq_,module,exports){\n\"use strict\";var WebWorkify=_dereq_(\"webworkify\"),window=_dereq_(\"../window\"),workerURL=window.URL.createObjectURL(new WebWorkify(_dereq_(\"../../source/worker\"),{bare:!0}));module.exports=function(){return new window.Worker(workerURL)};\n},{\"../../source/worker\":100,\"../window\":197,\"webworkify\":41}],197:[function(_dereq_,module,exports){\n\"use strict\";module.exports=self;\n},{}],198:[function(_dereq_,module,exports){\n\"use strict\";function compareAreas(e,r){return r.area-e.area}var quickselect=_dereq_(\"quickselect\"),calculateSignedArea=_dereq_(\"./util\").calculateSignedArea;module.exports=function(e,r){var a=e.length;if(a<=1)return[e];for(var t,u,c=[],i=0;i1)for(var n=0;n0||this._oneTimeListeners&&this._oneTimeListeners[e]&&this._oneTimeListeners[e].length>0||this._eventedParent&&this._eventedParent.listens(e)},Evented.prototype.setEventedParent=function(e,t){return this._eventedParent=e,this._eventedParentData=t,this},module.exports=Evented;\n},{\"./util\":215}],204:[function(_dereq_,module,exports){\n\"use strict\";function compareMax(e,t){return t.max-e.max}function Cell(e,t,n,r){this.p=new Point(e,t),this.h=n,this.d=pointToPolygonDist(this.p,r),this.max=this.d+this.h*Math.SQRT2}function pointToPolygonDist(e,t){for(var n=!1,r=1/0,o=0;oe.y!=h.y>e.y&&e.x<(h.x-a.x)*(e.y-a.y)/(h.y-a.y)+a.x&&(n=!n),r=Math.min(r,distToSegmentSquared(e,a,h))}return(n?1:-1)*Math.sqrt(r)}function getCentroidCell(e){for(var t=0,n=0,r=0,o=e[0],i=0,l=o.length,u=l-1;ii)&&(i=a.x),(!s||a.y>l)&&(l=a.y)}var h=i-r,p=l-o,y=Math.min(h,p),x=y/2,d=new Queue(null,compareMax);if(0===y)return[r,o];for(var g=r;gm.d||!m.d)&&(m=v,n&&console.log(\"found best %d after %d probes\",Math.round(1e4*v.d)/1e4,c)),v.max-m.d<=t||(x=v.h/2,d.push(new Cell(v.p.x-x,v.p.y-x,x,e)),d.push(new Cell(v.p.x+x,v.p.y-x,x,e)),d.push(new Cell(v.p.x-x,v.p.y+x,x,e)),d.push(new Cell(v.p.x+x,v.p.y+x,x,e)),c+=4)}return n&&(console.log(\"num probes: \"+c),console.log(\"best distance: \"+m.d)),m.p};\n},{\"./intersection_tests\":207,\"point-geometry\":26,\"tinyqueue\":30}],205:[function(_dereq_,module,exports){\n\"use strict\";var WorkerPool=_dereq_(\"./worker_pool\"),globalWorkerPool;module.exports=function(){return globalWorkerPool||(globalWorkerPool=new WorkerPool),globalWorkerPool};\n},{\"./worker_pool\":218}],206:[function(_dereq_,module,exports){\n\"use strict\";function Glyphs(a,e){this.stacks=a.readFields(readFontstacks,[],e)}function readFontstacks(a,e,r){if(1===a){var t=r.readMessage(readFontstack,{glyphs:{}});e.push(t)}}function readFontstack(a,e,r){if(1===a)e.name=r.readString();else if(2===a)e.range=r.readString();else if(3===a){var t=r.readMessage(readGlyph,{});e.glyphs[t.id]=t}}function readGlyph(a,e,r){1===a?e.id=r.readVarint():2===a?e.bitmap=r.readBytes():3===a?e.width=r.readVarint():4===a?e.height=r.readVarint():5===a?e.left=r.readSVarint():6===a?e.top=r.readSVarint():7===a&&(e.advance=r.readVarint())}module.exports=Glyphs;\n},{}],207:[function(_dereq_,module,exports){\n\"use strict\";function polygonIntersectsPolygon(n,t){for(var e=0;e=3)for(var u=0;u1){if(lineIntersectsLine(n,t))return!0;for(var r=0;r1?n.distSqr(e):n.distSqr(e.sub(t)._mult(o)._add(t))}function multiPolygonContainsPoint(n,t){for(var e,r,o,i=!1,l=0;lt.y!=o.y>t.y&&t.x<(o.x-r.x)*(t.y-r.y)/(o.y-r.y)+r.x&&(i=!i)}return i}function polygonContainsPoint(n,t){for(var e=!1,r=0,o=n.length-1;rt.y!=l.y>t.y&&t.x<(l.x-i.x)*(t.y-i.y)/(l.y-i.y)+i.x&&(e=!e)}return e}var isCounterClockwise=_dereq_(\"./util\").isCounterClockwise;module.exports={multiPolygonIntersectsBufferedMultiPoint:multiPolygonIntersectsBufferedMultiPoint,multiPolygonIntersectsMultiPolygon:multiPolygonIntersectsMultiPolygon,multiPolygonIntersectsBufferedMultiLine:multiPolygonIntersectsBufferedMultiLine,polygonIntersectsPolygon:polygonIntersectsPolygon,distToSegmentSquared:distToSegmentSquared};\n},{\"./util\":215}],208:[function(_dereq_,module,exports){\n\"use strict\";var unicodeBlockLookup={\"Latin-1 Supplement\":function(n){return n>=128&&n<=255},\"Hangul Jamo\":function(n){return n>=4352&&n<=4607},\"Unified Canadian Aboriginal Syllabics\":function(n){return n>=5120&&n<=5759},\"Unified Canadian Aboriginal Syllabics Extended\":function(n){return n>=6320&&n<=6399},\"General Punctuation\":function(n){return n>=8192&&n<=8303},\"Letterlike Symbols\":function(n){return n>=8448&&n<=8527},\"Number Forms\":function(n){return n>=8528&&n<=8591},\"Miscellaneous Technical\":function(n){return n>=8960&&n<=9215},\"Control Pictures\":function(n){return n>=9216&&n<=9279},\"Optical Character Recognition\":function(n){return n>=9280&&n<=9311},\"Enclosed Alphanumerics\":function(n){return n>=9312&&n<=9471},\"Geometric Shapes\":function(n){return n>=9632&&n<=9727},\"Miscellaneous Symbols\":function(n){return n>=9728&&n<=9983},\"Miscellaneous Symbols and Arrows\":function(n){return n>=11008&&n<=11263},\"CJK Radicals Supplement\":function(n){return n>=11904&&n<=12031},\"Kangxi Radicals\":function(n){return n>=12032&&n<=12255},\"Ideographic Description Characters\":function(n){return n>=12272&&n<=12287},\"CJK Symbols and Punctuation\":function(n){return n>=12288&&n<=12351},Hiragana:function(n){return n>=12352&&n<=12447},Katakana:function(n){return n>=12448&&n<=12543},Bopomofo:function(n){return n>=12544&&n<=12591},\"Hangul Compatibility Jamo\":function(n){return n>=12592&&n<=12687},Kanbun:function(n){return n>=12688&&n<=12703},\"Bopomofo Extended\":function(n){return n>=12704&&n<=12735},\"CJK Strokes\":function(n){return n>=12736&&n<=12783},\"Katakana Phonetic Extensions\":function(n){return n>=12784&&n<=12799},\"Enclosed CJK Letters and Months\":function(n){return n>=12800&&n<=13055},\"CJK Compatibility\":function(n){return n>=13056&&n<=13311},\"CJK Unified Ideographs Extension A\":function(n){return n>=13312&&n<=19903},\"Yijing Hexagram Symbols\":function(n){return n>=19904&&n<=19967},\"CJK Unified Ideographs\":function(n){return n>=19968&&n<=40959},\"Yi Syllables\":function(n){return n>=40960&&n<=42127},\"Yi Radicals\":function(n){return n>=42128&&n<=42191},\"Hangul Jamo Extended-A\":function(n){return n>=43360&&n<=43391},\"Hangul Syllables\":function(n){return n>=44032&&n<=55215},\"Hangul Jamo Extended-B\":function(n){return n>=55216&&n<=55295},\"Private Use Area\":function(n){return n>=57344&&n<=63743},\"CJK Compatibility Ideographs\":function(n){return n>=63744&&n<=64255},\"Vertical Forms\":function(n){return n>=65040&&n<=65055},\"CJK Compatibility Forms\":function(n){return n>=65072&&n<=65103},\"Small Form Variants\":function(n){return n>=65104&&n<=65135},\"Halfwidth and Fullwidth Forms\":function(n){return n>=65280&&n<=65519}};module.exports=unicodeBlockLookup;\n},{}],209:[function(_dereq_,module,exports){\n\"use strict\";var LRUCache=function(t,e){this.max=t,this.onRemove=e,this.reset()};LRUCache.prototype.reset=function(){var t=this;for(var e in t.data)t.onRemove(t.data[e]);return this.data={},this.order=[],this},LRUCache.prototype.add=function(t,e){if(this.has(t))this.order.splice(this.order.indexOf(t),1),this.data[t]=e,this.order.push(t);else if(this.data[t]=e,this.order.push(t),this.order.length>this.max){var r=this.get(this.order[0]);r&&this.onRemove(r)}return this},LRUCache.prototype.has=function(t){return t in this.data},LRUCache.prototype.keys=function(){return this.order},LRUCache.prototype.get=function(t){if(!this.has(t))return null;var e=this.data[t];return delete this.data[t],this.order.splice(this.order.indexOf(t),1),e},LRUCache.prototype.getWithoutRemoving=function(t){if(!this.has(t))return null;var e=this.data[t];return e},LRUCache.prototype.remove=function(t){if(!this.has(t))return this;var e=this.data[t];return delete this.data[t],this.onRemove(e),this.order.splice(this.order.indexOf(t),1),this},LRUCache.prototype.setMaxSize=function(t){var e=this;for(this.max=t;this.order.length>this.max;){var r=e.get(e.order[0]);r&&e.onRemove(r)}return this},module.exports=LRUCache;\n},{}],210:[function(_dereq_,module,exports){\n\"use strict\";function makeAPIURL(r,e){var t=parseUrl(config.API_URL);if(r.protocol=t.protocol,r.authority=t.authority,!config.REQUIRE_ACCESS_TOKEN)return formatUrl(r);if(e=e||config.ACCESS_TOKEN,!e)throw new Error(\"An API access token is required to use Mapbox GL. \"+help);if(\"s\"===e[0])throw new Error(\"Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). \"+help);return r.params.push(\"access_token=\"+e),formatUrl(r)}function isMapboxURL(r){return 0===r.indexOf(\"mapbox:\")}function replaceTempAccessToken(r){for(var e=0;e=2||512===t?\"@2x\":\"\",s=browser.supportsWebp?\".webp\":\"$1\";return o.path=o.path.replace(imageExtensionRe,\"\"+a+s),replaceTempAccessToken(o.params),formatUrl(o)};var urlRe=/^(\\w+):\\/\\/([^\\/?]*)(\\/[^?]+)?\\??(.+)?/;\n},{\"./browser\":195,\"./config\":199}],211:[function(_dereq_,module,exports){\n\"use strict\";var isChar=_dereq_(\"./is_char_in_unicode_block\");module.exports.allowsIdeographicBreaking=function(a){for(var i=0,r=a;i=65097&&a<=65103)||(!!isChar[\"CJK Compatibility Ideographs\"](a)||(!!isChar[\"CJK Compatibility\"](a)||(!!isChar[\"CJK Radicals Supplement\"](a)||(!!isChar[\"CJK Strokes\"](a)||(!(!isChar[\"CJK Symbols and Punctuation\"](a)||a>=12296&&a<=12305||a>=12308&&a<=12319||12336===a)||(!!isChar[\"CJK Unified Ideographs Extension A\"](a)||(!!isChar[\"CJK Unified Ideographs\"](a)||(!!isChar[\"Enclosed CJK Letters and Months\"](a)||(!!isChar[\"Hangul Compatibility Jamo\"](a)||(!!isChar[\"Hangul Jamo Extended-A\"](a)||(!!isChar[\"Hangul Jamo Extended-B\"](a)||(!!isChar[\"Hangul Jamo\"](a)||(!!isChar[\"Hangul Syllables\"](a)||(!!isChar.Hiragana(a)||(!!isChar[\"Ideographic Description Characters\"](a)||(!!isChar.Kanbun(a)||(!!isChar[\"Kangxi Radicals\"](a)||(!!isChar[\"Katakana Phonetic Extensions\"](a)||(!(!isChar.Katakana(a)||12540===a)||(!(!isChar[\"Halfwidth and Fullwidth Forms\"](a)||65288===a||65289===a||65293===a||a>=65306&&a<=65310||65339===a||65341===a||65343===a||a>=65371&&a<=65503||65507===a||a>=65512&&a<=65519)||(!(!isChar[\"Small Form Variants\"](a)||a>=65112&&a<=65118||a>=65123&&a<=65126)||(!!isChar[\"Unified Canadian Aboriginal Syllabics\"](a)||(!!isChar[\"Unified Canadian Aboriginal Syllabics Extended\"](a)||(!!isChar[\"Vertical Forms\"](a)||(!!isChar[\"Yijing Hexagram Symbols\"](a)||(!!isChar[\"Yi Syllables\"](a)||!!isChar[\"Yi Radicals\"](a))))))))))))))))))))))))))))))},exports.charHasNeutralVerticalOrientation=function(a){return!(!isChar[\"Latin-1 Supplement\"](a)||167!==a&&169!==a&&174!==a&&177!==a&&188!==a&&189!==a&&190!==a&&215!==a&&247!==a)||(!(!isChar[\"General Punctuation\"](a)||8214!==a&&8224!==a&&8225!==a&&8240!==a&&8241!==a&&8251!==a&&8252!==a&&8258!==a&&8263!==a&&8264!==a&&8265!==a&&8273!==a)||(!!isChar[\"Letterlike Symbols\"](a)||(!!isChar[\"Number Forms\"](a)||(!(!isChar[\"Miscellaneous Technical\"](a)||!(a>=8960&&a<=8967||a>=8972&&a<=8991||a>=8996&&a<=9e3||9003===a||a>=9085&&a<=9114||a>=9150&&a<=9165||9167===a||a>=9169&&a<=9179||a>=9186&&a<=9215))||(!(!isChar[\"Control Pictures\"](a)||9251===a)||(!!isChar[\"Optical Character Recognition\"](a)||(!!isChar[\"Enclosed Alphanumerics\"](a)||(!!isChar[\"Geometric Shapes\"](a)||(!(!isChar[\"Miscellaneous Symbols\"](a)||a>=9754&&a<=9759)||(!(!isChar[\"Miscellaneous Symbols and Arrows\"](a)||!(a>=11026&&a<=11055||a>=11088&&a<=11097||a>=11192&&a<=11243))||(!!isChar[\"CJK Symbols and Punctuation\"](a)||(!!isChar.Katakana(a)||(!!isChar[\"Private Use Area\"](a)||(!!isChar[\"CJK Compatibility Forms\"](a)||(!!isChar[\"Small Form Variants\"](a)||(!!isChar[\"Halfwidth and Fullwidth Forms\"](a)||(8734===a||8756===a||8757===a||a>=9984&&a<=10087||a>=10102&&a<=10131||65532===a||65533===a)))))))))))))))))},exports.charHasRotatedVerticalOrientation=function(a){return!(exports.charHasUprightVerticalOrientation(a)||exports.charHasNeutralVerticalOrientation(a))};\n},{\"./is_char_in_unicode_block\":208}],212:[function(_dereq_,module,exports){\n\"use strict\";var LngLat=_dereq_(\"../geo/lng_lat\");module.exports=function(n,t,l){if(n=new LngLat(n.lng,n.lat),t){var a=new LngLat(n.lng-360,n.lat),i=new LngLat(n.lng+360,n.lat),o=l.locationPoint(n).distSqr(t);l.locationPoint(a).distSqr(t)180;){var e=l.locationPoint(n);if(e.x>=0&&e.y>=0&&e.x<=l.width&&e.y<=l.height)break;n.lng>l.center.lng?n.lng-=360:n.lng+=360}return n};\n},{\"../geo/lng_lat\":62}],213:[function(_dereq_,module,exports){\n\"use strict\";function createStructArrayType(t){var e=JSON.stringify(t);if(structArrayTypeCache[e])return structArrayTypeCache[e];var r=void 0===t.alignment?1:t.alignment,i=0,n=0,a=[\"Uint8\"],o=t.members.map(function(t){a.indexOf(t.type)<0&&a.push(t.type);var e=sizeOf(t.type),o=i=align(i,Math.max(r,e)),s=t.components||1;return n=Math.max(n,e),i+=e*s,{name:t.name,type:t.type,components:s,offset:o}}),s=align(i,Math.max(n,r)),p=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Struct);p.prototype.alignment=r,p.prototype.size=s;for(var y=0,c=o;ythis.capacity){this.capacity=Math.max(t,Math.floor(this.capacity*RESIZE_MULTIPLIER),DEFAULT_CAPACITY),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var e=this.uint8;this._refreshViews(),e&&this.uint8.set(e)}},StructArray.prototype._refreshViews=function(){for(var t=this,e=0,r=t._usedTypes;e=1)return 1;var e=r*r,t=e*r;return 4*(r<.5?t:3*(r-e)+t-.75)},exports.bezier=function(r,e,t,n){var o=new UnitBezier(r,e,t,n);return function(r){return o.solve(r)}},exports.ease=exports.bezier(.25,.1,.25,1),exports.clamp=function(r,e,t){return Math.min(t,Math.max(e,r))},exports.wrap=function(r,e,t){var n=t-e,o=((r-e)%n+n)%n+e;return o===e?t:o},exports.asyncAll=function(r,e,t){if(!r.length)return t(null,[]);var n=r.length,o=new Array(r.length),a=null;r.forEach(function(r,i){e(r,function(r,e){r&&(a=r),o[i]=e,0===--n&&t(a,o)})})},exports.values=function(r){var e=[];for(var t in r)e.push(r[t]);return e},exports.keysDifference=function(r,e){var t=[];for(var n in r)n in e||t.push(n);return t},exports.extend=function(r,e,t,n){for(var o=arguments,a=1;a=0)return!0;return!1};var warnOnceHistory={};exports.warnOnce=function(r){warnOnceHistory[r]||(\"undefined\"!=typeof console&&console.warn(r),warnOnceHistory[r]=!0)},exports.isCounterClockwise=function(r,e,t){return(t.y-r.y)*(e.x-r.x)>(e.y-r.y)*(t.x-r.x)},exports.calculateSignedArea=function(r){for(var e=0,t=0,n=r.length,o=n-1,a=void 0,i=void 0;t0||Math.abs(e.y-t.y)>0)&&Math.abs(exports.calculateSignedArea(r))>.01},exports.sphericalToCartesian=function(r){var e=r[0],t=r[1],n=r[2];return t+=90,t*=Math.PI/180,n*=Math.PI/180,[e*Math.cos(t)*Math.sin(n),e*Math.sin(t)*Math.sin(n),e*Math.cos(n)]},exports.parseCacheControl=function(r){var e=/(?:^|(?:\\s*\\,\\s*))([^\\x00-\\x20\\(\\)<>@\\,;\\:\\\\\"\\/\\[\\]\\?\\=\\{\\}\\x7F]+)(?:\\=(?:([^\\x00-\\x20\\(\\)<>@\\,;\\:\\\\\"\\/\\[\\]\\?\\=\\{\\}\\x7F]+)|(?:\\\"((?:[^\"\\\\]|\\\\.)*)\\\")))?/g,t={};if(r.replace(e,function(r,e,n,o){var a=n||o;return t[e]=!a||a.toLowerCase(),\"\"}),t[\"max-age\"]){var n=parseInt(t[\"max-age\"],10);isNaN(n)?delete t[\"max-age\"]:t[\"max-age\"]=n}return t};\n},{\"../geo/coordinate\":61,\"@mapbox/unitbezier\":3,\"point-geometry\":26}],216:[function(_dereq_,module,exports){\n\"use strict\";var Feature=function(e,t,r,o){this.type=\"Feature\",this._vectorTileFeature=e,e._z=t,e._x=r,e._y=o,this.properties=e.properties,null!=e.id&&(this.id=e.id)},prototypeAccessors={geometry:{}};prototypeAccessors.geometry.get=function(){return void 0===this._geometry&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry},prototypeAccessors.geometry.set=function(e){this._geometry=e},Feature.prototype.toJSON=function(){var e=this,t={geometry:this.geometry};for(var r in e)\"_geometry\"!==r&&\"_vectorTileFeature\"!==r&&(t[r]=e[r]);return t},Object.defineProperties(Feature.prototype,prototypeAccessors),module.exports=Feature;\n},{}],217:[function(_dereq_,module,exports){\n\"use strict\";var scriptDetection=_dereq_(\"./script_detection\");module.exports=function(t){for(var o=\"\",e=0;e\":\"﹀\",\"?\":\"︖\",\"@\":\"@\",\"[\":\"﹇\",\"\\\\\":\"\\",\"]\":\"﹈\",\"^\":\"^\",_:\"︳\",\"`\":\"`\",\"{\":\"︷\",\"|\":\"―\",\"}\":\"︸\",\"~\":\"~\",\"¢\":\"¢\",\"£\":\"£\",\"¥\":\"¥\",\"¦\":\"¦\",\"¬\":\"¬\",\"¯\":\" ̄\",\"–\":\"︲\",\"—\":\"︱\",\"‘\":\"﹃\",\"’\":\"﹄\",\"“\":\"﹁\",\"”\":\"﹂\",\"…\":\"︙\",\"‧\":\"・\",\"₩\":\"₩\",\"、\":\"︑\",\"。\":\"︒\",\"〈\":\"︿\",\"〉\":\"﹀\",\"《\":\"︽\",\"》\":\"︾\",\"「\":\"﹁\",\"」\":\"﹂\",\"『\":\"﹃\",\"』\":\"﹄\",\"【\":\"︻\",\"】\":\"︼\",\"〔\":\"︹\",\"〕\":\"︺\",\"〖\":\"︗\",\"〗\":\"︘\",\"!\":\"︕\",\"(\":\"︵\",\")\":\"︶\",\",\":\"︐\",\"-\":\"︲\",\".\":\"・\",\":\":\"︓\",\";\":\"︔\",\"<\":\"︿\",\">\":\"﹀\",\"?\":\"︖\",\"[\":\"﹇\",\"]\":\"﹈\",\"_\":\"︳\",\"{\":\"︷\",\"|\":\"―\",\"}\":\"︸\",\"⦅\":\"︵\",\"⦆\":\"︶\",\"。\":\"︒\",\"「\":\"﹁\",\"」\":\"﹂\"};\n},{\"./script_detection\":211}],218:[function(_dereq_,module,exports){\n\"use strict\";var WebWorker=_dereq_(\"./web_worker\"),WorkerPool=function(){this.active={}};WorkerPool.prototype.acquire=function(r){var e=this;if(!this.workers){var o=_dereq_(\"../\").workerCount;for(this.workers=[];this.workers.length {\n let replyTo = document.querySelector('#in-reply-to');\n replyTo.value = webStorage.getItem('replyTo');\n let content = document.querySelector('#content');\n content.value = webStorage.getItem('content');\n};\n\nconst saveData = () => {\n let replyTo = document.querySelector('#in-reply-to');\n let content = document.querySelector('#content');\n webStorage.setItem('replyTo', replyTo.value);\n webStorage.setItem('content', content.value);\n alertify.success('Auto-saved data');\n};\n\nconst clearData = () => {\n webStorage.removeItem('replyTo');\n webStorage.removeItem('content');\n};\n\nexport default function persistFormData()\n{\n let form = document.querySelector('form[name=\"micropub\"]');\n form.addEventListener('change', saveData);\n form.addEventListener('submit', clearData);\n loadData();\n}\n\n\n\n// WEBPACK FOOTER //\n// ./persist-form.js","//nearby-places.js\n\nimport alertify from 'alertify.js';\nimport addMap from './mapbox-utils';\nimport parseLocation from './parse-location';\nimport makeNewPlaceForm from './newplace-micropub';\n\nconst makeOptionsForForm = (map, position, places = null) => {\n //create the

yVYRn=I{#hi5N*v63h?a?Fc7 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%0AZkLQ`GS>=V9|S^7x90(*kb`1z%bSp@g%iVdQzD+ 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%0D*0763JczUf;6vHRwMTl`^ zv=)eCi8-5bOQ5%E>G;fIo#7zl3<3}+N0B^hMD$=(45H?!`%%El$?q9e(#vm!)Ll&} z3xN7~VRU*KbbQYOE}0;G!|qyGs}^z~Xt3N&bJQ4KY9}s(!GPW6HGpfSVsg7UpsT9R zU5*2%SytUovX%6andj~p1eu9R@xj2zx!Ba-8>nc^uc6a*6OZ!7EN5^$LA^wkyC6dBAAkd(VRCfhtSC!<#V z2oyXDHI`6S6VxGOLYt)8h3pQaM-)p2D_#V0iNrUl#wk6$GSL8Js83jrDJeph2K^KZ zky#c_0}Iy%BTHFUfhTzmD=7XbdzmH#Vsx7324F|$AUawgdq;fVk@I1^y`;wbBDx`!yu)sx4nt`f7s^0 zfr4Cb__HEhWHZcZs8R>FdNZFn9cFvJyjWjve0`77e*eR1DbO5L>Pqr0Q`iLGKe-=TZP1qlrT#bA}sJK#(d1 zPVE*nXC^#2JRjjbF9i(;2~fV3u|IauAz$7saI{EC-sfsPrA#clC&Kxpkl?Su9M86w zd<|Vj=6fkfmx-=8vYWKI;5{9k;b+QRL`O=ZvW06Vq+l6x$Yrt{H zFYr90b}JtYWNiE*)w%c$vUk#fEO!J7a?o8EGW@!27Vw}+sdWm8#u1l$GC)qxyESLd{>B`dcAZcpmv1>C^ z;U=1|U}*MQYut6Y`o+qg%_LtdTAfl5OQdQbk7v8S3N?ZuTw%?D9TSb1h>h#SlWx%Z zrRh+D1>GzQy~Bfe{Y;p9*w=aqhj$gzFLuUjHLiy5ZeV5V z(5OrenpSc|G#+l=O>O{YloHAE`C-%5y3PG1QMo*ADDLmRy~H^n!4p09=>cK)#)};}k+iY~{2mSicLUcbveRadzy1QI!O8wDOw$}-Q7c_mjl?|yOF_s~ z#^%%#9yqFAFHs*c2L-f=;XbV2DiropC6)G&*sf?Dl5%kCGU3L*IZUh6Sa%f39V3kE z)fhJhKxQ7vEdn!qUPPQL5m#vad>HL>gq72-OG7>sck7ncpRXZx#5V#MI@1xzhAKaU zN5g%7yE)h;7e@YkzJQ_?1ORv7O><)Foz{4wHpjj7fa9SZ2x?adrC{MH>>5H&UfWcQJsSW`#k>re0nu@(taWV z*Wt0f$A-dJq}P4LRy*H>8--TMG88e#knWOSEFEextsxP*W|=sfX9G1*sKl|?pPwhB zEj->(4!<#IiWeM;ai{f4vjnQV%=LIG#lwktc6e+cXvAt$T#}ojf;7YKOf~Q7$1IEG zJdG1@h-X8~xHoGn(6#`0KO(M8w?_!`d<8$YH>=FLtRmgMz1pTzgT$ltn|)?r2MH#~ zpR|JD@IPqkrFn}iRfr|4Hc zkaJCA^5a_H=LfMQYJL1AjJ~Ue-4ovwVcMh1fmFY9g4?rNo=Y95IR554 z&=y~sxfoig@AXNwVL-~cclVrteXeTG7Ick7#8T8LP7^p-zpr$d#hY@E;E|~=KFwg> z#u%;Yp^Q+ssH0NsDmHcU&*ErPR4;vVbhB>M{ULF|pitTHj!Ji(>2#83IR~+kac+g4 z`9TDE-FKsXihURG%jorvk+?u(*?Tdqpqx|oc0BeHnGI-1RJm(Bu`A#Df5xU=y8y2k zJk@>OwpfriGfhzLu$z2gV67HOfImE5`nNpX{`uwE;>S1o`1rK>{}0WpXTQBzzS#PE z^>uONum1Jz%a7;(m(8E`=RcRh{bnU-PfL}GVg5xI>?a5-m%1skUtO2OclLx0;dBRn zTrI7Ld5y736HssbO|rexh4noXIWtTw^e*>u78oyEL|0N=3!X|{E7(j~uQK?SPu^Dd zwwwLEqm{5(<=vZypg{o+p+z*BY!DF_>*xMYT=&Frcm|O(tjOVFj?R|7=6YLlKM}ie z=wVDf$TU~!q0$m``-GmrXdlJjD|Q}24=t-mlATsrh#}@WX+ZeA84rx zMXmVfaK93w(!EBqv^X>G{CvRZJ?lrmkpa{TtGtdZpe~|LrV|Qr`7ve z;Y#u4KH^ojG=!D0QIsmR8mc*TRY?YVSl|%i9K}*iCFBMF@UH$eZw6cIsrzM%`xZ3N z6M7%YY5VZRmfx?q>*w_FU^-MGhge6P=WsPCM0$XwAQ4)sQEGQU`!3-qTH!3l>-w)R zRmFVCA{}sKha|@^tw=b6~cgh@EHkm~GOZ8NzoT}`hWhzKO z-oD{aB2$cZF4+a}(abM8VZnBd+hMy)_PD$m`S6;4zh5MAzS8 zT>Tdy+RwYz;@hDGqgF|J^ClrxvUUeV>p_xJtLsc{acyrF3*Gm`9Bza2AM-}?9}eD< z`63|y8O6$oVa@ps1(zy0;6$7Ru!nWfs_8ghvmK(hG=AlUF?ehRtafGX53Jp9co9}_ zYLS5S?LBFW->ShQEEdC4ojoV_6EYE;s(xL+;wsE^{hCmMFo(Xlgk+4B>!4N5K?&*SgO=|#NnlS3Y)23&e7B>w^%)Af z)olC-eB`pmREZ>LUygCUeJYTjb7agT1)`YpBoE16&E48k)f>6&l9jnP_M=|I<@Tkn z?vC+v!ic+tUfFdNI-8mol{pZKUM14;# zz0kwO=5b;?I&2h-LpGSU^HLPGQAyY#U4bjGTSm=A>Y&9hS#S)gM$|83zZE`6egTUf zm!NgIAiJtS@Zw2!k0`$?jUbhn$L1)oyYQ^(%H4vJk0dHWS8;SN=aSv45qAk*+J3J6 zl!D}(Y3^RzqjMN@9aTyOF_esHM1(*%Y~<1A;!`2E)lE042=<1IW^$l+LB2DMXFKKT z${}5XFmZE4nOqj=`1X?<@0$fsYtQGkqH86TTrZIjA6Y0_TwHPgKjtgk88F@AjK!PO zBFA6#D6so-d@OV44JosyDy6+Fk$u`J2!?nWzxfrcTxONcgmDzTjbY;pBc z4r{X+?N?e#E6DJ-Lo#9)kcS*1-=T-xwv8d@1SS^3k%v)&Y;ZVR$!5ZC00i2Rs_Y8@ z0$auEfsqxWZVEI!9Z{EMGKFu~KJ`1}yJq~>m{4yk&r@(!DuS-K0n!w8Y_G_SlSahk zs6=+7HH5R*Q}sBB%d`_K(ohuuakEi0ifv-Ye-uk!22T11rQ2ZA7|pn+r;KUalp$-0 znnk-|og!lmG({QvZS0NQcu11#?hfwF^^Dv1o7ig?ZK{t|hooQXV$P+qTefMIDMfYS6bnHnmN7J3PE_OHWf zfOBD5m}b^|Qgh4Ldj-6I3%m2}7WU)zTEgVVDYwQ58JFYK0$PbqU&upI-1~8=w1S#H zHYf^awKUeQBt8t1Rye8>BdwwwzNR5Bb*eo75kbY|7Z0q44NbdT)gvlutZLU-EXqJA zYiMvu#3ghI*6y5ASfW zzIT0WHAMok0gBBI8qZ&tQbK|1K~9zF3vF^Vo<@R`vr$pPPe$Yt-Bhy#63f%)sZm!s zfn8tx2_f{nl&8H@0e?<84$DM9+ei8x{&m>FiFsXE=~XxelyqP+-Ki@{L=LWIdfj6r zN`hmImY036*>nJ%^yPBqKc)TmjnGF$xHlC;lJ24->{tc67ou|K^{2Q(F_z$dSZ7JH z)Sk|#LcOwdR$rjS`;k4^{I+fzXR&Nwu-1N0daR)x0(b@p=YRP%y`dYD)W)wSV_byw z_C>SMyr4PRI`S7Z!&orOQ2Wd2hWBfdW2RZBS$X!bh)jiGgO%@CBKlVTx5x_#um5z&YP)f{A7O2Ox|+~ zDxawINqHaDWc5(TXRC(IK+q6@SQy?X;Dw+zL29W^6+rR6BkR)H>moh2^lKuWwDe9C zurt9z^-RL4$5T!fjv0oy{K0=OvQ$QG*B6InC83K*&S6C4awz4Wh7D(9Z4`w}YNfW) zJX1i2-%{mgh1<6f{aT^JXZ$@fU9pOX&$)AyA@xl_Vl*27=&s=}l+ByYA3~i3{_O?k ze^6@b0x}v(lKg|MPq!{0%#!%=2TfxC+ZV^bb(JE-bVGYKfBHM7NaOxtdp}hi>Pm_j zY$%QI6UC1oH0n+fguRj`;)kyDZ#|-TwZ8!2hEjNerQ5^D=NN$E2*w+VG3QXCpdZ-$ zlz;(`ShfW5^bkJL-xC8L7z;}HJ`dlcct6xAb|{he2V2Ju$JeR^6Y$aSrtVe(!eeWB zusF$r{j4sHmjU+S68mczCx}g)BAy8O;Y99|#s;}gC4BpYF@lvE*8Y4$Z$Akd3HuZnHlsAmjp~ z+qLAR0|LkkY04JvLgHU4YtI6pK7PEHeqcWGvjpc_lXU?K z^qh*fJm7FvNe7U;Tt=nlpxB~#lWG5InGA-nl#Gg2E}a5B(J9yQO}~%_$XT|Gg=55? zvgw2a_9#kv!+p;gXX_`9rD_!e3i(-5;S@AHMz~H^t$F{BO6Me{=+%V$;4p`ZB9ekZ zMuw|nsRBNObRnPbqaEyv0Rk711+i4o$D`bQLdP89EjSC4QRMU<>^-#AlFFlVYzp%X z7?Sp5luM51q%ne_r={gEi_tBT)3259Qz0ESAjW_bNFfqza|X7 zte`IFGz#D@?z0{{jclD8@SrXshK})$1`2XNbik{$nm&*L9o=6`orQ&Oa?HMkIk~ zGI}O4>TN4Rbcmwgg}fxb_Xn=T>gU@t&ao#9eBa*8wKb}67w&c+>wGkwG8n(;f~V42 zI8IgUOmuV@kLS_ZWtSI?h+P4+rkN>r<@F#(1K zp*&PCzn&iry8}Jh;zKoUe*W-)Bf=Wq3y0<)nnM3m1$EN__TTG`YKa$-9BV)ssW@rD zP;RHfN)pFd-jYpr6{Z!FORA02ffPqkJzFy@0f^6vB5mpaOMZlXi++J)-S&Tf-15)c z%lgnQzia2$^v%C@%+xEsStX?jg|UQ_vU3%^tnEH}@4w)0*>{T8rTNiM{j!-G@6usy z7(^8c<{v$jFD%zg_+J<(gy0Gw=UpO!;vQXQB9K)2jXC#)Kis-LZ+(luAm={YX{WYY znE54(?>bzRZmZ)rKl`Hkx$lb7$HhJF&6&Ma)a!HcDEsi!WvFFKZgsyuJ5L)nQCLOU zQ6V?j@6^t(G-Z>|x$}^;lNWIriovrIw42&CjZnYck~NU^pTYRGO*pw$7q$)R%W}(C z;LipQc?#w}`KA(%-$e@jS@}+@6^S>Sx3%q@4b4fgnypq(Y_pC5wcCg4Ojm@fj-l$5 z9heo-vIno$uo8cYTf0_N^<-Dg$Yq$7<dUcUGGPdKOV6XRgLzB>hXKX7?TP*Y|P7FPQMPAKk6j)>|B?;M_~N1SJHPMzhMeWZ2P z5@tRwbXmD$TI}-FqgQN}kv33;OMadF;FOl{IG>$3UVd=+g9qj*U*-OKcWRwkH?Ll9 zS#JYAK8nhZb#<)T_;?h3KREaCZ5kWX^hkm|P=;W?Pt5}NN*^6#=U&P<7~8Em;-y+n z>++&xetOCddP2un}*b|#l%%5v*Lpn zQc6}eY}uz$V{d^go!hjld{8zR*|-gbb){yA2n5kD#6*>`8xTHJwO+rFQkk(EukeLs zio>3h%s*7Fd8XnAf6;pnc(f_;D`n#>(51wQry8?=% zZBm5~EPBuyd0819E#pV6u<-ryNqf^|v&H9qs~8)!++e=vfC2X{$_=SjiG{kxs*n!1 zP39*WzH~linlPS`twN&0|NC5BL#8mTLz2@4@q}_`6|Qx5IAtqmT3--9pax;o#GUH2 z*)>+&{mvA!=$8+33cVawASk$9yK*f^ely=~+SNDQ$5*ex!>b8c?oj4Bs3H_v4-S70 zPL|*OCM)~rcTKQ59SM}zIvfH~m&SI9begyn6ZiM(u;dDXi1##O*&qW{1OFd0>7?^k zqlX?oBm6>kf3R2So737b5!uuR)x8q}a}ij@55R5`SBT%P89p%FiiL8H+k-G~1| zAzWv1gJ$}rZ^!Sk>2P>EZ`6MEWgf!iCfR$ne5j*Nwz*?G$4x=sdPK`u-@#Sbh}b$f z-4Q$0?XcIQBCCX%@eQQompf_N3-+A#P~Sq^pPiKkUNJ(n@EBU((Wkt>ny*1O=NX29 zmLYd;SPNvI5xC7(+lj&?%ZljJNUE)j^*#{`%8Y=_oPJEZP?q#@?PGZAO0}(v1y`iR zC%O58z8;KG)Fb6Eb(cPvhlAue=;r(0Y}__ur1b*`H1WFNQA!GxG)`?G#QsNrJ^%Y5_`7V z!$OY+(sNjM5vdNdxH4EEGecaaTGbQkW1dm9KS=gPOjqo>8Z)sS@G6VdolXh6Sq#-E z-)UN%tW-5JeMc6C_uGLW8yU$y=(SYagLZp1wf13R7Tdp?j4pM88$0rcNiR?0D4EA?WgT>UT%e)*>NklYbu2 z6f^4B?lY!r^sa%S@U#x@^70|OPV_)=uilMXOi>3;sRgpAK)ce*&+n=O?T)D;EO!U= zSvZEur>c-OTh~fOnjikbt73ZB>(t!B%7UNzG%S?rtyGyVtRJhgdd)TlT+99jgX>js zXK52-cbY(cRbDbBTz2bz^2sH?>dk$x2P3F`^;#g7%6gV zu5@+?FW)vsN+;)i@KZxI$uR`@?1g~%IHY0#ngT<-9*G=aB^mCtz#l?ox&|gVge?#u z@8~DG{f6xZQv2ULKG22Hdhv5>5Yz9(%$FfQSX!Wxg_$OqindFcB zOi#ajlw8mA1^Mc1D#dMEVtzj=Ah(6y_E!H19=m7(+oqNNjucNPG(s&t6C;_bfU_Xo z4Qr=_t&6(mt4`CmoEgR27vj3FNu#xpixlhW`jjUsgozN}6EHzB^qw8cH~4+Gg5NTY za~w}K*I$Cq+Fd?f0`OD66$cCweIG$g?V5N`37-bOYHL9?{_F837q0W09Xz`@R5p=8 z;S?kZzPe!-yASMDm;UaJo!mmaAQSbO@#nNSERo|Wo3261M$sV~;02op4@1|?A<{)H z`ye4~5@h4Hsi_V4>$078@!F}0C;{Y>Z73?;%RNxcS7&SApeBIPRa8o++DWi$wo7BT zsj@r(Y*m)38*!YRWNc#u8EvfuOk+GrNkx?DRyS!c>HJjmiVR`*+!Ku;wxpUaI8lQt z6$5F2g8`8m=#0Z&3Ct*AmhdiEp}g1b~ImtPX?DZ1V=%u*;~|G z-lKxEmYA^6HKnLIjiWH36NJp2N6l4BLfgQtt-=!X&PArJ<{y9$uPR5Q1t~$6^FUY3 z%}RTRQb}2kkz>x#p?TVQ_i|wN(<-vNrv*$2!{Gxy)Y8Ybfw61EEc^vn|K*q{o9|yW z;n3OF2-%S3DA%p# zW}BbYlt-#fLD+NXa&&>Q-{R4<{*^{uRPGQ|BrfnYp;JCzp$Uk+w*V#?&sh8{N-~G zaqCyU|GD$a&(D7P`S_E+mZOzmW%(JZSXB8*aP|}Be=>-Dzj?o~gZ&v;TG}1eYGopX zP?`lNjauw9aXn7Wc8xT(3%0pimyr!?fYS(Fqr>b?@XAX8Ak7*Gz43Qw&1q}NfF_Dz zSBs@MFP;wbHNpeAKh?~~;7=2)6K;p~{48-CHUXxe`Tn!JsCW;Qdq1T=f8wY-=arUjfzWN{3%`<=y>@ zR(F4JCvk+Nk&;D16A``Qr&mCBM<*zZVeFnTCI}87E|4>O%h0tGP>EZ3=jlH}zigMlDlIVDA8}{EISA2Akh7{m z`;(hQfGVq>f$Cj!S9Qk7R0)HWO|>p$YpxHg{?B@0@F5zOlE7FieDcU@8JTU_{;yhO zuDE&$NmwoSF;3qoafm^BhDNy7oL`){K0f)80=tX4a<9F@l(v7(i7YP#<_8z$LQqK4 zy0F{!fA3d+p75^+lPja zXAj+Fgv=M%go;d=si&{Ekc}=J;lmU-C8U5uTk9?725t`2A-=SLBq#u}pGZTv%`4tp zZGdA$r?J~Ykr*P+XiW>i6-Fa8!l)WOz_W5qBalGykUY2sx%|2BJ<`18`acB@kP5y1 zA3r1Umtd;|xP=Tc<%dNWy)}lElwbxBJ~0^6Y>2HF(6v9_ZAAFpds=7={cy@JjUU}N zpD}%0@9XX(Kn;4aZ&m@sl6?J_fSPhsM|j01b0&nk$9+EqD{YU-hr*pw93+5@P8(!o z9uisROp~fGwiGaE!|$x5QM?7yYZ~fwneLLt(DNGfbU%MKY^crn8x$3%gd&6g3iY^= zn1hI(PxTV-kMSW+5J$|wsN0TiD^1f1JC7cuFrK9wVo-)SVZ8*Be!YPT5ry%57>|d= zwp8TTQfUI*gCljv!9vh}aHua~L~IOh5|it5N?%>Ex0xs5fN?mXNtUpWQ=5}ljskIh zMc+k-ltrlY)`5{OAa2C@+JmS2--C~;X)<%R;FX-kV=59ZM<;S?>%aVX z{N{f{JuC2kz*HpT7GhQJ<0sL?((j(e=mX={$6oL^4m3^}yZ=|0{9;8HDIlxq!uzT< z5gv_Ro2dYlH%{1B;}hcrn>9FBANcEE1N~7)-fhYo@blL`ygC9nH~+H~C2>z}Puuh{ zy@c*ujKcgsGslQX7I?Op0<#{U;6#4Wh3F$jTn9A_@+&?!eZ0a2=kQIB{! z_^)YN8rlSIJY~neGOr;xfQQ>FL*$%{@Z1QoKIxB!aD19gp>!`Vq6I9Sqm-s^?R-nc zn<`%_?&n48;g$Dp%N9XKOP|uoi6W2Fk8~L>FqW$FjZGK#Y(o0GQ%NOtlEd@Ek#B^i zOG8oVwq$d}$JlxkYWp1}-Nn3P3wuAi3=&WUsAvyAQVwqTtvGkmW!&n(fTpELmMPj$52*as$aU`5{J3! zjMFYoiz9O;uLQ={Fju2*NI0sAuSBn*>zzzw*l=xPO=Oikn9-&3ig|Zoohp~+Ie)c_ z@%kB=xN^j79CLaD{b30-$u6!eI+hKeBiUA}wtn9DybySUd}`e`#i9!$vzSLt3=w5J zhsnIDoxyryr0tKd2r$(CQfsxjwTznJ!;$oa`(!bautdomSDxl3r5SIvO1&xLAODn* z=3u6lr8vu^6Bnk$U>z9g;-ufQLkq0agXPt}g3e?#?ZM=!%u`f(Z+beAj#vkhh(Y8w zp!FU%r(EGnhTqH+sOiHf!C&*)dpfNEmx9sDM&%nprygmkUN@~e@ZN)P2w;N^Pj7O) z1Q~8f!JT>91nkTQeBVP?4>LP#<*% z00<RxK){h)z>o=x2C3!R^rVo-I2yTFp85qN&mr^|36a@QS=Ek8lvw0>F+k z{WkOX16{ZEqkL`Wdc1?Ta)7{#ZGPesSJ?agYKZs}!M>L^%V&MNzR1L+re9ySVTrRf|-+*rbI8`yshreS;D za_N$|PaT(8{JbA#@B%gtdaik@7S`wLKD zCQ{?rKool(Q0fWce=V%=tcUy=&gpsM=~W@8d!;9&LM4UQgvyO)bQqLn&~#RB=HwZN zi<%qw=YUIpz6sjy36CuO0(D3N6d@HLGZShEd8dXrb)947-pnel*nu=5IL9C;Z7zQe zeGr0m%6S2(>%slr&I!KW2fCE#$|>)<0bnNj0$2{xT~dSB*T4_|q_s94s~Pp{Bqpyn ztS3)_83dVo5{6=n1yNe1FBwl;9vhqJb)$*Pb`Bd5Jx7^R?h*yNLDA+*XCT|ThNv5S zqj4i^xkb6J%(@=NgC4S;q@J>5+XCVCUbi3W%`Zqx*vqqEN<7y2TTTr)S@F>o18y66 z{x}epe}IVCZ!_{hwqQfkMi2{>+-fx9LFLHU(Cyf*qJPku`Q?(I1oeRw-^&=WX#oDc z3m5eMh=27w|3ILENY^7S%r0+~Dxy=%cbkT4hP34hv@IdO4&KdN2|Me^QAkIOLVlzu z9g&t0n4+2Zmh`8>^7<=vHz#tzczI}yD#(nsJ6+sCt#yM?*VwY$y`yH4sF>Ybb z6;B4~2;pHExHP@z={YMKJcwb0di4!|qBsPGZ{1TD-S7NJuKpOzlkO6l(>42zl`Y*H zK>_Jp`TLa>VXWm2eEB~DSME;u`!DWM_LoGY5o5}^6tG1$^Yus}*mDKFFHxO?dY&;p zO)rdIu)ycbvQzed!fPn!b%6GhDk*;l?e782muOGD4r2LQo7?<>Ov{xu9O-NY8VTi2 zf;gTxQjg=dMLTqGY4T;Q4N67O@F9uce|HtHF2w+JsX-vSG?_clGs}|}o`2_qT9;_% z?`}ZXrQgPIq|)~s!$qYb7bd1kx9y>o{aTh<4h?0<3o!n}x-BZuB4BoEK+9G%#k?t8 z!5s>))RiT257!S6!K^W00VD$**K|^i8dAbGio~;OX7AK^5QTAY{!6knue|7>(mDD$ zr4F!4Vmcs8oxaAuiG0oKd$hPd=05!E(=>u%N!`6t#=aW=KvbgVtx6O;NDO4Nx}Urg ztsIdwQvfJo3aQ7$eB^GCT}hH*jk2sCQ{}Efr`~m^f7u&Hqi;(jsjqZ0Uvfj0%@7Nt znj8WmV2L+N-5uYE* zzR5ww)R2Po<|OL7p;p9j@b=NU0)GUcpwbm8d(oPQX4~3 zQ3U>H^2}8mmK8}*up5HWk*>NyxV6m5cQj1>Ec9BMpSLVa#QSR=0w0`^?NhJWZX_9@tUv_{&re1)k2Rhqy}BUsyIrj zLO2hSk)6d+EF4*{tGU?)&4>oH*egsNF{9h)klQ&Sv*WHf$4q;*tz#xVBKCo zEJslG0Lhf(%SqGM4N7?#DUH8ZSAQ16Bi*zyGf3Z15W6ZMRm*zqK;Z7}GhS?Ybi8Pe@6rK@hmyd@t1htj}_u_65 z{5WP(kl>OO6a--g!QLkx50lma^!`%SPKcxc z9ljFMec)%442|Ye6xO){WFiLEi}j5W?@Rui9cL4=0K@4Jw%tA6lp-9{MRL?LO!afp zho+H3i)2Snnb*!H*xrcNiF{~squja(;f_qQq7qn(h_WEtjzSLz+(wp$(Y<73wo-7$ zpH8}e4a<+e-By^&sv-Ji{l&p_r~S1nm8-xaIqPt@kU8=qgZz%>%5R09j+tz<-LE!P%racv0jXJAh+7rNVn1KM*mE z4LfG6Wskl4;^#!L0xQM!*dWbnoT&U96VXUNjI^MsF8U- z=fhh?BfMM5frA_3{h*#-7D6G%+c1kq-tJT7@R|IR9)E_(h8D`hBJl zTL`WwT_b;qh^e@(D;t~SSY!L^mWqpQArl=c$VaWI; z>kxmuA{f~hmW(&7Wbq|P1%xdH^kQAe`GWkf(l^Eh@jVh2>l@S2+6QzMr z*Gem;N!pK!B7@{=IUnEXZ+8ic)It~kbIE%{~ULI8O4j(mv<{!0w? zUZ2pLVQjz@n$e4U2G3DL3n9&io=*`xE+d4DNO&8IF|;lQblle;SHEFEju}C5D-KP& z;~V8MdJ*e&%zN&H+%FcM?rh@Vj@uPPn_b0U&s}yII`#_sQo_+u-1KllvmlBQ4xo=9 zQ7&AQF$|HwGR=;Id{h}kJV7<^{^J^UELwM%A0lLvQqtoxaJ5Mde(85 z&5coJHx`hdE&Q;zyKKLR>Ad)kc~d88^`dCc?uQH83IUx3V)}n~#Z~}ZkVZCy z1YuHB#1HQ1h$`8yxBjJ)kKY(?-8S^jaGytVS5Qu z{ZXUw*r3)Iv2;NC7B=Sq34&lQr{^U|ZUm!}#_7%?AX%>`&c1t-=}~*4xKnz=M!6tZ zqG`{p!4#?)0h?-Gc}MAqhRGjfR0l+{3V0wVBn8}k))MRBQ%P0vN&Un4+ghZJUj(_eM)P{3A774cTeMRP z0?rt8^-M%eHL7L#fcRo=g<`I);nM8w2jw?zH8}W)UNV9hO<~4}v zI73rVU6~OSV~h)BzYCUXViIq7vh^e+iO~3@k5o>CnC}L0dd=;{G&;(tNRjgod(V5W+qd-sg;p$7?A?rNzC3d4rCTyHz*ZQM%*gZbaWUZ<--?OxK0$}4|O-pk_ zc#lBFF;78^qR#}_^QL7rWoX1FVWd7iLFe&|f08BWw;IPNE?|Uc7DrmYR8`j}K3O#( z_X4SVdtZrwO4%2q5hwtDrfRgv=(N2@p*)3Ca4=yQqf`? zpi!d8Gz5Smdi8wT^cFe+RZFZNjlqYkRo0j0D=yY(TDd~A?uVhDJ@Y#N8Vl}MR8B9q zIwp`Ne~MhmXV@Ns^sCqD^nY*E2&q?SzUHswf16mX3qN=nX|)IDdBrR=wD1+aKMUk^ zvj9>SPV0UXYx$X4UBO7$Q-+m8_CM`+)uD`QT~UpckaM!wz84ltbF`17N^vsZ|1?U;+CT0#$xdB0#ucEZ8e z;nVS+fAWXEglEhTxF=Vi7rdQZvOzfhD{Nta3AbV>J|*5vwsZZzB~R?FK`rBS>= z+pD_S$7L%@9QmeJ2Q%W77=`U%-Pnaysj@rqc#$(vy<~wHbm3+J2dPI!ye&t}>r*u$ z(8Xaw;KZdh@LGB^kC+J2y3)W4@Y3_sojQ#BO5p9QbO%vOfCX&b7#D(>w9IAl$1J9< aqz&N`s%l98xC9BST`+aCXd2x~c)kEt$)hm< diff --git a/public/assets/js/newnote.js.gz b/public/assets/js/newnote.js.gz index 8d481a8ee913305b2a778d97c031cadc417e3a55..819b0fc8154b39aeb4a0a305090030d30c8dea72 100644 GIT binary patch literal 138652 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 literal 141821 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�mg_f2~wTaC1A$RM>qxY<@eILux@?8!S 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 z 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 P{{HkELS2HEk-Z22QA^3I diff --git a/public/assets/js/maps.js.map b/public/assets/js/maps.js.map index 0af0b7c8..208c056f 100644 --- a/public/assets/js/maps.js.map +++ b/public/assets/js/maps.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///webpack/bootstrap 0d56878049caba29cc1d?60c9","webpack:///(webpack)/buildin/global.js?3698","webpack:///./parse-location.js?dbf7","webpack:///./mapbox-utils.js?6df0","webpack:///./select-place.js?bf59","webpack:////home/jonny/git/jonnybarnes.uk/~/base64-js/index.js?5d7d","webpack:////home/jonny/git/jonnybarnes.uk/~/buffer/index.js?3028","webpack:////home/jonny/git/jonnybarnes.uk/~/buffer/~/isarray/index.js?320e","webpack:////home/jonny/git/jonnybarnes.uk/~/ieee754/index.js?2a87","webpack:////home/jonny/git/jonnybarnes.uk/~/mapbox-gl/dist/mapbox-gl.js?96d9","webpack:///./maps.js"],"names":["parseLocation","text","coords","exec","parsedLongitude","split","parsedLatitude","addMap","accessToken","titlecase","string","map","first","rest","toUpperCase","join","toLowerCase","addMapTypeOption","menu","option","checked","input","document","createElement","setAttribute","addEventListener","setStyle","label","appendChild","createTextNode","makeMapMenu","mapMenu","classList","add","div","position","places","dataLatitude","dataset","latitude","dataLongitude","longitude","dataId","id","data","window","place","placeLongitude","location","placeLatitude","features","push","name","slug","Map","container","style","center","zoom","scrollZoom","disable","addControl","NavigationControl","on","addSource","addLayer","e","queryRenderedFeatures","point","layer","length","flyTo","geometry","coordinates","properties","uri","bounds","LngLatBounds","feature","extend","fitBounds","padding","selectPlaceInForm","querySelector","selected","mapDivs","querySelectorAll"],"mappings":"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SAFD,MAEO;AACH9D,qBAAS6D,aAAT,CAAuB,oBAAoBR,GAApB,GAA0B,IAAjD,EAAuDS,QAAvD,GAAkE,IAAlE;AACH;AACJ;AACJ,C;;;;;;;ACVD;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,kCAAkC,SAAS;AAC3C;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA,oBAAoB,OAAO;AAC3B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,0CAA0C,UAAU;AACpD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;;;;;;;ACjHA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,qBAAqB,mDAAmD;AACxE;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,mBAAmB,UAAU;AAC7B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,YAAY;AAC7B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,0BAA0B;AAC1B;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA,uCAAuC,SAAS;AAChD;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAe,iBAAiB;AAChC;AACA;AACA;;AAEA;AACA;AACA,aAAa,iBAAiB;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,gDAAgD,EAAE;AAClD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC;AACzC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA,wBAAwB,eAAe;AACvC;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,wBAAwB,QAAQ;AAChC;AACA,qBAAqB,eAAe;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,YAAY;AAC7B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,kBAAkB;AACnC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,mBAAmB,cAAc;AACjC;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,uDAAuD,OAAO;AAC9D;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA,uDAAuD,OAAO;AAC9D;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,kBAAkB;AAClB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,qBAAqB,QAAQ;AAC7B;AACA;AACA,GAAG;AACH;AACA,eAAe,SAAS;AACxB;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,mBAAmB,SAAS;AAC5B;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,eAAe,iBAAiB;AAChC;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,YAAY;AAC7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,iBAAiB,gBAAgB;AACjC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,gBAAgB;AACjC;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,iBAAiB,YAAY;AAC7B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;AC5vDA,iBAAiB;;AAEjB;AACA;AACA;;;;;;;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,QAAQ,WAAW;;AAEnB;AACA;AACA;AACA,QAAQ,WAAW;;AAEnB;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;A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","file":"maps.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// identity function for calling harmony imports with the correct context\n \t__webpack_require__.i = function(value) { return value; };\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 13);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 0d56878049caba29cc1d","var g;\r\n\r\n// This works in non-strict mode\r\ng = (function() {\r\n\treturn this;\r\n})();\r\n\r\ntry {\r\n\t// This works if eval is allowed (see CSP)\r\n\tg = g || Function(\"return this\")() || (1,eval)(\"this\");\r\n} catch(e) {\r\n\t// This works if the window reference is available\r\n\tif(typeof window === \"object\")\r\n\t\tg = window;\r\n}\r\n\r\n// g can still be undefined, but nothing to do about it...\r\n// We return undefined, instead of nothing here, so it's\r\n// easier to handle this case. if(!global) { ...}\r\n\r\nmodule.exports = g;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// (webpack)/buildin/global.js\n// module id = 0\n// module chunks = 0 1","//parse-location.js\n\n//text = `POINT(lon lat)`\nexport default function parseLocation(text) {\n let coords = /POINT\\((.*)\\)/.exec(text);\n let parsedLongitude = coords[1].split(' ')[0];\n let parsedLatitude = coords[1].split(' ')[1];\n\n return {'latitude': parsedLatitude, 'longitude': parsedLongitude};\n}\n\n\n\n// WEBPACK FOOTER //\n// ./parse-location.js","//mapbox-utils.js\nimport mapboxgl from 'mapbox-gl/dist/mapbox-gl.js';\nimport parseLocation from './parse-location';\nimport selectPlaceInForm from './select-place';\n\nmapboxgl.accessToken = 'pk.eyJ1Ijoiam9ubnliYXJuZXMiLCJhIjoiY2l2cDhjYW04MDAwcjJ0cG1uZnhqcm82ayJ9.qA2zeVA-nsoMh9IFrd5KQw';\n\n//define some functions to be used in the default function.\nconst titlecase = (string) => {\n return string.split('-').map(([first,...rest]) => first.toUpperCase() + rest.join('').toLowerCase()).join(' ');\n};\n\nconst addMapTypeOption = (map, menu, option, checked = false) => {\n let input = document.createElement('input');\n input.setAttribute('id', option);\n input.setAttribute('type', 'radio');\n input.setAttribute('name', 'toggle');\n input.setAttribute('value', option);\n if (checked == true) {\n input.setAttribute('checked', 'checked');\n }\n input.addEventListener('click', function () {\n map.setStyle('mapbox://styles/mapbox/' + option + '-v9');\n });\n let label = document.createElement('label');\n label.setAttribute('for', option);\n label.appendChild(document.createTextNode(titlecase(option)));\n menu.appendChild(input);\n menu.appendChild(label);\n};\n\nconst makeMapMenu = (map) => {\n let mapMenu = document.createElement('div');\n mapMenu.classList.add('map-menu');\n addMapTypeOption(map, mapMenu, 'streets', true);\n addMapTypeOption(map, mapMenu, 'satellite-streets');\n return mapMenu;\n};\n\n//the main function\nexport default function addMap(div, position = null, places = null) {\n let dataLatitude = div.dataset.latitude;\n let dataLongitude = div.dataset.longitude;\n let dataId = div.dataset.id;\n let data = window['geojson'+dataId];\n if (data == null) {\n data = {\n 'type': 'FeatureCollection',\n 'features': [{\n 'type': 'Feature',\n 'geometry': {\n 'type': 'Point',\n 'coordinates': [dataLongitude, dataLatitude]\n },\n 'properties': {\n 'title': 'Current Location',\n 'icon': 'circle-stroked',\n 'uri': 'current-location'\n }\n }]\n };\n }\n if (places != null) {\n for (let place of places) {\n let placeLongitude = parseLocation(place.location).longitude;\n let placeLatitude = parseLocation(place.location).latitude;\n data.features.push({\n 'type': 'Feature',\n 'geometry': {\n 'type': 'Point',\n 'coordinates': [placeLongitude, placeLatitude]\n },\n 'properties': {\n 'title': place.name,\n 'icon': 'circle',\n 'uri': place.slug\n }\n });\n }\n }\n if (position != null) {\n dataLongitude = position.coords.longitude;\n dataLatitude = position.coords.latitude;\n }\n let map = new mapboxgl.Map({\n container: div,\n style: 'mapbox://styles/mapbox/streets-v9',\n center: [dataLongitude, dataLatitude],\n zoom: 15\n });\n if (position == null) {\n map.scrollZoom.disable();\n }\n map.addControl(new mapboxgl.NavigationControl());\n div.appendChild(makeMapMenu(map));\n map.on('load', function () {\n map.addSource('points', {\n 'type': 'geojson',\n 'data': data\n });\n map.addLayer({\n 'id': 'points',\n 'interactive': true,\n 'type': 'symbol',\n 'source': 'points',\n 'layout': {\n 'icon-image': '{icon}-15',\n 'text-field': '{title}',\n 'text-offset': [0, 1]\n }\n });\n });\n if (position != null) {\n map.on('click', function (e) {\n let features = map.queryRenderedFeatures(e.point, {\n layer: ['points']\n });\n // if there are features within the given radius of the click event,\n // fly to the location of the click event\n if (features.length) {\n // Get coordinates from the symbol and center the map on those coordinates\n map.flyTo({center: features[0].geometry.coordinates});\n selectPlaceInForm(features[0].properties.uri);\n }\n });\n }\n if (data.features && data.features.length > 1) {\n let bounds = new mapboxgl.LngLatBounds();\n for (let feature of data.features) {\n bounds.extend(feature.geometry.coordinates);\n }\n map.fitBounds(bounds, { padding: 65});\n }\n\n return map;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./mapbox-utils.js","//select-place.js\n\nexport default function selectPlaceInForm(uri) {\n if (document.querySelector('select')) {\n if (uri == 'current-location') {\n document.querySelector('select [id=\"option-coords\"]').selected = true;\n } else {\n document.querySelector('select [value=\"' + uri + '\"]').selected = true;\n }\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./select-place.js","'use strict'\n\nexports.byteLength = byteLength\nexports.toByteArray = toByteArray\nexports.fromByteArray = fromByteArray\n\nvar lookup = []\nvar revLookup = []\nvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array\n\nvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'\nfor (var i = 0, len = code.length; i < len; ++i) {\n lookup[i] = code[i]\n revLookup[code.charCodeAt(i)] = i\n}\n\nrevLookup['-'.charCodeAt(0)] = 62\nrevLookup['_'.charCodeAt(0)] = 63\n\nfunction placeHoldersCount (b64) {\n var len = b64.length\n if (len % 4 > 0) {\n throw new Error('Invalid string. Length must be a multiple of 4')\n }\n\n // the number of equal signs (place holders)\n // if there are two placeholders, than the two characters before it\n // represent one byte\n // if there is only one, then the three characters before it represent 2 bytes\n // this is just a cheap hack to not do indexOf twice\n return b64[len - 2] === '=' ? 2 : b64[len - 1] === '=' ? 1 : 0\n}\n\nfunction byteLength (b64) {\n // base64 is 4/3 + up to two characters of the original data\n return b64.length * 3 / 4 - placeHoldersCount(b64)\n}\n\nfunction toByteArray (b64) {\n var i, j, l, tmp, placeHolders, arr\n var len = b64.length\n placeHolders = placeHoldersCount(b64)\n\n arr = new Arr(len * 3 / 4 - placeHolders)\n\n // if there are placeholders, only get up to the last complete 4 chars\n l = placeHolders > 0 ? len - 4 : len\n\n var L = 0\n\n for (i = 0, j = 0; i < l; i += 4, j += 3) {\n tmp = (revLookup[b64.charCodeAt(i)] << 18) | (revLookup[b64.charCodeAt(i + 1)] << 12) | (revLookup[b64.charCodeAt(i + 2)] << 6) | revLookup[b64.charCodeAt(i + 3)]\n arr[L++] = (tmp >> 16) & 0xFF\n arr[L++] = (tmp >> 8) & 0xFF\n arr[L++] = tmp & 0xFF\n }\n\n if (placeHolders === 2) {\n tmp = (revLookup[b64.charCodeAt(i)] << 2) | (revLookup[b64.charCodeAt(i + 1)] >> 4)\n arr[L++] = tmp & 0xFF\n } else if (placeHolders === 1) {\n tmp = (revLookup[b64.charCodeAt(i)] << 10) | (revLookup[b64.charCodeAt(i + 1)] << 4) | (revLookup[b64.charCodeAt(i + 2)] >> 2)\n arr[L++] = (tmp >> 8) & 0xFF\n arr[L++] = tmp & 0xFF\n }\n\n return arr\n}\n\nfunction tripletToBase64 (num) {\n return lookup[num >> 18 & 0x3F] + lookup[num >> 12 & 0x3F] + lookup[num >> 6 & 0x3F] + lookup[num & 0x3F]\n}\n\nfunction encodeChunk (uint8, start, end) {\n var tmp\n var output = []\n for (var i = start; i < end; i += 3) {\n tmp = (uint8[i] << 16) + (uint8[i + 1] << 8) + (uint8[i + 2])\n output.push(tripletToBase64(tmp))\n }\n return output.join('')\n}\n\nfunction fromByteArray (uint8) {\n var tmp\n var len = uint8.length\n var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes\n var output = ''\n var parts = []\n var maxChunkLength = 16383 // must be multiple of 3\n\n // go through the array every three bytes, we'll deal with trailing stuff later\n for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))\n }\n\n // pad the end with zeros, but make sure to not forget the extra bytes\n if (extraBytes === 1) {\n tmp = uint8[len - 1]\n output += lookup[tmp >> 2]\n output += lookup[(tmp << 4) & 0x3F]\n output += '=='\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + (uint8[len - 1])\n output += lookup[tmp >> 10]\n output += lookup[(tmp >> 4) & 0x3F]\n output += lookup[(tmp << 2) & 0x3F]\n output += '='\n }\n\n parts.push(output)\n\n return parts.join('')\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// /home/jonny/git/jonnybarnes.uk/~/base64-js/index.js\n// module id = 5\n// module chunks = 0 1","/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n/* eslint-disable no-proto */\n\n'use strict'\n\nvar base64 = require('base64-js')\nvar ieee754 = require('ieee754')\nvar isArray = require('isarray')\n\nexports.Buffer = Buffer\nexports.SlowBuffer = SlowBuffer\nexports.INSPECT_MAX_BYTES = 50\n\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Use Object implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * Due to various browser bugs, sometimes the Object implementation will be used even\n * when the browser supports typed arrays.\n *\n * Note:\n *\n * - Firefox 4-29 lacks support for adding new properties to `Uint8Array` instances,\n * See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438.\n *\n * - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function.\n *\n * - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of\n * incorrect length in some situations.\n\n * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they\n * get the Object implementation, which is slower but behaves correctly.\n */\nBuffer.TYPED_ARRAY_SUPPORT = global.TYPED_ARRAY_SUPPORT !== undefined\n ? global.TYPED_ARRAY_SUPPORT\n : typedArraySupport()\n\n/*\n * Export kMaxLength after typed array support is determined.\n */\nexports.kMaxLength = kMaxLength()\n\nfunction typedArraySupport () {\n try {\n var arr = new Uint8Array(1)\n arr.__proto__ = {__proto__: Uint8Array.prototype, foo: function () { return 42 }}\n return arr.foo() === 42 && // typed array instances can be augmented\n typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray`\n arr.subarray(1, 1).byteLength === 0 // ie10 has broken `subarray`\n } catch (e) {\n return false\n }\n}\n\nfunction kMaxLength () {\n return Buffer.TYPED_ARRAY_SUPPORT\n ? 0x7fffffff\n : 0x3fffffff\n}\n\nfunction createBuffer (that, length) {\n if (kMaxLength() < length) {\n throw new RangeError('Invalid typed array length')\n }\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n // Return an augmented `Uint8Array` instance, for best performance\n that = new Uint8Array(length)\n that.__proto__ = Buffer.prototype\n } else {\n // Fallback: Return an object instance of the Buffer class\n if (that === null) {\n that = new Buffer(length)\n }\n that.length = length\n }\n\n return that\n}\n\n/**\n * The Buffer constructor returns instances of `Uint8Array` that have their\n * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n * returns a single octet.\n *\n * The `Uint8Array` prototype remains unmodified.\n */\n\nfunction Buffer (arg, encodingOrOffset, length) {\n if (!Buffer.TYPED_ARRAY_SUPPORT && !(this instanceof Buffer)) {\n return new Buffer(arg, encodingOrOffset, length)\n }\n\n // Common case.\n if (typeof arg === 'number') {\n if (typeof encodingOrOffset === 'string') {\n throw new Error(\n 'If encoding is specified then the first argument must be a string'\n )\n }\n return allocUnsafe(this, arg)\n }\n return from(this, arg, encodingOrOffset, length)\n}\n\nBuffer.poolSize = 8192 // not used by this implementation\n\n// TODO: Legacy, not needed anymore. Remove in next major version.\nBuffer._augment = function (arr) {\n arr.__proto__ = Buffer.prototype\n return arr\n}\n\nfunction from (that, value, encodingOrOffset, length) {\n if (typeof value === 'number') {\n throw new TypeError('\"value\" argument must not be a number')\n }\n\n if (typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer) {\n return fromArrayBuffer(that, value, encodingOrOffset, length)\n }\n\n if (typeof value === 'string') {\n return fromString(that, value, encodingOrOffset)\n }\n\n return fromObject(that, value)\n}\n\n/**\n * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n * if value is a number.\n * Buffer.from(str[, encoding])\n * Buffer.from(array)\n * Buffer.from(buffer)\n * Buffer.from(arrayBuffer[, byteOffset[, length]])\n **/\nBuffer.from = function (value, encodingOrOffset, length) {\n return from(null, value, encodingOrOffset, length)\n}\n\nif (Buffer.TYPED_ARRAY_SUPPORT) {\n Buffer.prototype.__proto__ = Uint8Array.prototype\n Buffer.__proto__ = Uint8Array\n if (typeof Symbol !== 'undefined' && Symbol.species &&\n Buffer[Symbol.species] === Buffer) {\n // Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97\n Object.defineProperty(Buffer, Symbol.species, {\n value: null,\n configurable: true\n })\n }\n}\n\nfunction assertSize (size) {\n if (typeof size !== 'number') {\n throw new TypeError('\"size\" argument must be a number')\n } else if (size < 0) {\n throw new RangeError('\"size\" argument must not be negative')\n }\n}\n\nfunction alloc (that, size, fill, encoding) {\n assertSize(size)\n if (size <= 0) {\n return createBuffer(that, size)\n }\n if (fill !== undefined) {\n // Only pay attention to encoding if it's a string. This\n // prevents accidentally sending in a number that would\n // be interpretted as a start offset.\n return typeof encoding === 'string'\n ? createBuffer(that, size).fill(fill, encoding)\n : createBuffer(that, size).fill(fill)\n }\n return createBuffer(that, size)\n}\n\n/**\n * Creates a new filled Buffer instance.\n * alloc(size[, fill[, encoding]])\n **/\nBuffer.alloc = function (size, fill, encoding) {\n return alloc(null, size, fill, encoding)\n}\n\nfunction allocUnsafe (that, size) {\n assertSize(size)\n that = createBuffer(that, size < 0 ? 0 : checked(size) | 0)\n if (!Buffer.TYPED_ARRAY_SUPPORT) {\n for (var i = 0; i < size; ++i) {\n that[i] = 0\n }\n }\n return that\n}\n\n/**\n * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n * */\nBuffer.allocUnsafe = function (size) {\n return allocUnsafe(null, size)\n}\n/**\n * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n */\nBuffer.allocUnsafeSlow = function (size) {\n return allocUnsafe(null, size)\n}\n\nfunction fromString (that, string, encoding) {\n if (typeof encoding !== 'string' || encoding === '') {\n encoding = 'utf8'\n }\n\n if (!Buffer.isEncoding(encoding)) {\n throw new TypeError('\"encoding\" must be a valid string encoding')\n }\n\n var length = byteLength(string, encoding) | 0\n that = createBuffer(that, length)\n\n var actual = that.write(string, encoding)\n\n if (actual !== length) {\n // Writing a hex string, for example, that contains invalid characters will\n // cause everything after the first invalid character to be ignored. (e.g.\n // 'abxxcd' will be treated as 'ab')\n that = that.slice(0, actual)\n }\n\n return that\n}\n\nfunction fromArrayLike (that, array) {\n var length = array.length < 0 ? 0 : checked(array.length) | 0\n that = createBuffer(that, length)\n for (var i = 0; i < length; i += 1) {\n that[i] = array[i] & 255\n }\n return that\n}\n\nfunction fromArrayBuffer (that, array, byteOffset, length) {\n array.byteLength // this throws if `array` is not a valid ArrayBuffer\n\n if (byteOffset < 0 || array.byteLength < byteOffset) {\n throw new RangeError('\\'offset\\' is out of bounds')\n }\n\n if (array.byteLength < byteOffset + (length || 0)) {\n throw new RangeError('\\'length\\' is out of bounds')\n }\n\n if (byteOffset === undefined && length === undefined) {\n array = new Uint8Array(array)\n } else if (length === undefined) {\n array = new Uint8Array(array, byteOffset)\n } else {\n array = new Uint8Array(array, byteOffset, length)\n }\n\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n // Return an augmented `Uint8Array` instance, for best performance\n that = array\n that.__proto__ = Buffer.prototype\n } else {\n // Fallback: Return an object instance of the Buffer class\n that = fromArrayLike(that, array)\n }\n return that\n}\n\nfunction fromObject (that, obj) {\n if (Buffer.isBuffer(obj)) {\n var len = checked(obj.length) | 0\n that = createBuffer(that, len)\n\n if (that.length === 0) {\n return that\n }\n\n obj.copy(that, 0, 0, len)\n return that\n }\n\n if (obj) {\n if ((typeof ArrayBuffer !== 'undefined' &&\n obj.buffer instanceof ArrayBuffer) || 'length' in obj) {\n if (typeof obj.length !== 'number' || isnan(obj.length)) {\n return createBuffer(that, 0)\n }\n return fromArrayLike(that, obj)\n }\n\n if (obj.type === 'Buffer' && isArray(obj.data)) {\n return fromArrayLike(that, obj.data)\n }\n }\n\n throw new TypeError('First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.')\n}\n\nfunction checked (length) {\n // Note: cannot use `length < kMaxLength()` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= kMaxLength()) {\n throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n 'size: 0x' + kMaxLength().toString(16) + ' bytes')\n }\n return length | 0\n}\n\nfunction SlowBuffer (length) {\n if (+length != length) { // eslint-disable-line eqeqeq\n length = 0\n }\n return Buffer.alloc(+length)\n}\n\nBuffer.isBuffer = function isBuffer (b) {\n return !!(b != null && b._isBuffer)\n}\n\nBuffer.compare = function compare (a, b) {\n if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n throw new TypeError('Arguments must be Buffers')\n }\n\n if (a === b) return 0\n\n var x = a.length\n var y = b.length\n\n for (var i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i]\n y = b[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\nBuffer.isEncoding = function isEncoding (encoding) {\n switch (String(encoding).toLowerCase()) {\n case 'hex':\n case 'utf8':\n case 'utf-8':\n case 'ascii':\n case 'latin1':\n case 'binary':\n case 'base64':\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return true\n default:\n return false\n }\n}\n\nBuffer.concat = function concat (list, length) {\n if (!isArray(list)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n\n if (list.length === 0) {\n return Buffer.alloc(0)\n }\n\n var i\n if (length === undefined) {\n length = 0\n for (i = 0; i < list.length; ++i) {\n length += list[i].length\n }\n }\n\n var buffer = Buffer.allocUnsafe(length)\n var pos = 0\n for (i = 0; i < list.length; ++i) {\n var buf = list[i]\n if (!Buffer.isBuffer(buf)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n buf.copy(buffer, pos)\n pos += buf.length\n }\n return buffer\n}\n\nfunction byteLength (string, encoding) {\n if (Buffer.isBuffer(string)) {\n return string.length\n }\n if (typeof ArrayBuffer !== 'undefined' && typeof ArrayBuffer.isView === 'function' &&\n (ArrayBuffer.isView(string) || string instanceof ArrayBuffer)) {\n return string.byteLength\n }\n if (typeof string !== 'string') {\n string = '' + string\n }\n\n var len = string.length\n if (len === 0) return 0\n\n // Use a for loop to avoid recursion\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'ascii':\n case 'latin1':\n case 'binary':\n return len\n case 'utf8':\n case 'utf-8':\n case undefined:\n return utf8ToBytes(string).length\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return len * 2\n case 'hex':\n return len >>> 1\n case 'base64':\n return base64ToBytes(string).length\n default:\n if (loweredCase) return utf8ToBytes(string).length // assume utf8\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\nBuffer.byteLength = byteLength\n\nfunction slowToString (encoding, start, end) {\n var loweredCase = false\n\n // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n // property of a typed array.\n\n // This behaves neither like String nor Uint8Array in that we set start/end\n // to their upper/lower bounds if the value passed is out of range.\n // undefined is handled specially as per ECMA-262 6th Edition,\n // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n if (start === undefined || start < 0) {\n start = 0\n }\n // Return early if start > this.length. Done here to prevent potential uint32\n // coercion fail below.\n if (start > this.length) {\n return ''\n }\n\n if (end === undefined || end > this.length) {\n end = this.length\n }\n\n if (end <= 0) {\n return ''\n }\n\n // Force coersion to uint32. This will also coerce falsey/NaN values to 0.\n end >>>= 0\n start >>>= 0\n\n if (end <= start) {\n return ''\n }\n\n if (!encoding) encoding = 'utf8'\n\n while (true) {\n switch (encoding) {\n case 'hex':\n return hexSlice(this, start, end)\n\n case 'utf8':\n case 'utf-8':\n return utf8Slice(this, start, end)\n\n case 'ascii':\n return asciiSlice(this, start, end)\n\n case 'latin1':\n case 'binary':\n return latin1Slice(this, start, end)\n\n case 'base64':\n return base64Slice(this, start, end)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return utf16leSlice(this, start, end)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = (encoding + '').toLowerCase()\n loweredCase = true\n }\n }\n}\n\n// The property is used by `Buffer.isBuffer` and `is-buffer` (in Safari 5-7) to detect\n// Buffer instances.\nBuffer.prototype._isBuffer = true\n\nfunction swap (b, n, m) {\n var i = b[n]\n b[n] = b[m]\n b[m] = i\n}\n\nBuffer.prototype.swap16 = function swap16 () {\n var len = this.length\n if (len % 2 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 16-bits')\n }\n for (var i = 0; i < len; i += 2) {\n swap(this, i, i + 1)\n }\n return this\n}\n\nBuffer.prototype.swap32 = function swap32 () {\n var len = this.length\n if (len % 4 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 32-bits')\n }\n for (var i = 0; i < len; i += 4) {\n swap(this, i, i + 3)\n swap(this, i + 1, i + 2)\n }\n return this\n}\n\nBuffer.prototype.swap64 = function swap64 () {\n var len = this.length\n if (len % 8 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 64-bits')\n }\n for (var i = 0; i < len; i += 8) {\n swap(this, i, i + 7)\n swap(this, i + 1, i + 6)\n swap(this, i + 2, i + 5)\n swap(this, i + 3, i + 4)\n }\n return this\n}\n\nBuffer.prototype.toString = function toString () {\n var length = this.length | 0\n if (length === 0) return ''\n if (arguments.length === 0) return utf8Slice(this, 0, length)\n return slowToString.apply(this, arguments)\n}\n\nBuffer.prototype.equals = function equals (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return true\n return Buffer.compare(this, b) === 0\n}\n\nBuffer.prototype.inspect = function inspect () {\n var str = ''\n var max = exports.INSPECT_MAX_BYTES\n if (this.length > 0) {\n str = this.toString('hex', 0, max).match(/.{2}/g).join(' ')\n if (this.length > max) str += ' ... '\n }\n return ''\n}\n\nBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n if (!Buffer.isBuffer(target)) {\n throw new TypeError('Argument must be a Buffer')\n }\n\n if (start === undefined) {\n start = 0\n }\n if (end === undefined) {\n end = target ? target.length : 0\n }\n if (thisStart === undefined) {\n thisStart = 0\n }\n if (thisEnd === undefined) {\n thisEnd = this.length\n }\n\n if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n throw new RangeError('out of range index')\n }\n\n if (thisStart >= thisEnd && start >= end) {\n return 0\n }\n if (thisStart >= thisEnd) {\n return -1\n }\n if (start >= end) {\n return 1\n }\n\n start >>>= 0\n end >>>= 0\n thisStart >>>= 0\n thisEnd >>>= 0\n\n if (this === target) return 0\n\n var x = thisEnd - thisStart\n var y = end - start\n var len = Math.min(x, y)\n\n var thisCopy = this.slice(thisStart, thisEnd)\n var targetCopy = target.slice(start, end)\n\n for (var i = 0; i < len; ++i) {\n if (thisCopy[i] !== targetCopy[i]) {\n x = thisCopy[i]\n y = targetCopy[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\n// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n//\n// Arguments:\n// - buffer - a Buffer to search\n// - val - a string, Buffer, or number\n// - byteOffset - an index into `buffer`; will be clamped to an int32\n// - encoding - an optional encoding, relevant is val is a string\n// - dir - true for indexOf, false for lastIndexOf\nfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n // Empty buffer means no match\n if (buffer.length === 0) return -1\n\n // Normalize byteOffset\n if (typeof byteOffset === 'string') {\n encoding = byteOffset\n byteOffset = 0\n } else if (byteOffset > 0x7fffffff) {\n byteOffset = 0x7fffffff\n } else if (byteOffset < -0x80000000) {\n byteOffset = -0x80000000\n }\n byteOffset = +byteOffset // Coerce to Number.\n if (isNaN(byteOffset)) {\n // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n byteOffset = dir ? 0 : (buffer.length - 1)\n }\n\n // Normalize byteOffset: negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = buffer.length + byteOffset\n if (byteOffset >= buffer.length) {\n if (dir) return -1\n else byteOffset = buffer.length - 1\n } else if (byteOffset < 0) {\n if (dir) byteOffset = 0\n else return -1\n }\n\n // Normalize val\n if (typeof val === 'string') {\n val = Buffer.from(val, encoding)\n }\n\n // Finally, search either indexOf (if dir is true) or lastIndexOf\n if (Buffer.isBuffer(val)) {\n // Special case: looking for empty string/buffer always fails\n if (val.length === 0) {\n return -1\n }\n return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n } else if (typeof val === 'number') {\n val = val & 0xFF // Search for a byte value [0-255]\n if (Buffer.TYPED_ARRAY_SUPPORT &&\n typeof Uint8Array.prototype.indexOf === 'function') {\n if (dir) {\n return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n } else {\n return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n }\n }\n return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir)\n }\n\n throw new TypeError('val must be string, number or Buffer')\n}\n\nfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n var indexSize = 1\n var arrLength = arr.length\n var valLength = val.length\n\n if (encoding !== undefined) {\n encoding = String(encoding).toLowerCase()\n if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n encoding === 'utf16le' || encoding === 'utf-16le') {\n if (arr.length < 2 || val.length < 2) {\n return -1\n }\n indexSize = 2\n arrLength /= 2\n valLength /= 2\n byteOffset /= 2\n }\n }\n\n function read (buf, i) {\n if (indexSize === 1) {\n return buf[i]\n } else {\n return buf.readUInt16BE(i * indexSize)\n }\n }\n\n var i\n if (dir) {\n var foundIndex = -1\n for (i = byteOffset; i < arrLength; i++) {\n if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n if (foundIndex === -1) foundIndex = i\n if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n } else {\n if (foundIndex !== -1) i -= i - foundIndex\n foundIndex = -1\n }\n }\n } else {\n if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength\n for (i = byteOffset; i >= 0; i--) {\n var found = true\n for (var j = 0; j < valLength; j++) {\n if (read(arr, i + j) !== read(val, j)) {\n found = false\n break\n }\n }\n if (found) return i\n }\n }\n\n return -1\n}\n\nBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n return this.indexOf(val, byteOffset, encoding) !== -1\n}\n\nBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n}\n\nBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n}\n\nfunction hexWrite (buf, string, offset, length) {\n offset = Number(offset) || 0\n var remaining = buf.length - offset\n if (!length) {\n length = remaining\n } else {\n length = Number(length)\n if (length > remaining) {\n length = remaining\n }\n }\n\n // must be an even number of digits\n var strLen = string.length\n if (strLen % 2 !== 0) throw new TypeError('Invalid hex string')\n\n if (length > strLen / 2) {\n length = strLen / 2\n }\n for (var i = 0; i < length; ++i) {\n var parsed = parseInt(string.substr(i * 2, 2), 16)\n if (isNaN(parsed)) return i\n buf[offset + i] = parsed\n }\n return i\n}\n\nfunction utf8Write (buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nfunction asciiWrite (buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length)\n}\n\nfunction latin1Write (buf, string, offset, length) {\n return asciiWrite(buf, string, offset, length)\n}\n\nfunction base64Write (buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length)\n}\n\nfunction ucs2Write (buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nBuffer.prototype.write = function write (string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = 'utf8'\n length = this.length\n offset = 0\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === 'string') {\n encoding = offset\n length = this.length\n offset = 0\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset | 0\n if (isFinite(length)) {\n length = length | 0\n if (encoding === undefined) encoding = 'utf8'\n } else {\n encoding = length\n length = undefined\n }\n // legacy write(string, encoding, offset, length) - remove in v0.13\n } else {\n throw new Error(\n 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n )\n }\n\n var remaining = this.length - offset\n if (length === undefined || length > remaining) length = remaining\n\n if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n throw new RangeError('Attempt to write outside buffer bounds')\n }\n\n if (!encoding) encoding = 'utf8'\n\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'hex':\n return hexWrite(this, string, offset, length)\n\n case 'utf8':\n case 'utf-8':\n return utf8Write(this, string, offset, length)\n\n case 'ascii':\n return asciiWrite(this, string, offset, length)\n\n case 'latin1':\n case 'binary':\n return latin1Write(this, string, offset, length)\n\n case 'base64':\n // Warning: maxLength not taken into account in base64Write\n return base64Write(this, string, offset, length)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return ucs2Write(this, string, offset, length)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toJSON = function toJSON () {\n return {\n type: 'Buffer',\n data: Array.prototype.slice.call(this._arr || this, 0)\n }\n}\n\nfunction base64Slice (buf, start, end) {\n if (start === 0 && end === buf.length) {\n return base64.fromByteArray(buf)\n } else {\n return base64.fromByteArray(buf.slice(start, end))\n }\n}\n\nfunction utf8Slice (buf, start, end) {\n end = Math.min(buf.length, end)\n var res = []\n\n var i = start\n while (i < end) {\n var firstByte = buf[i]\n var codePoint = null\n var bytesPerSequence = (firstByte > 0xEF) ? 4\n : (firstByte > 0xDF) ? 3\n : (firstByte > 0xBF) ? 2\n : 1\n\n if (i + bytesPerSequence <= end) {\n var secondByte, thirdByte, fourthByte, tempCodePoint\n\n switch (bytesPerSequence) {\n case 1:\n if (firstByte < 0x80) {\n codePoint = firstByte\n }\n break\n case 2:\n secondByte = buf[i + 1]\n if ((secondByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n if (tempCodePoint > 0x7F) {\n codePoint = tempCodePoint\n }\n }\n break\n case 3:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n codePoint = tempCodePoint\n }\n }\n break\n case 4:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n fourthByte = buf[i + 3]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n codePoint = tempCodePoint\n }\n }\n }\n }\n\n if (codePoint === null) {\n // we did not generate a valid codePoint so insert a\n // replacement char (U+FFFD) and advance only 1 byte\n codePoint = 0xFFFD\n bytesPerSequence = 1\n } else if (codePoint > 0xFFFF) {\n // encode to utf16 (surrogate pair dance)\n codePoint -= 0x10000\n res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n codePoint = 0xDC00 | codePoint & 0x3FF\n }\n\n res.push(codePoint)\n i += bytesPerSequence\n }\n\n return decodeCodePointsArray(res)\n}\n\n// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n// the lowest limit is Chrome, with 0x10000 args.\n// We go 1 magnitude less, for safety\nvar MAX_ARGUMENTS_LENGTH = 0x1000\n\nfunction decodeCodePointsArray (codePoints) {\n var len = codePoints.length\n if (len <= MAX_ARGUMENTS_LENGTH) {\n return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n }\n\n // Decode in chunks to avoid \"call stack size exceeded\".\n var res = ''\n var i = 0\n while (i < len) {\n res += String.fromCharCode.apply(\n String,\n codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n )\n }\n return res\n}\n\nfunction asciiSlice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i] & 0x7F)\n }\n return ret\n}\n\nfunction latin1Slice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i])\n }\n return ret\n}\n\nfunction hexSlice (buf, start, end) {\n var len = buf.length\n\n if (!start || start < 0) start = 0\n if (!end || end < 0 || end > len) end = len\n\n var out = ''\n for (var i = start; i < end; ++i) {\n out += toHex(buf[i])\n }\n return out\n}\n\nfunction utf16leSlice (buf, start, end) {\n var bytes = buf.slice(start, end)\n var res = ''\n for (var i = 0; i < bytes.length; i += 2) {\n res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256)\n }\n return res\n}\n\nBuffer.prototype.slice = function slice (start, end) {\n var len = this.length\n start = ~~start\n end = end === undefined ? len : ~~end\n\n if (start < 0) {\n start += len\n if (start < 0) start = 0\n } else if (start > len) {\n start = len\n }\n\n if (end < 0) {\n end += len\n if (end < 0) end = 0\n } else if (end > len) {\n end = len\n }\n\n if (end < start) end = start\n\n var newBuf\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n newBuf = this.subarray(start, end)\n newBuf.__proto__ = Buffer.prototype\n } else {\n var sliceLen = end - start\n newBuf = new Buffer(sliceLen, undefined)\n for (var i = 0; i < sliceLen; ++i) {\n newBuf[i] = this[i + start]\n }\n }\n\n return newBuf\n}\n\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */\nfunction checkOffset (offset, ext, length) {\n if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n}\n\nBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n checkOffset(offset, byteLength, this.length)\n }\n\n var val = this[offset + --byteLength]\n var mul = 1\n while (byteLength > 0 && (mul *= 0x100)) {\n val += this[offset + --byteLength] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 1, this.length)\n return this[offset]\n}\n\nBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n return this[offset] | (this[offset + 1] << 8)\n}\n\nBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n return (this[offset] << 8) | this[offset + 1]\n}\n\nBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return ((this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16)) +\n (this[offset + 3] * 0x1000000)\n}\n\nBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] * 0x1000000) +\n ((this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n this[offset + 3])\n}\n\nBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var i = byteLength\n var mul = 1\n var val = this[offset + --i]\n while (i > 0 && (mul *= 0x100)) {\n val += this[offset + --i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 1, this.length)\n if (!(this[offset] & 0x80)) return (this[offset])\n return ((0xff - this[offset] + 1) * -1)\n}\n\nBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset] | (this[offset + 1] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset + 1] | (this[offset] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16) |\n (this[offset + 3] << 24)\n}\n\nBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] << 24) |\n (this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n (this[offset + 3])\n}\n\nBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, true, 23, 4)\n}\n\nBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, false, 23, 4)\n}\n\nBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, true, 52, 8)\n}\n\nBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, false, 52, 8)\n}\n\nfunction checkInt (buf, value, offset, ext, max, min) {\n if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n}\n\nBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n var maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n var mul = 1\n var i = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n var maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n var i = byteLength - 1\n var mul = 1\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nfunction objectWriteUInt16 (buf, value, offset, littleEndian) {\n if (value < 0) value = 0xffff + value + 1\n for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; ++i) {\n buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>>\n (littleEndian ? i : 1 - i) * 8\n }\n}\n\nBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n } else {\n objectWriteUInt16(this, value, offset, true)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n } else {\n objectWriteUInt16(this, value, offset, false)\n }\n return offset + 2\n}\n\nfunction objectWriteUInt32 (buf, value, offset, littleEndian) {\n if (value < 0) value = 0xffffffff + value + 1\n for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; ++i) {\n buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff\n }\n}\n\nBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset + 3] = (value >>> 24)\n this[offset + 2] = (value >>> 16)\n this[offset + 1] = (value >>> 8)\n this[offset] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, true)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, false)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = 0\n var mul = 1\n var sub = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = byteLength - 1\n var mul = 1\n var sub = 0\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n if (value < 0) value = 0xff + value + 1\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n } else {\n objectWriteUInt16(this, value, offset, true)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n } else {\n objectWriteUInt16(this, value, offset, false)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n this[offset + 2] = (value >>> 16)\n this[offset + 3] = (value >>> 24)\n } else {\n objectWriteUInt32(this, value, offset, true)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (value < 0) value = 0xffffffff + value + 1\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, false)\n }\n return offset + 4\n}\n\nfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n if (offset < 0) throw new RangeError('Index out of range')\n}\n\nfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n }\n ieee754.write(buf, value, offset, littleEndian, 23, 4)\n return offset + 4\n}\n\nBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert)\n}\n\nfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n }\n ieee754.write(buf, value, offset, littleEndian, 52, 8)\n return offset + 8\n}\n\nBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert)\n}\n\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\nBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n if (!start) start = 0\n if (!end && end !== 0) end = this.length\n if (targetStart >= target.length) targetStart = target.length\n if (!targetStart) targetStart = 0\n if (end > 0 && end < start) end = start\n\n // Copy 0 bytes; we're done\n if (end === start) return 0\n if (target.length === 0 || this.length === 0) return 0\n\n // Fatal error conditions\n if (targetStart < 0) {\n throw new RangeError('targetStart out of bounds')\n }\n if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds')\n if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n // Are we oob?\n if (end > this.length) end = this.length\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start\n }\n\n var len = end - start\n var i\n\n if (this === target && start < targetStart && targetStart < end) {\n // descending copy from end\n for (i = len - 1; i >= 0; --i) {\n target[i + targetStart] = this[i + start]\n }\n } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) {\n // ascending copy from start\n for (i = 0; i < len; ++i) {\n target[i + targetStart] = this[i + start]\n }\n } else {\n Uint8Array.prototype.set.call(\n target,\n this.subarray(start, start + len),\n targetStart\n )\n }\n\n return len\n}\n\n// Usage:\n// buffer.fill(number[, offset[, end]])\n// buffer.fill(buffer[, offset[, end]])\n// buffer.fill(string[, offset[, end]][, encoding])\nBuffer.prototype.fill = function fill (val, start, end, encoding) {\n // Handle string cases:\n if (typeof val === 'string') {\n if (typeof start === 'string') {\n encoding = start\n start = 0\n end = this.length\n } else if (typeof end === 'string') {\n encoding = end\n end = this.length\n }\n if (val.length === 1) {\n var code = val.charCodeAt(0)\n if (code < 256) {\n val = code\n }\n }\n if (encoding !== undefined && typeof encoding !== 'string') {\n throw new TypeError('encoding must be a string')\n }\n if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n } else if (typeof val === 'number') {\n val = val & 255\n }\n\n // Invalid ranges are not set to a default, so can range check early.\n if (start < 0 || this.length < start || this.length < end) {\n throw new RangeError('Out of range index')\n }\n\n if (end <= start) {\n return this\n }\n\n start = start >>> 0\n end = end === undefined ? this.length : end >>> 0\n\n if (!val) val = 0\n\n var i\n if (typeof val === 'number') {\n for (i = start; i < end; ++i) {\n this[i] = val\n }\n } else {\n var bytes = Buffer.isBuffer(val)\n ? val\n : utf8ToBytes(new Buffer(val, encoding).toString())\n var len = bytes.length\n for (i = 0; i < end - start; ++i) {\n this[i + start] = bytes[i % len]\n }\n }\n\n return this\n}\n\n// HELPER FUNCTIONS\n// ================\n\nvar INVALID_BASE64_RE = /[^+\\/0-9A-Za-z-_]/g\n\nfunction base64clean (str) {\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = stringtrim(str).replace(INVALID_BASE64_RE, '')\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return ''\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while (str.length % 4 !== 0) {\n str = str + '='\n }\n return str\n}\n\nfunction stringtrim (str) {\n if (str.trim) return str.trim()\n return str.replace(/^\\s+|\\s+$/g, '')\n}\n\nfunction toHex (n) {\n if (n < 16) return '0' + n.toString(16)\n return n.toString(16)\n}\n\nfunction utf8ToBytes (string, units) {\n units = units || Infinity\n var codePoint\n var length = string.length\n var leadSurrogate = null\n var bytes = []\n\n for (var i = 0; i < length; ++i) {\n codePoint = string.charCodeAt(i)\n\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (!leadSurrogate) {\n // no lead yet\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n }\n\n // valid lead\n leadSurrogate = codePoint\n\n continue\n }\n\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = codePoint\n continue\n }\n\n // valid surrogate pair\n codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n } else if (leadSurrogate) {\n // valid bmp char, but last char was a lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n }\n\n leadSurrogate = null\n\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break\n bytes.push(codePoint)\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break\n bytes.push(\n codePoint >> 0x6 | 0xC0,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break\n bytes.push(\n codePoint >> 0xC | 0xE0,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x110000) {\n if ((units -= 4) < 0) break\n bytes.push(\n codePoint >> 0x12 | 0xF0,\n codePoint >> 0xC & 0x3F | 0x80,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else {\n throw new Error('Invalid code point')\n }\n }\n\n return bytes\n}\n\nfunction asciiToBytes (str) {\n var byteArray = []\n for (var i = 0; i < str.length; ++i) {\n // Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF)\n }\n return byteArray\n}\n\nfunction utf16leToBytes (str, units) {\n var c, hi, lo\n var byteArray = []\n for (var i = 0; i < str.length; ++i) {\n if ((units -= 2) < 0) break\n\n c = str.charCodeAt(i)\n hi = c >> 8\n lo = c % 256\n byteArray.push(lo)\n byteArray.push(hi)\n }\n\n return byteArray\n}\n\nfunction base64ToBytes (str) {\n return base64.toByteArray(base64clean(str))\n}\n\nfunction blitBuffer (src, dst, offset, length) {\n for (var i = 0; i < length; ++i) {\n if ((i + offset >= dst.length) || (i >= src.length)) break\n dst[i + offset] = src[i]\n }\n return i\n}\n\nfunction isnan (val) {\n return val !== val // eslint-disable-line no-self-compare\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// /home/jonny/git/jonnybarnes.uk/~/buffer/index.js\n// module id = 6\n// module chunks = 0 1","var toString = {}.toString;\n\nmodule.exports = Array.isArray || function (arr) {\n return toString.call(arr) == '[object Array]';\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// /home/jonny/git/jonnybarnes.uk/~/buffer/~/isarray/index.js\n// module id = 7\n// module chunks = 0 1","exports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = nBytes * 8 - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = e * 256 + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = m * 256 + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = nBytes * 8 - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = (value * c - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// /home/jonny/git/jonnybarnes.uk/~/ieee754/index.js\n// module id = 8\n// module chunks = 0 1","(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.mapboxgl = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o0){for(var o=0,a=0,u=0;uh.maxh||t>h.maxw||i<=h.maxh&&t<=h.maxw&&(r=h.maxw*h.maxh-t*i,rn.free)){if(i===n.h)return this.allocShelf(f,t,i,s);i>n.h||ic)&&(p=2*Math.max(t,c)),(uu)&&(l=2*Math.max(i,u)),this.resize(p,l),this.packOne(t,i,s)}return null},t.prototype.allocFreebin=function(t,e,i,s){var h=this.freebins.splice(t,1)[0];return h.id=s,h.w=e,h.h=i,h.refcount=0,this.bins[s]=h,this.ref(h),h},t.prototype.allocShelf=function(t,e,i,s){var h=this.shelves[t],n=h.alloc(e,i,s);return this.bins[s]=n,this.ref(n),n},t.prototype.getBin=function(t){return this.bins[t]},t.prototype.ref=function(t){if(1===++t.refcount){var e=t.h;this.stats[e]=(0|this.stats[e])+1}return t.refcount},t.prototype.unref=function(t){return 0===t.refcount?0:(0===--t.refcount&&(this.stats[t.h]--,delete this.bins[t.id],this.freebins.push(t)),t.refcount)},t.prototype.clear=function(){this.shelves=[],this.freebins=[],this.stats={},this.bins={},this.maxId=0},t.prototype.resize=function(t,e){this.w=t,this.h=e;for(var i=0;ithis.free||e>this.h)return null;var h=this.x;return this.x+=t,this.free-=t,new i(s,h,this.y,t,e,t,this.h)},e.prototype.resize=function(t){return this.free+=t-this.w,this.w=t,!0},t});\n},{}],3:[function(require,module,exports){\nfunction UnitBezier(t,i,e,r){this.cx=3*t,this.bx=3*(e-t)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*i,this.by=3*(r-i)-this.cy,this.ay=1-this.cy-this.by,this.p1x=t,this.p1y=r,this.p2x=e,this.p2y=r}module.exports=UnitBezier,UnitBezier.prototype.sampleCurveX=function(t){return((this.ax*t+this.bx)*t+this.cx)*t},UnitBezier.prototype.sampleCurveY=function(t){return((this.ay*t+this.by)*t+this.cy)*t},UnitBezier.prototype.sampleCurveDerivativeX=function(t){return(3*this.ax*t+2*this.bx)*t+this.cx},UnitBezier.prototype.solveCurveX=function(t,i){\"undefined\"==typeof i&&(i=1e-6);var e,r,s,h,n;for(s=t,n=0;n<8;n++){if(h=this.sampleCurveX(s)-t,Math.abs(h)r)return r;for(;eh?e=s:r=s,s=.5*(r-e)+e}return s},UnitBezier.prototype.solve=function(t,i){return this.sampleCurveY(this.solveCurveX(t,i))};\n},{}],4:[function(require,module,exports){\n!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?t(exports):\"function\"==typeof define&&define.amd?define([\"exports\"],t):t(e.WhooTS=e.WhooTS||{})}(this,function(e){function t(e,t,r,n,i,s){s=s||{};var f=e+\"?\"+[\"bbox=\"+o(r,n,i),\"format=\"+(s.format||\"image/png\"),\"service=\"+(s.service||\"WMS\"),\"version=\"+(s.version||\"1.1.1\"),\"request=\"+(s.request||\"GetMap\"),\"srs=\"+(s.srs||\"EPSG:3857\"),\"width=\"+(s.width||256),\"height=\"+(s.height||256),\"layers=\"+t].join(\"&\");return f}function o(e,t,o){t=Math.pow(2,o)-t-1;var n=r(256*e,256*t,o),i=r(256*(e+1),256*(t+1),o);return n[0]+\",\"+n[1]+\",\"+i[0]+\",\"+i[1]}function r(e,t,o){var r=2*Math.PI*6378137/256/Math.pow(2,o),n=e*r-2*Math.PI*6378137/2,i=t*r-2*Math.PI*6378137/2;return[n,i]}e.getURL=t,e.getTileBBox=o,e.getMercCoords=r,Object.defineProperty(e,\"__esModule\",{value:!0})});\n},{}],5:[function(require,module,exports){\n\"use strict\";function earcut(e,n,r){r=r||2;var t=n&&n.length,i=t?n[0]*r:e.length,x=linkedList(e,0,i,r,!0),a=[];if(!x)return a;var o,l,u,s,v,f,y;if(t&&(x=eliminateHoles(e,n,x,r)),e.length>80*r){o=u=e[0],l=s=e[1];for(var d=r;du&&(u=v),f>s&&(s=f);y=Math.max(u-o,s-l)}return earcutLinked(x,a,r,o,l,y),a}function linkedList(e,n,r,t,i){var x,a;if(i===signedArea(e,n,r,t)>0)for(x=n;x=n;x-=t)a=insertNode(x,e[x],e[x+1],a);return a&&equals(a,a.next)&&(removeNode(a),a=a.next),a}function filterPoints(e,n){if(!e)return e;n||(n=e);var r,t=e;do if(r=!1,t.steiner||!equals(t,t.next)&&0!==area(t.prev,t,t.next))t=t.next;else{if(removeNode(t),t=n=t.prev,t===t.next)return null;r=!0}while(r||t!==n);return n}function earcutLinked(e,n,r,t,i,x,a){if(e){!a&&x&&indexCurve(e,t,i,x);for(var o,l,u=e;e.prev!==e.next;)if(o=e.prev,l=e.next,x?isEarHashed(e,t,i,x):isEar(e))n.push(o.i/r),n.push(e.i/r),n.push(l.i/r),removeNode(e),e=l.next,u=l.next;else if(e=l,e===u){a?1===a?(e=cureLocalIntersections(e,n,r),earcutLinked(e,n,r,t,i,x,2)):2===a&&splitEarcut(e,n,r,t,i,x):earcutLinked(filterPoints(e),n,r,t,i,x,1);break}}}function isEar(e){var n=e.prev,r=e,t=e.next;if(area(n,r,t)>=0)return!1;for(var i=e.next.next;i!==e.prev;){if(pointInTriangle(n.x,n.y,r.x,r.y,t.x,t.y,i.x,i.y)&&area(i.prev,i,i.next)>=0)return!1;i=i.next}return!0}function isEarHashed(e,n,r,t){var i=e.prev,x=e,a=e.next;if(area(i,x,a)>=0)return!1;for(var o=i.xx.x?i.x>a.x?i.x:a.x:x.x>a.x?x.x:a.x,s=i.y>x.y?i.y>a.y?i.y:a.y:x.y>a.y?x.y:a.y,v=zOrder(o,l,n,r,t),f=zOrder(u,s,n,r,t),y=e.nextZ;y&&y.z<=f;){if(y!==e.prev&&y!==e.next&&pointInTriangle(i.x,i.y,x.x,x.y,a.x,a.y,y.x,y.y)&&area(y.prev,y,y.next)>=0)return!1;y=y.nextZ}for(y=e.prevZ;y&&y.z>=v;){if(y!==e.prev&&y!==e.next&&pointInTriangle(i.x,i.y,x.x,x.y,a.x,a.y,y.x,y.y)&&area(y.prev,y,y.next)>=0)return!1;y=y.prevZ}return!0}function cureLocalIntersections(e,n,r){var t=e;do{var i=t.prev,x=t.next.next;!equals(i,x)&&intersects(i,t,t.next,x)&&locallyInside(i,x)&&locallyInside(x,i)&&(n.push(i.i/r),n.push(t.i/r),n.push(x.i/r),removeNode(t),removeNode(t.next),t=e=x),t=t.next}while(t!==e);return t}function splitEarcut(e,n,r,t,i,x){var a=e;do{for(var o=a.next.next;o!==a.prev;){if(a.i!==o.i&&isValidDiagonal(a,o)){var l=splitPolygon(a,o);return a=filterPoints(a,a.next),l=filterPoints(l,l.next),earcutLinked(a,n,r,t,i,x),void earcutLinked(l,n,r,t,i,x)}o=o.next}a=a.next}while(a!==e)}function eliminateHoles(e,n,r,t){var i,x,a,o,l,u=[];for(i=0,x=n.length;i=t.next.y){var o=t.x+(x-t.y)*(t.next.x-t.x)/(t.next.y-t.y);if(o<=i&&o>a){if(a=o,o===i){if(x===t.y)return t;if(x===t.next.y)return t.next}r=t.x=t.x&&t.x>=s&&pointInTriangle(xr.x)&&locallyInside(t,e)&&(r=t,f=l)),t=t.next;return r}function indexCurve(e,n,r,t){var i=e;do null===i.z&&(i.z=zOrder(i.x,i.y,n,r,t)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next;while(i!==e);i.prevZ.nextZ=null,i.prevZ=null,sortLinked(i)}function sortLinked(e){var n,r,t,i,x,a,o,l,u=1;do{for(r=e,e=null,x=null,a=0;r;){for(a++,t=r,o=0,n=0;n0||l>0&&t;)0===o?(i=t,t=t.nextZ,l--):0!==l&&t?r.z<=t.z?(i=r,r=r.nextZ,o--):(i=t,t=t.nextZ,l--):(i=r,r=r.nextZ,o--),x?x.nextZ=i:e=i,i.prevZ=x,x=i;r=t}x.nextZ=null,u*=2}while(a>1);return e}function zOrder(e,n,r,t,i){return e=32767*(e-r)/i,n=32767*(n-t)/i,e=16711935&(e|e<<8),e=252645135&(e|e<<4),e=858993459&(e|e<<2),e=1431655765&(e|e<<1),n=16711935&(n|n<<8),n=252645135&(n|n<<4),n=858993459&(n|n<<2),n=1431655765&(n|n<<1),e|n<<1}function getLeftmost(e){var n=e,r=e;do n.x=0&&(e-a)*(t-o)-(r-a)*(n-o)>=0&&(r-a)*(x-o)-(i-a)*(t-o)>=0}function isValidDiagonal(e,n){return e.next.i!==n.i&&e.prev.i!==n.i&&!intersectsPolygon(e,n)&&locallyInside(e,n)&&locallyInside(n,e)&&middleInside(e,n)}function area(e,n,r){return(n.y-e.y)*(r.x-n.x)-(n.x-e.x)*(r.y-n.y)}function equals(e,n){return e.x===n.x&&e.y===n.y}function intersects(e,n,r,t){return!!(equals(e,n)&&equals(r,t)||equals(e,t)&&equals(r,n))||area(e,n,r)>0!=area(e,n,t)>0&&area(r,t,e)>0!=area(r,t,n)>0}function intersectsPolygon(e,n){var r=e;do{if(r.i!==e.i&&r.next.i!==e.i&&r.i!==n.i&&r.next.i!==n.i&&intersects(r,r.next,e,n))return!0;r=r.next}while(r!==e);return!1}function locallyInside(e,n){return area(e.prev,e,e.next)<0?area(e,n,e.next)>=0&&area(e,e.prev,n)>=0:area(e,n,e.prev)<0||area(e,e.next,n)<0}function middleInside(e,n){var r=e,t=!1,i=(e.x+n.x)/2,x=(e.y+n.y)/2;do r.y>x!=r.next.y>x&&i<(r.next.x-r.x)*(x-r.y)/(r.next.y-r.y)+r.x&&(t=!t),r=r.next;while(r!==e);return t}function splitPolygon(e,n){var r=new Node(e.i,e.x,e.y),t=new Node(n.i,n.x,n.y),i=e.next,x=n.prev;return e.next=n,n.prev=e,r.next=i,i.prev=r,t.next=r,r.prev=t,x.next=t,t.prev=x,t}function insertNode(e,n,r,t){var i=new Node(e,n,r);return t?(i.next=t.next,i.prev=t,t.next.prev=i,t.next=i):(i.prev=i,i.next=i),i}function removeNode(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function Node(e,n,r){this.i=e,this.x=n,this.y=r,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function signedArea(e,n,r,t){for(var i=0,x=n,a=r-t;x0&&(t+=e[i-1].length,r.holes.push(t))}return r};\n},{}],6:[function(require,module,exports){\nfunction geometry(r){if(\"Polygon\"===r.type)return polygonArea(r.coordinates);if(\"MultiPolygon\"===r.type){for(var e=0,n=0;n0){e+=Math.abs(ringArea(r[0]));for(var n=1;n2){for(var n,t,o=0;o=0}var geojsonArea=require(\"geojson-area\");module.exports=rewind;\n},{\"geojson-area\":6}],8:[function(require,module,exports){\n\"use strict\";function clip(e,r,t,n,u,i,l,s){if(t/=r,n/=r,l>=t&&s<=n)return e;if(l>n||s=t&&c<=n)h.push(o);else if(!(a>n||c=r&&s<=t&&u.push(l)}return u}function clipGeometry(e,r,t,n,u,i){for(var l=[],s=0;st?(d.push(u(h,f,r),u(h,f,t)),i||(d=newSlice(l,d,v,m,w))):o>=r&&d.push(u(h,f,r)):c>t?ot&&(d.push(u(h,f,t)),i||(d=newSlice(l,d,v,m,w))));h=g[S-1],c=h[n],c>=r&&c<=t&&d.push(h),a=d[d.length-1],i&&a&&(d[0][0]!==a[0]||d[0][1]!==a[1])&&d.push(d[0]),newSlice(l,d,v,m,w)}return l}function newSlice(e,r,t,n,u){return r.length&&(r.area=t,r.dist=n,void 0!==u&&(r.outer=u),e.push(r)),[]}module.exports=clip;var createFeature=require(\"./feature\");\n},{\"./feature\":10}],9:[function(require,module,exports){\n\"use strict\";function convert(e,t){var r=[];if(\"FeatureCollection\"===e.type)for(var o=0;o1?1:o,[r,o,0]}function calcSize(e){for(var t,r,o=0,a=0,i=0;i1)return!1;var r=n.geometry[0].length;if(5!==r)return!1;for(var s=0;s1&&console.time(\"creation\"),m=this.tiles[d]=createTile(e,p,i,o,f,t===a.maxZoom),this.tileCoords.push({z:t,x:i,y:o}),u)){u>1&&(console.log(\"tile z%d-%d-%d (features: %d, points: %d, simplified: %d)\",t,i,o,m.numFeatures,m.numPoints,m.numSimplified),console.timeEnd(\"creation\"));var h=\"z\"+t;this.stats[h]=(this.stats[h]||0)+1,this.total++}if(m.source=e,n){if(t===a.maxZoom||t===n)continue;var x=1<1&&console.time(\"clipping\");var g,v,M,T,b,y,S=.5*a.buffer/a.extent,Z=.5-S,q=.5+S,w=1+S;g=v=M=T=null,b=clip(e,p,i-S,i+q,0,intersectX,m.min[0],m.max[0]),y=clip(e,p,i+Z,i+w,0,intersectX,m.min[0],m.max[0]),b&&(g=clip(b,p,o-S,o+q,1,intersectY,m.min[1],m.max[1]),v=clip(b,p,o+Z,o+w,1,intersectY,m.min[1],m.max[1])),y&&(M=clip(y,p,o-S,o+q,1,intersectY,m.min[1],m.max[1]),T=clip(y,p,o+Z,o+w,1,intersectY,m.min[1],m.max[1])),u>1&&console.timeEnd(\"clipping\"),e.length&&(l.push(g||[],t+1,2*i,2*o),l.push(v||[],t+1,2*i,2*o+1),l.push(M||[],t+1,2*i+1,2*o),l.push(T||[],t+1,2*i+1,2*o+1))}else n&&(c=t)}return c},GeoJSONVT.prototype.getTile=function(e,t,i){var o=this.options,n=o.extent,r=o.debug,s=1<1&&console.log(\"drilling down to z%d-%d-%d\",e,t,i);for(var a,u=e,c=t,p=i;!a&&u>0;)u--,c=Math.floor(c/2),p=Math.floor(p/2),a=this.tiles[toID(u,c,p)];if(!a||!a.source)return null;if(r>1&&console.log(\"found parent tile z%d-%d-%d\",u,c,p),isClippedSquare(a,n,o.buffer))return transform.tile(a,n);r>1&&console.time(\"drilling down\");var d=this.splitTile(a.source,u,c,p,e,t,i);if(r>1&&console.timeEnd(\"drilling down\"),null!==d){var m=1<p&&(s=e,p=r);p>o?(t[s][2]=p,g.push(u),g.push(s),u=s):(n=g.pop(),u=g.pop())}}function getSqSegDist(t,i,e){var p=i[0],r=i[1],s=e[0],o=e[1],f=t[0],u=t[1],n=s-p,g=o-r;if(0!==n||0!==g){var l=((f-p)*n+(u-r)*g)/(n*n+g*g);l>1?(p=s,r=o):l>0&&(p+=n*l,r+=g*l)}return n=f-p,g=u-r,n*n+g*g}module.exports=simplify;\n},{}],13:[function(require,module,exports){\n\"use strict\";function createTile(e,n,r,i,t,u){for(var a={features:[],numPoints:0,numSimplified:0,numFeatures:0,source:null,x:r,y:i,z2:n,transformed:!1,min:[2,1],max:[-1,0]},m=0;ma.max[0]&&(a.max[0]=l[0]),l[1]>a.max[1]&&(a.max[1]=l[1])}return a}function addFeature(e,n,r,i){var t,u,a,m,s=n.geometry,l=n.type,o=[],f=r*r;if(1===l)for(t=0;tf)&&(d.push(m),e.numSimplified++),e.numPoints++;3===l&&rewind(d,a.outer),o.push(d)}else e.numPoints+=a.length;if(o.length){var g={geometry:o,type:l,tags:n.tags||null};null!==n.id&&(g.id=n.id),e.features.push(g)}}function rewind(e,n){var r=signedArea(e);r<0===n&&e.reverse()}function signedArea(e){for(var n,r,i=0,t=0,u=e.length,a=u-1;t=a[u+0]&&s>=a[u+1]?(n[f]=!0,h.push(l[f])):n[f]=!1}}},GridIndex.prototype._forEachCell=function(t,r,e,s,i,h,n){for(var o=this._convertToCellCoord(t),l=this._convertToCellCoord(r),a=this._convertToCellCoord(e),d=this._convertToCellCoord(s),f=o;f<=a;f++)for(var u=l;u<=d;u++){var y=this.d*u+f;if(i.call(this,t,r,e,s,y,h,n))return}},GridIndex.prototype._convertToCellCoord=function(t){return Math.max(0,Math.min(this.d-1,Math.floor(t*this.scale)+this.padding))},GridIndex.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var t=this.cells,r=NUM_PARAMS+this.cells.length+1+1,e=0,s=0;s>1,i=-7,N=t?h-1:0,n=t?-1:1,s=a[o+N];for(N+=n,M=s&(1<<-i)-1,s>>=-i,i+=w;i>0;M=256*M+a[o+N],N+=n,i-=8);for(p=M&(1<<-i)-1,M>>=-i,i+=r;i>0;p=256*p+a[o+N],N+=n,i-=8);if(0===M)M=1-e;else{if(M===f)return p?NaN:(s?-1:1)*(1/0);p+=Math.pow(2,r),M-=e}return(s?-1:1)*p*Math.pow(2,M-r)},exports.write=function(a,o,t,r,h,M){var p,w,f,e=8*M-h-1,i=(1<>1,n=23===h?Math.pow(2,-24)-Math.pow(2,-77):0,s=r?0:M-1,u=r?1:-1,l=o<0||0===o&&1/o<0?1:0;for(o=Math.abs(o),isNaN(o)||o===1/0?(w=isNaN(o)?1:0,p=i):(p=Math.floor(Math.log(o)/Math.LN2),o*(f=Math.pow(2,-p))<1&&(p--,f*=2),o+=p+N>=1?n/f:n*Math.pow(2,1-N),o*f>=2&&(p++,f/=2),p+N>=i?(w=0,p=i):p+N>=1?(w=(o*f-1)*Math.pow(2,h),p+=N):(w=o*Math.pow(2,N-1)*Math.pow(2,h),p=0));h>=8;a[t+s]=255&w,s+=u,w/=256,h-=8);for(p=p<0;a[t+s]=255&p,s+=u,p/=256,e-=8);a[t+s-u]|=128*l};\n},{}],18:[function(require,module,exports){\n\"use strict\";function kdbush(t,i,e,s,n){return new KDBush(t,i,e,s,n)}function KDBush(t,i,e,s,n){i=i||defaultGetX,e=e||defaultGetY,n=n||Array,this.nodeSize=s||64,this.points=t,this.ids=new n(t.length),this.coords=new n(2*t.length);for(var r=0;r=s&&a<=h&&t>=u&&t<=e&&f.push(p[i]);else{var c=Math.floor((g+v)/2);a=r[2*c],t=r[2*c+1],a>=s&&a<=h&&t>=u&&t<=e&&f.push(p[c]);var d=(l+1)%2;(0===l?s<=a:u<=t)&&(n.push(g),n.push(c-1),n.push(d)),(0===l?h>=a:e>=t)&&(n.push(c+1),n.push(v),n.push(d))}}return f}module.exports=range;\n},{}],20:[function(require,module,exports){\n\"use strict\";function sortKD(t,a,o,s,r,e){if(!(r-s<=o)){var f=Math.floor((s+r)/2);select(t,a,f,s,r,e%2),sortKD(t,a,o,s,f-1,e+1),sortKD(t,a,o,f+1,r,e+1)}}function select(t,a,o,s,r,e){for(;r>s;){if(r-s>600){var f=r-s+1,p=o-s+1,w=Math.log(f),m=.5*Math.exp(2*w/3),n=.5*Math.sqrt(w*m*(f-m)/f)*(p-f/2<0?-1:1),c=Math.max(s,Math.floor(o-p*m/f+n)),h=Math.min(r,Math.floor(o+(f-p)*m/f+n));select(t,a,o,c,h,e)}var i=a[2*o+e],l=s,M=r;for(swapItem(t,a,s,o),a[2*r+e]>i&&swapItem(t,a,s,r);li;)M--}a[2*s+e]===i?swapItem(t,a,s,M):(M++,swapItem(t,a,M,r)),M<=o&&(s=M+1),o<=M&&(r=M-1)}}function swapItem(t,a,o,s){swap(t,o,s),swap(a,2*o,2*s),swap(a,2*o+1,2*s+1)}function swap(t,a,o){var s=t[a];t[a]=t[o],t[o]=s}module.exports=sortKD;\n},{}],21:[function(require,module,exports){\n\"use strict\";function within(s,p,r,t,u,h){for(var i=[0,s.length-1,0],o=[],n=u*u;i.length;){var e=i.pop(),a=i.pop(),f=i.pop();if(a-f<=h)for(var v=f;v<=a;v++)sqDist(p[2*v],p[2*v+1],r,t)<=n&&o.push(s[v]);else{var l=Math.floor((f+a)/2),c=p[2*l],q=p[2*l+1];sqDist(c,q,r,t)<=n&&o.push(s[l]);var D=(e+1)%2;(0===e?r-u<=c:t-u<=q)&&(i.push(f),i.push(l-1),i.push(D)),(0===e?r+u>=c:t+u>=q)&&(i.push(l+1),i.push(a),i.push(D))}}return o}function sqDist(s,p,r,t){var u=s-r,h=p-t;return u*u+h*h}module.exports=within;\n},{}],22:[function(require,module,exports){\n\"use strict\";function isSupported(e){return!!(isBrowser()&&isArraySupported()&&isFunctionSupported()&&isObjectSupported()&&isJSONSupported()&&isWorkerSupported()&&isUint8ClampedArraySupported()&&isWebGLSupportedCached(e&&e.failIfMajorPerformanceCaveat))}function isBrowser(){return\"undefined\"!=typeof window&&\"undefined\"!=typeof document}function isArraySupported(){return Array.prototype&&Array.prototype.every&&Array.prototype.filter&&Array.prototype.forEach&&Array.prototype.indexOf&&Array.prototype.lastIndexOf&&Array.prototype.map&&Array.prototype.some&&Array.prototype.reduce&&Array.prototype.reduceRight&&Array.isArray}function isFunctionSupported(){return Function.prototype&&Function.prototype.bind}function isObjectSupported(){return Object.keys&&Object.create&&Object.getPrototypeOf&&Object.getOwnPropertyNames&&Object.isSealed&&Object.isFrozen&&Object.isExtensible&&Object.getOwnPropertyDescriptor&&Object.defineProperty&&Object.defineProperties&&Object.seal&&Object.freeze&&Object.preventExtensions}function isJSONSupported(){return\"JSON\"in window&&\"parse\"in JSON&&\"stringify\"in JSON}function isWorkerSupported(){return\"Worker\"in window}function isUint8ClampedArraySupported(){return\"Uint8ClampedArray\"in window}function isWebGLSupportedCached(e){return void 0===isWebGLSupportedCache[e]&&(isWebGLSupportedCache[e]=isWebGLSupported(e)),isWebGLSupportedCache[e]}function isWebGLSupported(e){var t=document.createElement(\"canvas\"),r=Object.create(isSupported.webGLContextAttributes);return r.failIfMajorPerformanceCaveat=e,t.probablySupportsContext?t.probablySupportsContext(\"webgl\",r)||t.probablySupportsContext(\"experimental-webgl\",r):t.supportsContext?t.supportsContext(\"webgl\",r)||t.supportsContext(\"experimental-webgl\",r):t.getContext(\"webgl\",r)||t.getContext(\"experimental-webgl\",r)}\"undefined\"!=typeof module&&module.exports?module.exports=isSupported:window&&(window.mapboxgl=window.mapboxgl||{},window.mapboxgl.supported=isSupported);var isWebGLSupportedCache={};isSupported.webGLContextAttributes={antialias:!1,alpha:!0,stencil:!0,depth:!0};\n},{}],23:[function(require,module,exports){\n(function (process){\nfunction normalizeArray(r,t){for(var e=0,n=r.length-1;n>=0;n--){var s=r[n];\".\"===s?r.splice(n,1):\"..\"===s?(r.splice(n,1),e++):e&&(r.splice(n,1),e--)}if(t)for(;e--;e)r.unshift(\"..\");return r}function filter(r,t){if(r.filter)return r.filter(t);for(var e=[],n=0;n=-1&&!t;e--){var n=e>=0?arguments[e]:process.cwd();if(\"string\"!=typeof n)throw new TypeError(\"Arguments to path.resolve must be strings\");n&&(r=n+\"/\"+r,t=\"/\"===n.charAt(0))}return r=normalizeArray(filter(r.split(\"/\"),function(r){return!!r}),!t).join(\"/\"),(t?\"/\":\"\")+r||\".\"},exports.normalize=function(r){var t=exports.isAbsolute(r),e=\"/\"===substr(r,-1);return r=normalizeArray(filter(r.split(\"/\"),function(r){return!!r}),!t).join(\"/\"),r||t||(r=\".\"),r&&e&&(r+=\"/\"),(t?\"/\":\"\")+r},exports.isAbsolute=function(r){return\"/\"===r.charAt(0)},exports.join=function(){var r=Array.prototype.slice.call(arguments,0);return exports.normalize(filter(r,function(r,t){if(\"string\"!=typeof r)throw new TypeError(\"Arguments to path.join must be strings\");return r}).join(\"/\"))},exports.relative=function(r,t){function e(r){for(var t=0;t=0&&\"\"===r[e];e--);return t>e?[]:r.slice(t,e-t+1)}r=exports.resolve(r).substr(1),t=exports.resolve(t).substr(1);for(var n=e(r.split(\"/\")),s=e(t.split(\"/\")),i=Math.min(n.length,s.length),o=i,u=0;u55295&&e<57344){if(!r){e>56319||o+1===n?i.push(239,191,189):r=e;continue}if(e<56320){i.push(239,191,189),r=e;continue}e=r-55296<<10|e-56320|65536,r=null}else r&&(i.push(239,191,189),r=null);e<128?i.push(e):e<2048?i.push(e>>6|192,63&e|128):e<65536?i.push(e>>12|224,e>>6&63|128,63&e|128):i.push(e>>18|240,e>>12&63|128,e>>6&63|128,63&e|128)}return i}module.exports=Buffer;var ieee754=require(\"ieee754\"),BufferMethods,lastStr,lastStrEncoded;BufferMethods={readUInt32LE:function(t){return(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},writeUInt32LE:function(t,e){this[e]=t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24},readInt32LE:function(t){return(this[t]|this[t+1]<<8|this[t+2]<<16)+(this[t+3]<<24)},readFloatLE:function(t){return ieee754.read(this,t,!0,23,4)},readDoubleLE:function(t){return ieee754.read(this,t,!0,52,8)},writeFloatLE:function(t,e){return ieee754.write(this,t,e,!0,23,4)},writeDoubleLE:function(t,e){return ieee754.write(this,t,e,!0,52,8)},toString:function(t,e,r){var n=\"\",i=\"\";e=e||0,r=Math.min(this.length,r||this.length);for(var o=e;o=1;){if(i.pos>=e)throw new Error(\"Given varint doesn't fit into 10 bytes\");var r=255&t;i.buf[i.pos++]=r|(t>=128?128:0),t/=128}}function reallocForRawMessage(t,i,e){var r=i<=16383?1:i<=2097151?2:i<=268435455?3:Math.ceil(Math.log(i)/(7*Math.LN2));e.realloc(r);for(var s=e.pos-1;s>=t;s--)e.buf[s+r]=e.buf[s]}function writePackedVarint(t,i){for(var e=0;e>3,n=this.pos;t(s,i,this),this.pos===n&&this.skip(r)}return i},readMessage:function(t,i){return this.readFields(t,i,this.readVarint()+this.pos)},readFixed32:function(){var t=this.buf.readUInt32LE(this.pos);return this.pos+=4,t},readSFixed32:function(){var t=this.buf.readInt32LE(this.pos);return this.pos+=4,t},readFixed64:function(){var t=this.buf.readUInt32LE(this.pos)+this.buf.readUInt32LE(this.pos+4)*SHIFT_LEFT_32;return this.pos+=8,t},readSFixed64:function(){var t=this.buf.readUInt32LE(this.pos)+this.buf.readInt32LE(this.pos+4)*SHIFT_LEFT_32;return this.pos+=8,t},readFloat:function(){var t=this.buf.readFloatLE(this.pos);return this.pos+=4,t},readDouble:function(){var t=this.buf.readDoubleLE(this.pos);return this.pos+=8,t},readVarint:function(){var t,i,e=this.buf;return i=e[this.pos++],t=127&i,i<128?t:(i=e[this.pos++],t|=(127&i)<<7,i<128?t:(i=e[this.pos++],t|=(127&i)<<14,i<128?t:(i=e[this.pos++],t|=(127&i)<<21,i<128?t:readVarintRemainder(t,this))))},readVarint64:function(){var t=this.pos,i=this.readVarint();if(i127;);else if(i===Pbf.Bytes)this.pos=this.readVarint()+this.pos;else if(i===Pbf.Fixed32)this.pos+=4;else{if(i!==Pbf.Fixed64)throw new Error(\"Unimplemented type: \"+i);this.pos+=8}},writeTag:function(t,i){this.writeVarint(t<<3|i)},realloc:function(t){for(var i=this.length||16;i268435455?void writeBigVarint(t,this):(this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),void(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);var i=Buffer.byteLength(t);this.writeVarint(i),this.realloc(i),this.buf.write(t,this.pos),this.pos+=i},writeFloat:function(t){this.realloc(4),this.buf.writeFloatLE(t,this.pos),this.pos+=4},writeDouble:function(t){this.realloc(8),this.buf.writeDoubleLE(t,this.pos),this.pos+=8},writeBytes:function(t){var i=t.length;this.writeVarint(i),this.realloc(i);for(var e=0;e=128&&reallocForRawMessage(e,r,this),this.pos=e-1,this.writeVarint(r),this.pos+=r},writeMessage:function(t,i,e){this.writeTag(t,Pbf.Bytes),this.writeRawMessage(i,e)},writePackedVarint:function(t,i){this.writeMessage(t,writePackedVarint,i)},writePackedSVarint:function(t,i){this.writeMessage(t,writePackedSVarint,i)},writePackedBoolean:function(t,i){this.writeMessage(t,writePackedBoolean,i)},writePackedFloat:function(t,i){this.writeMessage(t,writePackedFloat,i)},writePackedDouble:function(t,i){this.writeMessage(t,writePackedDouble,i)},writePackedFixed32:function(t,i){this.writeMessage(t,writePackedFixed32,i)},writePackedSFixed32:function(t,i){this.writeMessage(t,writePackedSFixed32,i)},writePackedFixed64:function(t,i){this.writeMessage(t,writePackedFixed64,i)},writePackedSFixed64:function(t,i){this.writeMessage(t,writePackedSFixed64,i)},writeBytesField:function(t,i){this.writeTag(t,Pbf.Bytes),this.writeBytes(i)},writeFixed32Field:function(t,i){this.writeTag(t,Pbf.Fixed32),this.writeFixed32(i)},writeSFixed32Field:function(t,i){this.writeTag(t,Pbf.Fixed32),this.writeSFixed32(i)},writeFixed64Field:function(t,i){this.writeTag(t,Pbf.Fixed64),this.writeFixed64(i)},writeSFixed64Field:function(t,i){this.writeTag(t,Pbf.Fixed64),this.writeSFixed64(i)},writeVarintField:function(t,i){this.writeTag(t,Pbf.Varint),this.writeVarint(i)},writeSVarintField:function(t,i){this.writeTag(t,Pbf.Varint),this.writeSVarint(i)},writeStringField:function(t,i){this.writeTag(t,Pbf.Bytes),this.writeString(i)},writeFloatField:function(t,i){this.writeTag(t,Pbf.Fixed32),this.writeFloat(i)},writeDoubleField:function(t,i){this.writeTag(t,Pbf.Fixed64),this.writeDouble(i)},writeBooleanField:function(t,i){this.writeVarintField(t,Boolean(i))}};\n}).call(this,typeof global !== \"undefined\" ? global : typeof self !== \"undefined\" ? self : typeof window !== \"undefined\" ? window : {})\n\n},{\"./buffer\":24}],26:[function(require,module,exports){\n\"use strict\";function Point(t,n){this.x=t,this.y=n}module.exports=Point,Point.prototype={clone:function(){return new Point(this.x,this.y)},add:function(t){return this.clone()._add(t)},sub:function(t){return this.clone()._sub(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)},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 n=t.x-this.x,i=t.y-this.y;return n*n+i*i},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,n){return Math.atan2(this.x*n-this.y*t,this.x*t+this.y*n)},_matMult:function(t){var n=t[0]*this.x+t[1]*this.y,i=t[2]*this.x+t[3]*this.y;return this.x=n,this.y=i,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},_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 n=Math.cos(t),i=Math.sin(t),s=n*this.x-i*this.y,r=i*this.x+n*this.y;return this.x=s,this.y=r,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},Point.convert=function(t){return t instanceof Point?t:Array.isArray(t)?new Point(t[0],t[1]):t};\n},{}],27:[function(require,module,exports){\nfunction defaultSetTimout(){throw new Error(\"setTimeout has not been defined\")}function defaultClearTimeout(){throw new Error(\"clearTimeout has not been defined\")}function runTimeout(e){if(cachedSetTimeout===setTimeout)return setTimeout(e,0);if((cachedSetTimeout===defaultSetTimout||!cachedSetTimeout)&&setTimeout)return cachedSetTimeout=setTimeout,setTimeout(e,0);try{return cachedSetTimeout(e,0)}catch(t){try{return cachedSetTimeout.call(null,e,0)}catch(t){return cachedSetTimeout.call(this,e,0)}}}function runClearTimeout(e){if(cachedClearTimeout===clearTimeout)return clearTimeout(e);if((cachedClearTimeout===defaultClearTimeout||!cachedClearTimeout)&&clearTimeout)return cachedClearTimeout=clearTimeout,clearTimeout(e);try{return cachedClearTimeout(e)}catch(t){try{return cachedClearTimeout.call(null,e)}catch(t){return cachedClearTimeout.call(this,e)}}}function cleanUpNextTick(){draining&¤tQueue&&(draining=!1,currentQueue.length?queue=currentQueue.concat(queue):queueIndex=-1,queue.length&&drainQueue())}function drainQueue(){if(!draining){var e=runTimeout(cleanUpNextTick);draining=!0;for(var t=queue.length;t;){for(currentQueue=queue,queue=[];++queueIndex1)for(var u=1;ur;){if(o-r>600){var f=o-r+1,e=t-r+1,l=Math.log(f),s=.5*Math.exp(2*l/3),i=.5*Math.sqrt(l*s*(f-s)/f)*(e-f/2<0?-1:1),n=Math.max(r,Math.floor(t-e*s/f+i)),h=Math.min(o,Math.floor(t+(f-e)*s/f+i));partialSort(a,t,n,h,p)}var u=a[t],M=r,w=o;for(swap(a,r,t),p(a[o],u)>0&&swap(a,r,o);M0;)w--}0===p(a[r],u)?swap(a,r,w):(w++,swap(a,w,o)),w<=t&&(r=w+1),t<=w&&(o=w-1)}}function swap(a,t,r){var o=a[t];a[t]=a[r],a[r]=o}function defaultCompare(a,t){return at?1:0}module.exports=partialSort;\n},{}],29:[function(require,module,exports){\n\"use strict\";function supercluster(t){return new SuperCluster(t)}function SuperCluster(t){this.options=extend(Object.create(this.options),t),this.trees=new Array(this.options.maxZoom+1)}function createCluster(t,e,o,n){return{x:t,y:e,zoom:1/0,id:n,numPoints:o}}function createPointCluster(t,e){var o=t.geometry.coordinates;return createCluster(lngX(o[0]),latY(o[1]),1,e)}function getClusterJSON(t){return{type:\"Feature\",properties:getClusterProperties(t),geometry:{type:\"Point\",coordinates:[xLng(t.x),yLat(t.y)]}}}function getClusterProperties(t){var e=t.numPoints,o=e>=1e4?Math.round(e/1e3)+\"k\":e>=1e3?Math.round(e/100)/10+\"k\":e;return{cluster:!0,point_count:e,point_count_abbreviated:o}}function lngX(t){return t/360+.5}function latY(t){var e=Math.sin(t*Math.PI/180),o=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return o<0?0:o>1?1:o}function xLng(t){return 360*(t-.5)}function yLat(t){var e=(180-360*t)*Math.PI/180;return 360*Math.atan(Math.exp(e))/Math.PI-90}function extend(t,e){for(var o in e)t[o]=e[o];return t}function getX(t){return t.x}function getY(t){return t.y}var kdbush=require(\"kdbush\");module.exports=supercluster,SuperCluster.prototype={options:{minZoom:0,maxZoom:16,radius:40,extent:512,nodeSize:64,log:!1},load:function(t){var e=this.options.log;e&&console.time(\"total time\");var o=\"prepare \"+t.length+\" points\";e&&console.time(o),this.points=t;var n=t.map(createPointCluster);e&&console.timeEnd(o);for(var r=this.options.maxZoom;r>=this.options.minZoom;r--){var i=+Date.now();this.trees[r+1]=kdbush(n,getX,getY,this.options.nodeSize,Float32Array),n=this._cluster(n,r),e&&console.log(\"z%d: %d clusters in %dms\",r,n.length,+Date.now()-i)}return this.trees[this.options.minZoom]=kdbush(n,getX,getY,this.options.nodeSize,Float32Array),e&&console.timeEnd(\"total time\"),this},getClusters:function(t,e){for(var o=this.trees[this._limitZoom(e)],n=o.range(lngX(t[0]),latY(t[3]),lngX(t[2]),latY(t[1])),r=[],i=0;i=0;a--)this._down(a)}function defaultCompare(t,i){return ti?1:0}function swap(t,i,a){var n=t[i];t[i]=t[a],t[a]=n}module.exports=TinyQueue,TinyQueue.prototype={push:function(t){this.data.push(t),this.length++,this._up(this.length-1)},pop:function(){var t=this.data[0];return this.data[0]=this.data[this.length-1],this.length--,this.data.pop(),this._down(0),t},peek:function(){return this.data[0]},_up:function(t){for(var i=this.data,a=this.compare;t>0;){var n=Math.floor((t-1)/2);if(!(a(i[t],i[n])<0))break;swap(i,n,t),t=n}},_down:function(t){for(var i=this.data,a=this.compare,n=this.length;;){var e=2*t+1,h=e+1,s=t;if(e=3&&(t.depth=arguments[2]),arguments.length>=4&&(t.colors=arguments[3]),isBoolean(r)?t.showHidden=r:r&&exports._extend(t,r),isUndefined(t.showHidden)&&(t.showHidden=!1),isUndefined(t.depth)&&(t.depth=2),isUndefined(t.colors)&&(t.colors=!1),isUndefined(t.customInspect)&&(t.customInspect=!0),t.colors&&(t.stylize=stylizeWithColor),formatValue(t,e,t.depth)}function stylizeWithColor(e,r){var t=inspect.styles[r];return t?\"\u001b[\"+inspect.colors[t][0]+\"m\"+e+\"\u001b[\"+inspect.colors[t][1]+\"m\":e}function stylizeNoColor(e,r){return e}function arrayToHash(e){var r={};return e.forEach(function(e,t){r[e]=!0}),r}function formatValue(e,r,t){if(e.customInspect&&r&&isFunction(r.inspect)&&r.inspect!==exports.inspect&&(!r.constructor||r.constructor.prototype!==r)){var n=r.inspect(t,e);return isString(n)||(n=formatValue(e,n,t)),n}var i=formatPrimitive(e,r);if(i)return i;var o=Object.keys(r),s=arrayToHash(o);if(e.showHidden&&(o=Object.getOwnPropertyNames(r)),isError(r)&&(o.indexOf(\"message\")>=0||o.indexOf(\"description\")>=0))return formatError(r);if(0===o.length){if(isFunction(r)){var u=r.name?\": \"+r.name:\"\";return e.stylize(\"[Function\"+u+\"]\",\"special\")}if(isRegExp(r))return e.stylize(RegExp.prototype.toString.call(r),\"regexp\");if(isDate(r))return e.stylize(Date.prototype.toString.call(r),\"date\");if(isError(r))return formatError(r)}var c=\"\",a=!1,l=[\"{\",\"}\"];if(isArray(r)&&(a=!0,l=[\"[\",\"]\"]),isFunction(r)){var p=r.name?\": \"+r.name:\"\";c=\" [Function\"+p+\"]\"}if(isRegExp(r)&&(c=\" \"+RegExp.prototype.toString.call(r)),isDate(r)&&(c=\" \"+Date.prototype.toUTCString.call(r)),isError(r)&&(c=\" \"+formatError(r)),0===o.length&&(!a||0==r.length))return l[0]+c+l[1];if(t<0)return isRegExp(r)?e.stylize(RegExp.prototype.toString.call(r),\"regexp\"):e.stylize(\"[Object]\",\"special\");e.seen.push(r);var f;return f=a?formatArray(e,r,t,s,o):o.map(function(n){return formatProperty(e,r,t,s,n,a)}),e.seen.pop(),reduceToSingleString(f,c,l)}function formatPrimitive(e,r){if(isUndefined(r))return e.stylize(\"undefined\",\"undefined\");if(isString(r)){var t=\"'\"+JSON.stringify(r).replace(/^\"|\"$/g,\"\").replace(/'/g,\"\\\\'\").replace(/\\\\\"/g,'\"')+\"'\";return e.stylize(t,\"string\")}return isNumber(r)?e.stylize(\"\"+r,\"number\"):isBoolean(r)?e.stylize(\"\"+r,\"boolean\"):isNull(r)?e.stylize(\"null\",\"null\"):void 0}function formatError(e){return\"[\"+Error.prototype.toString.call(e)+\"]\"}function formatArray(e,r,t,n,i){for(var o=[],s=0,u=r.length;s-1&&(u=o?u.split(\"\\n\").map(function(e){return\" \"+e}).join(\"\\n\").substr(2):\"\\n\"+u.split(\"\\n\").map(function(e){return\" \"+e}).join(\"\\n\"))):u=e.stylize(\"[Circular]\",\"special\")),isUndefined(s)){if(o&&i.match(/^\\d+$/))return u;s=JSON.stringify(\"\"+i),s.match(/^\"([a-zA-Z_][a-zA-Z_0-9]*)\"$/)?(s=s.substr(1,s.length-2),s=e.stylize(s,\"name\")):(s=s.replace(/'/g,\"\\\\'\").replace(/\\\\\"/g,'\"').replace(/(^\"|\"$)/g,\"'\"),s=e.stylize(s,\"string\"))}return s+\": \"+u}function reduceToSingleString(e,r,t){var n=0,i=e.reduce(function(e,r){return n++,r.indexOf(\"\\n\")>=0&&n++,e+r.replace(/\\u001b\\[\\d\\d?m/g,\"\").length+1},0);return i>60?t[0]+(\"\"===r?\"\":r+\"\\n \")+\" \"+e.join(\",\\n \")+\" \"+t[1]:t[0]+r+\" \"+e.join(\", \")+\" \"+t[1]}function isArray(e){return Array.isArray(e)}function isBoolean(e){return\"boolean\"==typeof e}function isNull(e){return null===e}function isNullOrUndefined(e){return null==e}function isNumber(e){return\"number\"==typeof e}function isString(e){return\"string\"==typeof e}function isSymbol(e){return\"symbol\"==typeof e}function isUndefined(e){return void 0===e}function isRegExp(e){return isObject(e)&&\"[object RegExp]\"===objectToString(e)}function isObject(e){return\"object\"==typeof e&&null!==e}function isDate(e){return isObject(e)&&\"[object Date]\"===objectToString(e)}function isError(e){return isObject(e)&&(\"[object Error]\"===objectToString(e)||e instanceof Error)}function isFunction(e){return\"function\"==typeof e}function isPrimitive(e){return null===e||\"boolean\"==typeof e||\"number\"==typeof e||\"string\"==typeof e||\"symbol\"==typeof e||\"undefined\"==typeof e}function objectToString(e){return Object.prototype.toString.call(e)}function pad(e){return e<10?\"0\"+e.toString(10):e.toString(10)}function timestamp(){var e=new Date,r=[pad(e.getHours()),pad(e.getMinutes()),pad(e.getSeconds())].join(\":\");return[e.getDate(),months[e.getMonth()],r].join(\" \")}function hasOwnProperty(e,r){return Object.prototype.hasOwnProperty.call(e,r)}var formatRegExp=/%[sdj%]/g;exports.format=function(e){if(!isString(e)){for(var r=[],t=0;t=i)return e;switch(e){case\"%s\":return String(n[t++]);case\"%d\":return Number(n[t++]);case\"%j\":try{return JSON.stringify(n[t++])}catch(e){return\"[Circular]\"}default:return e}}),s=n[t];t>3}if(a--,1===i||2===i)o+=e.readSVarint(),n+=e.readSVarint(),1===i&&(t&&s.push(t),t=[]),t.push(new Point(o,n));else{if(7!==i)throw new Error(\"unknown command \"+i);t&&t.push(t[0].clone())}}return t&&s.push(t),s},VectorTileFeature.prototype.bbox=function(){var e=this._pbf;e.pos=this._geometry;for(var t=e.readVarint()+e.pos,r=1,i=0,a=0,o=0,n=1/0,s=-(1/0),p=1/0,h=-(1/0);e.pos>3}if(i--,1===r||2===r)a+=e.readSVarint(),o+=e.readSVarint(),as&&(s=a),oh&&(h=o);else if(7!==r)throw new Error(\"unknown command \"+r)}return[n,p,s,h]},VectorTileFeature.prototype.toGeoJSON=function(e,t,r){function i(e){for(var t=0;t>3;t=1===a?e.readString():2===a?e.readFloat():3===a?e.readDouble():4===a?e.readVarint64():5===a?e.readVarint():6===a?e.readSVarint():7===a?e.readBoolean():null}return t}var VectorTileFeature=require(\"./vectortilefeature.js\");module.exports=VectorTileLayer,VectorTileLayer.prototype.feature=function(e){if(e<0||e>=this._features.length)throw new Error(\"feature index out of bounds\");this._pbf.pos=this._features[e];var t=this._pbf.readVarint()+this._pbf.pos;return new VectorTileFeature(this._pbf,t,this.extent,this._keys,this._values)};\n},{\"./vectortilefeature.js\":36}],38:[function(require,module,exports){\nfunction fromVectorTileJs(e){var r=[];for(var o in e.layers)r.push(prepareLayer(e.layers[o]));var t=new Pbf;return vtpb.tile.write({layers:r},t),t.finish()}function fromGeojsonVt(e){var r={};for(var o in e)r[o]=new GeoJSONWrapper(e[o].features),r[o].name=o;return fromVectorTileJs({layers:r})}function prepareLayer(e){for(var r={name:e.name||\"\",version:e.version||1,extent:e.extent||4096,keys:[],values:[],features:[]},o={},t={},n=0;n>31}function encodeGeometry(e){for(var r=[],o=0,t=0,n=e.length,a=0;aArrayGroup.MAX_VERTEX_ARRAY_LENGTH)&&(e=new Segment(this.layoutVertexArray.length,this.elementArray.length),this.segments.push(e)),e},ArrayGroup.prototype.prepareSegment2=function(r){var e=this.segments2[this.segments2.length-1];return(!e||e.vertexLength+r>ArrayGroup.MAX_VERTEX_ARRAY_LENGTH)&&(e=new Segment(this.layoutVertexArray.length,this.elementArray2.length),this.segments2.push(e)),e},ArrayGroup.prototype.populatePaintArrays=function(r){var e=this;for(var t in e.layerData){var a=e.layerData[t];0!==a.paintVertexArray.bytesPerElement&&a.programConfiguration.populatePaintArray(a.layer,a.paintVertexArray,a.paintPropertyStatistics,e.layoutVertexArray.length,e.globalProperties,r)}},ArrayGroup.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},ArrayGroup.prototype.serialize=function(r){return{layoutVertexArray:this.layoutVertexArray.serialize(r),elementArray:this.elementArray&&this.elementArray.serialize(r),elementArray2:this.elementArray2&&this.elementArray2.serialize(r),paintVertexArrays:serializePaintVertexArrays(this.layerData,r),segments:this.segments,segments2:this.segments2}},ArrayGroup.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,module.exports=ArrayGroup;\n},{\"./program_configuration\":58}],45:[function(require,module,exports){\n\"use strict\";var ArrayGroup=require(\"./array_group\"),BufferGroup=require(\"./buffer_group\"),util=require(\"../util/util\"),Bucket=function(r,t){this.zoom=r.zoom,this.overscaling=r.overscaling,this.layers=r.layers,this.index=r.index,r.arrays?this.buffers=new BufferGroup(t,r.layers,r.zoom,r.arrays):this.arrays=new ArrayGroup(t,r.layers,r.zoom)};Bucket.prototype.populate=function(r,t){for(var e=this,i=0,a=r;i=EXTENT||o<0||o>=EXTENT)){var n=r.prepareSegment(4),u=n.vertexLength;addCircleVertex(r.layoutVertexArray,y,o,-1,-1),addCircleVertex(r.layoutVertexArray,y,o,1,-1),addCircleVertex(r.layoutVertexArray,y,o,1,1),addCircleVertex(r.layoutVertexArray,y,o,-1,1),r.elementArray.emplaceBack(u,u+1,u+2),r.elementArray.emplaceBack(u,u+3,u+2),n.vertexLength+=4,n.primitiveLength+=2}}r.populatePaintArrays(e.properties)},r}(Bucket);CircleBucket.programInterface=circleInterface,module.exports=CircleBucket;\n},{\"../bucket\":45,\"../element_array_type\":53,\"../extent\":54,\"../load_geometry\":56,\"../vertex_array_type\":60}],47:[function(require,module,exports){\n\"use strict\";var Bucket=require(\"../bucket\"),createVertexArrayType=require(\"../vertex_array_type\"),createElementArrayType=require(\"../element_array_type\"),loadGeometry=require(\"../load_geometry\"),earcut=require(\"earcut\"),classifyRings=require(\"../../util/classify_rings\"),EARCUT_MAX_RINGS=500,fillInterface={layoutVertexArrayType:createVertexArrayType([{name:\"a_pos\",components:2,type:\"Int16\"}]),elementArrayType:createElementArrayType(3),elementArrayType2:createElementArrayType(2),paintAttributes:[{property:\"fill-color\",type:\"Uint8\"},{property:\"fill-outline-color\",type:\"Uint8\"},{property:\"fill-opacity\",type:\"Uint8\",multiplier:255}]},FillBucket=function(e){function r(r){e.call(this,r,fillInterface)}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.addFeature=function(e){for(var r=this.arrays,t=0,a=classifyRings(loadGeometry(e),EARCUT_MAX_RINGS);tEXTENT)||e.y===r.y&&(e.y<0||e.y>EXTENT)}var Bucket=require(\"../bucket\"),createVertexArrayType=require(\"../vertex_array_type\"),createElementArrayType=require(\"../element_array_type\"),loadGeometry=require(\"../load_geometry\"),EXTENT=require(\"../extent\"),earcut=require(\"earcut\"),classifyRings=require(\"../../util/classify_rings\"),EARCUT_MAX_RINGS=500,fillExtrusionInterface={layoutVertexArrayType:createVertexArrayType([{name:\"a_pos\",components:2,type:\"Int16\"},{name:\"a_normal\",components:3,type:\"Int16\"},{name:\"a_edgedistance\",components:1,type:\"Int16\"}]),elementArrayType:createElementArrayType(3),paintAttributes:[{property:\"fill-extrusion-base\",type:\"Uint16\"},{property:\"fill-extrusion-height\",type:\"Uint16\"},{property:\"fill-extrusion-color\",type:\"Uint8\"}]},FACTOR=Math.pow(2,13),FillExtrusionBucket=function(e){function r(r){e.call(this,r,fillExtrusionInterface)}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.addFeature=function(e){for(var r=this.arrays,t=0,a=classifyRings(loadGeometry(e),EARCUT_MAX_RINGS);t=1){var A=d[h-1];if(!isBoundaryEdge(g,A)){var _=g.sub(A)._perp()._unit();addVertex(r.layoutVertexArray,g.x,g.y,_.x,_.y,0,0,m),addVertex(r.layoutVertexArray,g.x,g.y,_.x,_.y,0,1,m),m+=A.dist(g),addVertex(r.layoutVertexArray,A.x,A.y,_.x,_.y,0,0,m),addVertex(r.layoutVertexArray,A.x,A.y,_.x,_.y,0,1,m);var v=p.vertexLength;r.elementArray.emplaceBack(v,v+1,v+2),r.elementArray.emplaceBack(v+1,v+2,v+3),p.vertexLength+=4,p.primitiveLength+=2}}u.push(g.x),u.push(g.y)}}}for(var E=earcut(u,c),T=0;T>6)}var Bucket=require(\"../bucket\"),createVertexArrayType=require(\"../vertex_array_type\"),createElementArrayType=require(\"../element_array_type\"),loadGeometry=require(\"../load_geometry\"),EXTENT=require(\"../extent\"),VectorTileFeature=require(\"vector-tile\").VectorTileFeature,EXTRUDE_SCALE=63,COS_HALF_SHARP_CORNER=Math.cos(37.5*(Math.PI/180)),SHARP_CORNER_OFFSET=15,LINE_DISTANCE_BUFFER_BITS=15,LINE_DISTANCE_SCALE=.5,MAX_LINE_DISTANCE=Math.pow(2,LINE_DISTANCE_BUFFER_BITS-1)/LINE_DISTANCE_SCALE,lineInterface={layoutVertexArrayType:createVertexArrayType([{name:\"a_pos\",components:2,type:\"Int16\"},{name:\"a_data\",components:4,type:\"Uint8\"}]),paintAttributes:[{property:\"line-color\",type:\"Uint8\"},{property:\"line-blur\",multiplier:10,type:\"Uint8\"},{property:\"line-opacity\",multiplier:10,type:\"Uint8\"},{property:\"line-gap-width\",multiplier:10,type:\"Uint8\",name:\"a_gapwidth\"},{property:\"line-offset\",multiplier:1,type:\"Int8\"}],elementArrayType:createElementArrayType()},LineBucket=function(e){function t(t){e.call(this,t,lineInterface)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.addFeature=function(e){for(var t=this,r=this.layers[0].layout,i=r[\"line-join\"],a=r[\"line-cap\"],n=r[\"line-miter-limit\"],d=r[\"line-round-limit\"],s=0,u=loadGeometry(e,LINE_DISTANCE_BUFFER_BITS);s=2&&e[l-1].equals(e[l-2]);)l--;if(!(l<(u?3:2))){\"bevel\"===r&&(a=1.05);var o=SHARP_CORNER_OFFSET*(EXTENT/(512*this.overscaling)),p=e[0],c=this.arrays,_=c.prepareSegment(10*l);this.distance=0;var y,h,m,E,x,C,v,A=i,f=u?\"butt\":i,L=!0;this.e1=this.e2=this.e3=-1,u&&(y=e[l-2],x=p.sub(y)._unit()._perp());for(var V=0;V0){var b=y.dist(h);if(b>2*o){var R=y.sub(y.sub(h)._mult(o/b)._round());d.distance+=R.dist(h),d.addCurrentVertex(R,d.distance,E.mult(1),0,0,!1,_),h=R}}var g=h&&m,F=g?r:m?A:f;if(g&&\"round\"===F&&(Ia&&(F=\"bevel\"),\"bevel\"===F&&(I>2&&(F=\"flipbevel\"),I100)S=x.clone().mult(-1);else{var B=E.x*x.y-E.y*x.x>0?-1:1,k=I*E.add(x).mag()/E.sub(x).mag();S._perp()._mult(k*B)}d.addCurrentVertex(y,d.distance,S,0,0,!1,_),d.addCurrentVertex(y,d.distance,S.mult(-1),0,0,!1,_)}else if(\"bevel\"===F||\"fakeround\"===F){var D=E.x*x.y-E.y*x.x>0,P=-Math.sqrt(I*I-1);if(D?(v=0,C=P):(C=0,v=P),L||d.addCurrentVertex(y,d.distance,E,C,v,!1,_),\"fakeround\"===F){for(var U=Math.floor(8*(.5-(T-.5))),q=void 0,M=0;M=0;O--)q=E.mult((O+1)/(U+1))._add(x)._unit(),d.addPieSliceVertex(y,d.distance,q,D,_)}m&&d.addCurrentVertex(y,d.distance,x,-C,-v,!1,_)}else\"butt\"===F?(L||d.addCurrentVertex(y,d.distance,E,0,0,!1,_),m&&d.addCurrentVertex(y,d.distance,x,0,0,!1,_)):\"square\"===F?(L||(d.addCurrentVertex(y,d.distance,E,1,1,!1,_),d.e1=d.e2=-1),m&&d.addCurrentVertex(y,d.distance,x,-1,-1,!1,_)):\"round\"===F&&(L||(d.addCurrentVertex(y,d.distance,E,0,0,!1,_),d.addCurrentVertex(y,d.distance,E,1,1,!0,_),d.e1=d.e2=-1),m&&(d.addCurrentVertex(y,d.distance,x,-1,-1,!0,_),d.addCurrentVertex(y,d.distance,x,0,0,!1,_)));if(N&&V2*o){var H=y.add(m.sub(y)._mult(o/X)._round());d.distance+=H.dist(y),d.addCurrentVertex(H,d.distance,x.mult(1),0,0,!1,_),y=H}}L=!1}c.populatePaintArrays(s)}},t.prototype.addCurrentVertex=function(e,t,r,i,a,n,d){var s,u=n?1:0,l=this.arrays,o=l.layoutVertexArray,p=l.elementArray;s=r.clone(),i&&s._sub(r.perp()._mult(i)),addLineVertex(o,e,s,u,0,i,t),this.e3=d.vertexLength++,this.e1>=0&&this.e2>=0&&(p.emplaceBack(this.e1,this.e2,this.e3),d.primitiveLength++),this.e1=this.e2,this.e2=this.e3,s=r.mult(-1),a&&s._sub(r.perp()._mult(a)),addLineVertex(o,e,s,u,1,-a,t),this.e3=d.vertexLength++,this.e1>=0&&this.e2>=0&&(p.emplaceBack(this.e1,this.e2,this.e3),d.primitiveLength++),this.e1=this.e2,this.e2=this.e3,t>MAX_LINE_DISTANCE/2&&(this.distance=0,this.addCurrentVertex(e,this.distance,r,i,a,n,d))},t.prototype.addPieSliceVertex=function(e,t,r,i,a){var n=i?1:0;r=r.mult(i?-1:1);var d=this.arrays,s=d.layoutVertexArray,u=d.elementArray;addLineVertex(s,e,r,0,n,0,t),this.e3=a.vertexLength++,this.e1>=0&&this.e2>=0&&(u.emplaceBack(this.e1,this.e2,this.e3),a.primitiveLength++),i?this.e2=this.e3:this.e1=this.e3},t}(Bucket);LineBucket.programInterface=lineInterface,module.exports=LineBucket;\n},{\"../bucket\":45,\"../element_array_type\":53,\"../extent\":54,\"../load_geometry\":56,\"../vertex_array_type\":60,\"vector-tile\":34}],50:[function(require,module,exports){\n\"use strict\";function addVertex(e,t,o,r,a,i,n,l,s,c,y){e.emplaceBack(t,o,Math.round(64*r),Math.round(64*a),i/4,n/4,10*(c||0),y,10*(l||0),10*Math.min(s||25,25))}function addCollisionBoxVertex(e,t,o,r,a){return e.emplaceBack(t.x,t.y,Math.round(o.x),Math.round(o.y),10*r,10*a)}var Point=require(\"point-geometry\"),ArrayGroup=require(\"../array_group\"),BufferGroup=require(\"../buffer_group\"),createVertexArrayType=require(\"../vertex_array_type\"),createElementArrayType=require(\"../element_array_type\"),EXTENT=require(\"../extent\"),Anchor=require(\"../../symbol/anchor\"),getAnchors=require(\"../../symbol/get_anchors\"),resolveTokens=require(\"../../util/token\"),Quads=require(\"../../symbol/quads\"),Shaping=require(\"../../symbol/shaping\"),resolveText=require(\"../../symbol/resolve_text\"),mergeLines=require(\"../../symbol/mergelines\"),clipLine=require(\"../../symbol/clip_line\"),util=require(\"../../util/util\"),scriptDetection=require(\"../../util/script_detection\"),loadGeometry=require(\"../load_geometry\"),CollisionFeature=require(\"../../symbol/collision_feature\"),findPoleOfInaccessibility=require(\"../../util/find_pole_of_inaccessibility\"),classifyRings=require(\"../../util/classify_rings\"),VectorTileFeature=require(\"vector-tile\").VectorTileFeature,rtlTextPlugin=require(\"../../source/rtl_text_plugin\"),shapeText=Shaping.shapeText,shapeIcon=Shaping.shapeIcon,WritingMode=Shaping.WritingMode,getGlyphQuads=Quads.getGlyphQuads,getIconQuads=Quads.getIconQuads,elementArrayType=createElementArrayType(),layoutVertexArrayType=createVertexArrayType([{name:\"a_pos_offset\",components:4,type:\"Int16\"},{name:\"a_texture_pos\",components:2,type:\"Uint16\"},{name:\"a_data\",components:4,type:\"Uint8\"}]),symbolInterfaces={glyph:{layoutVertexArrayType:layoutVertexArrayType,elementArrayType:elementArrayType,paintAttributes:[{name:\"a_fill_color\",property:\"text-color\",type:\"Uint8\"},{name:\"a_halo_color\",property:\"text-halo-color\",type:\"Uint8\"},{name:\"a_halo_width\",property:\"text-halo-width\",type:\"Uint16\",multiplier:10},{name:\"a_halo_blur\",property:\"text-halo-blur\",type:\"Uint16\",multiplier:10},{name:\"a_opacity\",property:\"text-opacity\",type:\"Uint8\",multiplier:255}]},icon:{layoutVertexArrayType:layoutVertexArrayType,elementArrayType:elementArrayType,paintAttributes:[{name:\"a_fill_color\",property:\"icon-color\",type:\"Uint8\"},{name:\"a_halo_color\",property:\"icon-halo-color\",type:\"Uint8\"},{name:\"a_halo_width\",property:\"icon-halo-width\",type:\"Uint16\",multiplier:10},{name:\"a_halo_blur\",property:\"icon-halo-blur\",type:\"Uint16\",multiplier:10},{name:\"a_opacity\",property:\"icon-opacity\",type:\"Uint8\",multiplier:255}]},collisionBox:{layoutVertexArrayType:createVertexArrayType([{name:\"a_pos\",components:2,type:\"Int16\"},{name:\"a_extrude\",components:2,type:\"Int16\"},{name:\"a_data\",components:2,type:\"Uint8\"}]),elementArrayType:createElementArrayType(2)}},SymbolBucket=function(e){var t=this;if(this.collisionBoxArray=e.collisionBoxArray,this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.index=e.index,this.sdfIcons=e.sdfIcons,this.iconsNeedLinear=e.iconsNeedLinear,this.adjustedTextSize=e.adjustedTextSize,this.adjustedIconSize=e.adjustedIconSize,this.fontstack=e.fontstack,e.arrays){this.buffers={};for(var o in e.arrays)e.arrays[o]&&(t.buffers[o]=new BufferGroup(symbolInterfaces[o],e.layers,e.zoom,e.arrays[o]))}};SymbolBucket.prototype.populate=function(e,t){var o=this,r=this.layers[0],a=r.layout,i=a[\"text-font\"],n=a[\"icon-image\"],l=i&&(!r.isLayoutValueFeatureConstant(\"text-field\")||a[\"text-field\"]),s=n;if(this.features=[],l||s){for(var c=t.iconDependencies,y=t.glyphDependencies,p=y[i]=y[i]||{},x=0;xEXTENT||i.y<0||i.y>EXTENT);if(!x||n){var l=n||f;r.addSymbolInstance(i,a,t,o,r.layers[0],l,r.collisionBoxArray,e.index,e.sourceLayerIndex,r.index,s,h,m,y,u,g,{zoom:r.zoom},e.properties)}};if(\"line\"===b)for(var S=0,T=clipLine(e.geometry,0,0,EXTENT,EXTENT);S=0;i--)if(o.dist(a[i])7*Math.PI/4)continue}else if(r&&a&&d<=3*Math.PI/4||d>5*Math.PI/4)continue}else if(r&&a&&(d<=Math.PI/2||d>3*Math.PI/2))continue;var m=u.tl,g=u.tr,f=u.bl,b=u.br,v=u.tex,I=u.anchorPoint,S=Math.max(y+Math.log(u.minScale)/Math.LN2,p),T=Math.min(y+Math.log(u.maxScale)/Math.LN2,25);if(!(T<=S)){S===p&&(S=0);var M=Math.round(u.glyphAngle/(2*Math.PI)*256),B=e.prepareSegment(4),A=B.vertexLength;addVertex(c,I.x,I.y,m.x,m.y,v.x,v.y,S,T,p,M),addVertex(c,I.x,I.y,g.x,g.y,v.x+v.w,v.y,S,T,p,M),addVertex(c,I.x,I.y,f.x,f.y,v.x,v.y+v.h,S,T,p,M),addVertex(c,I.x,I.y,b.x,b.y,v.x+v.w,v.y+v.h,S,T,p,M),s.emplaceBack(A,A+1,A+2),s.emplaceBack(A+1,A+2,A+3),B.vertexLength+=4,B.primitiveLength+=2}}e.populatePaintArrays(n)},SymbolBucket.prototype.addToDebugBuffers=function(e){for(var t=this,o=this.arrays.collisionBox,r=o.layoutVertexArray,a=o.elementArray,i=-e.angle,n=e.yStretch,l=0,s=t.symbolInstances;lSymbolBucket.MAX_INSTANCES&&util.warnOnce(\"Too many symbols being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907\"),z>SymbolBucket.MAX_INSTANCES&&util.warnOnce(\"Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907\");var _=(o[WritingMode.vertical]?WritingMode.vertical:0)|(o[WritingMode.horizontal]?WritingMode.horizontal:0);this.symbolInstances.push({textBoxStartIndex:M,textBoxEndIndex:B,iconBoxStartIndex:A,iconBoxEndIndex:z,glyphQuads:I,iconQuads:v,anchor:e,featureIndex:l,featureProperties:g,writingModes:_})},SymbolBucket.programInterfaces=symbolInterfaces,SymbolBucket.MAX_INSTANCES=65535,module.exports=SymbolBucket;\n},{\"../../source/rtl_text_plugin\":90,\"../../symbol/anchor\":157,\"../../symbol/clip_line\":159,\"../../symbol/collision_feature\":161,\"../../symbol/get_anchors\":163,\"../../symbol/mergelines\":166,\"../../symbol/quads\":167,\"../../symbol/resolve_text\":168,\"../../symbol/shaping\":169,\"../../util/classify_rings\":195,\"../../util/find_pole_of_inaccessibility\":201,\"../../util/script_detection\":209,\"../../util/token\":211,\"../../util/util\":212,\"../array_group\":44,\"../buffer_group\":52,\"../element_array_type\":53,\"../extent\":54,\"../load_geometry\":56,\"../vertex_array_type\":60,\"point-geometry\":26,\"vector-tile\":34}],51:[function(require,module,exports){\n\"use strict\";var AttributeType={Int8:\"BYTE\",Uint8:\"UNSIGNED_BYTE\",Int16:\"SHORT\",Uint16:\"UNSIGNED_SHORT\"},Buffer=function(e,t,r){this.arrayBuffer=e.arrayBuffer,this.length=e.length,this.attributes=t.members,this.itemSize=t.bytesPerElement,this.type=r,this.arrayType=t};Buffer.fromStructArray=function(e,t){return new Buffer(e.serialize(),e.constructor.serialize(),t)},Buffer.prototype.bind=function(e){var t=e[this.type];this.buffer?e.bindBuffer(t,this.buffer):(this.gl=e,this.buffer=e.createBuffer(),e.bindBuffer(t,this.buffer),e.bufferData(t,this.arrayBuffer,e.STATIC_DRAW),this.arrayBuffer=null)},Buffer.prototype.setVertexAttribPointers=function(e,t,r){for(var f=this,i=0;i0?t+2*e:e}function translate(e,t,r,i,a){if(!t[0]&&!t[1])return e;t=Point.convert(t),\"viewport\"===r&&t._rotate(-i);for(var n=[],s=0;sr.max||d.yr.max)&&util.warnOnce(\"Geometry exceeds allowed extent, reduce your vector tile buffer size\")}return u};\n},{\"../util/util\":212,\"./extent\":54}],57:[function(require,module,exports){\n\"use strict\";var createStructArrayType=require(\"../util/struct_array\"),PosArray=createStructArrayType({members:[{name:\"a_pos\",type:\"Int16\",components:2}]});module.exports=PosArray;\n},{\"../util/struct_array\":210}],58:[function(require,module,exports){\n\"use strict\";function getPaintAttributeValue(t,r,e,i){if(!t.zoomStops)return r.getPaintValue(t.property,e,i);var a=t.zoomStops.map(function(a){return r.getPaintValue(t.property,util.extend({},e,{zoom:a}),i)});return 1===a.length?a[0]:a}function normalizePaintAttribute(t,r){var e=t.name;e||(e=t.property.replace(r.type+\"-\",\"\").replace(/-/g,\"_\"));var i=\"color\"===r._paintSpecifications[t.property].type;return util.extend({name:\"a_\"+e,components:i?4:1,multiplier:i?255:1,dimensions:i?4:1},t)}var createVertexArrayType=require(\"./vertex_array_type\"),util=require(\"../util/util\"),ProgramConfiguration=function(){this.attributes=[],this.uniforms=[],this.interpolationUniforms=[],this.pragmas={vertex:{},fragment:{}},this.cacheKey=\"\"};ProgramConfiguration.createDynamic=function(t,r,e){for(var i=new ProgramConfiguration,a=0,n=t;a90||this.lat<-90)throw new Error(\"Invalid LngLat latitude value: must be between -90 and 90\")};LngLat.prototype.wrap=function(){return new LngLat(wrap(this.lng,-180,180),this.lat)},LngLat.prototype.toArray=function(){return[this.lng,this.lat]},LngLat.prototype.toString=function(){return\"LngLat(\"+this.lng+\", \"+this.lat+\")\"},LngLat.convert=function(t){if(t instanceof LngLat)return t;if(t&&t.hasOwnProperty(\"lng\")&&t.hasOwnProperty(\"lat\"))return new LngLat(t.lng,t.lat);if(Array.isArray(t)&&2===t.length)return new LngLat(t[0],t[1]);throw new Error(\"`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, or an array of [, ]\")},module.exports=LngLat;\n},{\"../util/util\":212}],63:[function(require,module,exports){\n\"use strict\";var LngLat=require(\"./lng_lat\"),LngLatBounds=function(t,n){t&&(n?this.setSouthWest(t).setNorthEast(n):4===t.length?this.setSouthWest([t[0],t[1]]).setNorthEast([t[2],t[3]]):this.setSouthWest(t[0]).setNorthEast(t[1]))};LngLatBounds.prototype.setNorthEast=function(t){return this._ne=LngLat.convert(t),this},LngLatBounds.prototype.setSouthWest=function(t){return this._sw=LngLat.convert(t),this},LngLatBounds.prototype.extend=function(t){var n,e,s=this._sw,o=this._ne;if(t instanceof LngLat)n=t,e=t;else{if(!(t instanceof LngLatBounds))return Array.isArray(t)?t.every(Array.isArray)?this.extend(LngLatBounds.convert(t)):this.extend(LngLat.convert(t)):this;if(n=t._sw,e=t._ne,!n||!e)return this}return s||o?(s.lng=Math.min(n.lng,s.lng),s.lat=Math.min(n.lat,s.lat),o.lng=Math.max(e.lng,o.lng),o.lat=Math.max(e.lat,o.lat)):(this._sw=new LngLat(n.lng,n.lat),this._ne=new LngLat(e.lng,e.lat)),this},LngLatBounds.prototype.getCenter=function(){return new LngLat((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},LngLatBounds.prototype.getSouthWest=function(){return this._sw},LngLatBounds.prototype.getNorthEast=function(){return this._ne},LngLatBounds.prototype.getNorthWest=function(){return new LngLat(this.getWest(),this.getNorth())},LngLatBounds.prototype.getSouthEast=function(){return new LngLat(this.getEast(),this.getSouth())},LngLatBounds.prototype.getWest=function(){return this._sw.lng},LngLatBounds.prototype.getSouth=function(){return this._sw.lat},LngLatBounds.prototype.getEast=function(){return this._ne.lng},LngLatBounds.prototype.getNorth=function(){return this._ne.lat},LngLatBounds.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},LngLatBounds.prototype.toString=function(){return\"LngLatBounds(\"+this._sw.toString()+\", \"+this._ne.toString()+\")\"},LngLatBounds.convert=function(t){return!t||t instanceof LngLatBounds?t:new LngLatBounds(t)},module.exports=LngLatBounds;\n},{\"./lng_lat\":62}],64:[function(require,module,exports){\n\"use strict\";var LngLat=require(\"./lng_lat\"),Point=require(\"point-geometry\"),Coordinate=require(\"./coordinate\"),util=require(\"../util/util\"),interp=require(\"../util/interpolate\"),TileCoord=require(\"../source/tile_coord\"),EXTENT=require(\"../data/extent\"),glmatrix=require(\"@mapbox/gl-matrix\"),vec4=glmatrix.vec4,mat4=glmatrix.mat4,mat2=glmatrix.mat2,Transform=function(t,i,o){this.tileSize=512,this._renderWorldCopies=void 0===o||o,this._minZoom=t||0,this._maxZoom=i||22,this.latRange=[-85.05113,85.05113],this.width=0,this.height=0,this._center=new LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0},prototypeAccessors={minZoom:{},maxZoom:{},worldSize:{},centerPoint:{},size:{},bearing:{},pitch:{},fov:{},zoom:{},center:{},unmodified:{},x:{},y:{},point:{}};prototypeAccessors.minZoom.get=function(){return this._minZoom},prototypeAccessors.minZoom.set=function(t){this._minZoom!==t&&(this._minZoom=t,this.zoom=Math.max(this.zoom,t))},prototypeAccessors.maxZoom.get=function(){return this._maxZoom},prototypeAccessors.maxZoom.set=function(t){this._maxZoom!==t&&(this._maxZoom=t,this.zoom=Math.min(this.zoom,t))},prototypeAccessors.worldSize.get=function(){return this.tileSize*this.scale},prototypeAccessors.centerPoint.get=function(){return this.size._div(2)},prototypeAccessors.size.get=function(){return new Point(this.width,this.height)},prototypeAccessors.bearing.get=function(){return-this.angle/Math.PI*180},prototypeAccessors.bearing.set=function(t){var i=-util.wrap(t,-180,180)*Math.PI/180;this.angle!==i&&(this._unmodified=!1,this.angle=i,this._calcMatrices(),this.rotationMatrix=mat2.create(),mat2.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},prototypeAccessors.pitch.get=function(){return this._pitch/Math.PI*180},prototypeAccessors.pitch.set=function(t){var i=util.clamp(t,0,60)/180*Math.PI;this._pitch!==i&&(this._unmodified=!1,this._pitch=i,this._calcMatrices())},prototypeAccessors.fov.get=function(){return this._fov/Math.PI*180},prototypeAccessors.fov.set=function(t){t=Math.max(.01,Math.min(60,t)),this._fov!==t&&(this._unmodified=!1,this._fov=t/180*Math.PI,this._calcMatrices())},prototypeAccessors.zoom.get=function(){return this._zoom},prototypeAccessors.zoom.set=function(t){var i=Math.min(Math.max(t,this.minZoom),this.maxZoom);this._zoom!==i&&(this._unmodified=!1,this._zoom=i,this.scale=this.zoomScale(i),this.tileZoom=Math.floor(i),this.zoomFraction=i-this.tileZoom,this._constrain(),this._calcMatrices())},prototypeAccessors.center.get=function(){return this._center},prototypeAccessors.center.set=function(t){t.lat===this._center.lat&&t.lng===this._center.lng||(this._unmodified=!1,this._center=t,this._constrain(),this._calcMatrices())},Transform.prototype.coveringZoomLevel=function(t){return(t.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/t.tileSize))},Transform.prototype.coveringTiles=function(t){var i=this.coveringZoomLevel(t),o=i;if(it.maxzoom&&(i=t.maxzoom);var e=this.pointCoordinate(this.centerPoint,i),r=new Point(e.column-.5,e.row-.5),n=[this.pointCoordinate(new Point(0,0),i),this.pointCoordinate(new Point(this.width,0),i),this.pointCoordinate(new Point(this.width,this.height),i),this.pointCoordinate(new Point(0,this.height),i)];return TileCoord.cover(i,n,t.reparseOverscaled?o:i,this._renderWorldCopies).sort(function(t,i){return r.dist(t)-r.dist(i)})},Transform.prototype.resize=function(t,i){this.width=t,this.height=i,this.pixelsToGLUnits=[2/t,-2/i],this._constrain(),this._calcMatrices()},prototypeAccessors.unmodified.get=function(){return this._unmodified},Transform.prototype.zoomScale=function(t){return Math.pow(2,t)},Transform.prototype.scaleZoom=function(t){return Math.log(t)/Math.LN2},Transform.prototype.project=function(t){return new Point(this.lngX(t.lng),this.latY(t.lat))},Transform.prototype.unproject=function(t){return new LngLat(this.xLng(t.x),this.yLat(t.y))},prototypeAccessors.x.get=function(){return this.lngX(this.center.lng)},prototypeAccessors.y.get=function(){return this.latY(this.center.lat)},prototypeAccessors.point.get=function(){return new Point(this.x,this.y)},Transform.prototype.lngX=function(t){return(180+t)*this.worldSize/360},Transform.prototype.latY=function(t){var i=180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360));return(180-i)*this.worldSize/360},Transform.prototype.xLng=function(t){return 360*t/this.worldSize-180},Transform.prototype.yLat=function(t){var i=180-360*t/this.worldSize;return 360/Math.PI*Math.atan(Math.exp(i*Math.PI/180))-90},Transform.prototype.setLocationAtPoint=function(t,i){var o=this.pointCoordinate(i)._sub(this.pointCoordinate(this.centerPoint));this.center=this.coordinateLocation(this.locationCoordinate(t)._sub(o))},Transform.prototype.locationPoint=function(t){return this.coordinatePoint(this.locationCoordinate(t))},Transform.prototype.pointLocation=function(t){return this.coordinateLocation(this.pointCoordinate(t))},Transform.prototype.locationCoordinate=function(t){return new Coordinate(this.lngX(t.lng)/this.tileSize,this.latY(t.lat)/this.tileSize,this.zoom).zoomTo(this.tileZoom)},Transform.prototype.coordinateLocation=function(t){var i=t.zoomTo(this.zoom);return new LngLat(this.xLng(i.column*this.tileSize),this.yLat(i.row*this.tileSize))},Transform.prototype.pointCoordinate=function(t,i){void 0===i&&(i=this.tileZoom);var o=0,e=[t.x,t.y,0,1],r=[t.x,t.y,1,1];vec4.transformMat4(e,e,this.pixelMatrixInverse),vec4.transformMat4(r,r,this.pixelMatrixInverse);var n=e[3],s=r[3],a=e[0]/n,h=r[0]/s,c=e[1]/n,m=r[1]/s,p=e[2]/n,l=r[2]/s,u=p===l?0:(o-p)/(l-p);return new Coordinate(interp(a,h,u)/this.tileSize,interp(c,m,u)/this.tileSize,this.zoom)._zoomTo(i)},Transform.prototype.coordinatePoint=function(t){var i=t.zoomTo(this.zoom),o=[i.column*this.tileSize,i.row*this.tileSize,0,1];return vec4.transformMat4(o,o,this.pixelMatrix),new Point(o[0]/o[3],o[1]/o[3])},Transform.prototype.calculatePosMatrix=function(t,i){var o=t.toCoordinate(i),e=this.worldSize/this.zoomScale(o.zoom),r=mat4.identity(new Float64Array(16));return mat4.translate(r,r,[o.column*e,o.row*e,0]),mat4.scale(r,r,[e/EXTENT,e/EXTENT,1]),mat4.multiply(r,this.projMatrix,r),new Float32Array(r)},Transform.prototype._constrain=function(){if(this.center&&this.width&&this.height&&!this._constraining){this._constraining=!0;var t,i,o,e,r,n,s,a,h=this.size,c=this._unmodified;this.latRange&&(t=this.latY(this.latRange[1]),i=this.latY(this.latRange[0]),r=i-ti&&(a=i-l)}if(this.lngRange){var u=this.x,f=h.x/2;u-fe&&(s=e-f)}void 0===s&&void 0===a||(this.center=this.unproject(new Point(void 0!==s?s:this.x,void 0!==a?a:this.y))),this._unmodified=c,this._constraining=!1}},Transform.prototype._calcMatrices=function(){if(this.height){this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height;var t=this._fov/2,i=Math.PI/2+this._pitch,o=Math.sin(t)*this.cameraToCenterDistance/Math.sin(Math.PI-i-t),e=Math.cos(Math.PI/2-this._pitch)*o+this.cameraToCenterDistance,r=1.01*e,n=new Float64Array(16);mat4.perspective(n,this._fov,this.width/this.height,1,r),mat4.scale(n,n,[1,-1,1]),mat4.translate(n,n,[0,0,-this.cameraToCenterDistance]),mat4.rotateX(n,n,this._pitch),mat4.rotateZ(n,n,this.angle),mat4.translate(n,n,[-this.x,-this.y,0]);var s=this.worldSize/(2*Math.PI*6378137*Math.abs(Math.cos(this.center.lat*(Math.PI/180))));if(mat4.scale(n,n,[1,1,s,1]),this.projMatrix=n,n=mat4.create(),mat4.scale(n,n,[this.width/2,-this.height/2,1]),mat4.translate(n,n,[1,-1,0]),this.pixelMatrix=mat4.multiply(new Float64Array(16),n,this.projMatrix),n=mat4.invert(new Float64Array(16),this.pixelMatrix),!n)throw new Error(\"failed to invert matrix\");this.pixelMatrixInverse=n}},Object.defineProperties(Transform.prototype,prototypeAccessors),module.exports=Transform;\n},{\"../data/extent\":54,\"../source/tile_coord\":94,\"../util/interpolate\":204,\"../util/util\":212,\"./coordinate\":61,\"./lng_lat\":62,\"@mapbox/gl-matrix\":1,\"point-geometry\":26}],65:[function(require,module,exports){\n\"use strict\";var browser=require(\"./util/browser\"),mapboxgl=module.exports={};mapboxgl.version=require(\"../package.json\").version,mapboxgl.workerCount=Math.max(Math.floor(browser.hardwareConcurrency/2),1),mapboxgl.Map=require(\"./ui/map\"),mapboxgl.NavigationControl=require(\"./ui/control/navigation_control\"),mapboxgl.GeolocateControl=require(\"./ui/control/geolocate_control\"),mapboxgl.AttributionControl=require(\"./ui/control/attribution_control\"),mapboxgl.ScaleControl=require(\"./ui/control/scale_control\"),mapboxgl.FullscreenControl=require(\"./ui/control/fullscreen_control\"),mapboxgl.Popup=require(\"./ui/popup\"),mapboxgl.Marker=require(\"./ui/marker\"),mapboxgl.Style=require(\"./style/style\"),mapboxgl.LngLat=require(\"./geo/lng_lat\"),mapboxgl.LngLatBounds=require(\"./geo/lng_lat_bounds\"),mapboxgl.Point=require(\"point-geometry\"),mapboxgl.Evented=require(\"./util/evented\"),mapboxgl.supported=require(\"./util/browser\").supported;var config=require(\"./util/config\");mapboxgl.config=config;var rtlTextPlugin=require(\"./source/rtl_text_plugin\");mapboxgl.setRTLTextPlugin=rtlTextPlugin.setRTLTextPlugin,Object.defineProperty(mapboxgl,\"accessToken\",{get:function(){return config.ACCESS_TOKEN},set:function(o){config.ACCESS_TOKEN=o}});\n},{\"../package.json\":43,\"./geo/lng_lat\":62,\"./geo/lng_lat_bounds\":63,\"./source/rtl_text_plugin\":90,\"./style/style\":146,\"./ui/control/attribution_control\":173,\"./ui/control/fullscreen_control\":174,\"./ui/control/geolocate_control\":175,\"./ui/control/navigation_control\":177,\"./ui/control/scale_control\":178,\"./ui/map\":187,\"./ui/marker\":188,\"./ui/popup\":189,\"./util/browser\":192,\"./util/config\":196,\"./util/evented\":200,\"point-geometry\":26}],66:[function(require,module,exports){\n\"use strict\";function drawBackground(r,t,e){var a=r.gl,i=r.transform,n=i.tileSize,o=e.paint[\"background-color\"],l=e.paint[\"background-pattern\"],u=e.paint[\"background-opacity\"],f=!l&&1===o[3]&&1===u;if(r.isOpaquePass===f){a.disable(a.STENCIL_TEST),r.setDepthSublayer(0);var s;l?(s=r.useProgram(\"fillPattern\",r.basicFillProgramConfiguration),pattern.prepare(l,r,s),r.tileExtentPatternVAO.bind(a,s,r.tileExtentBuffer)):(s=r.useProgram(\"fill\",r.basicFillProgramConfiguration),a.uniform4fv(s.u_color,o),r.tileExtentVAO.bind(a,s,r.tileExtentBuffer)),a.uniform1f(s.u_opacity,u);for(var c=i.coveringTiles({tileSize:n}),g=0,p=c;g\":[24,[4,18,20,9,4,0]],\"?\":[18,[3,16,3,17,4,19,5,20,7,21,11,21,13,20,14,19,15,17,15,15,14,13,13,12,9,10,9,7,-1,-1,9,2,8,1,9,0,10,1,9,2]],\"@\":[27,[18,13,17,15,15,16,12,16,10,15,9,14,8,11,8,8,9,6,11,5,14,5,16,6,17,8,-1,-1,12,16,10,14,9,11,9,8,10,6,11,5,-1,-1,18,16,17,8,17,6,19,5,21,5,23,7,24,10,24,12,23,15,22,17,20,19,18,20,15,21,12,21,9,20,7,19,5,17,4,15,3,12,3,9,4,6,5,4,7,2,9,1,12,0,15,0,18,1,20,2,21,3,-1,-1,19,16,18,8,18,6,19,5]],A:[18,[9,21,1,0,-1,-1,9,21,17,0,-1,-1,4,7,14,7]],B:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,15,17,13,16,12,13,11,-1,-1,4,11,13,11,16,10,17,9,18,7,18,4,17,2,16,1,13,0,4,0]],C:[21,[18,16,17,18,15,20,13,21,9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5]],D:[21,[4,21,4,0,-1,-1,4,21,11,21,14,20,16,18,17,16,18,13,18,8,17,5,16,3,14,1,11,0,4,0]],E:[19,[4,21,4,0,-1,-1,4,21,17,21,-1,-1,4,11,12,11,-1,-1,4,0,17,0]],F:[18,[4,21,4,0,-1,-1,4,21,17,21,-1,-1,4,11,12,11]],G:[21,[18,16,17,18,15,20,13,21,9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,18,8,-1,-1,13,8,18,8]],H:[22,[4,21,4,0,-1,-1,18,21,18,0,-1,-1,4,11,18,11]],I:[8,[4,21,4,0]],J:[16,[12,21,12,5,11,2,10,1,8,0,6,0,4,1,3,2,2,5,2,7]],K:[21,[4,21,4,0,-1,-1,18,21,4,7,-1,-1,9,12,18,0]],L:[17,[4,21,4,0,-1,-1,4,0,16,0]],M:[24,[4,21,4,0,-1,-1,4,21,12,0,-1,-1,20,21,12,0,-1,-1,20,21,20,0]],N:[22,[4,21,4,0,-1,-1,4,21,18,0,-1,-1,18,21,18,0]],O:[22,[9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,19,8,19,13,18,16,17,18,15,20,13,21,9,21]],P:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,14,17,12,16,11,13,10,4,10]],Q:[22,[9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,19,8,19,13,18,16,17,18,15,20,13,21,9,21,-1,-1,12,4,18,-2]],R:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,15,17,13,16,12,13,11,4,11,-1,-1,11,11,18,0]],S:[20,[17,18,15,20,12,21,8,21,5,20,3,18,3,16,4,14,5,13,7,12,13,10,15,9,16,8,17,6,17,3,15,1,12,0,8,0,5,1,3,3]],T:[16,[8,21,8,0,-1,-1,1,21,15,21]],U:[22,[4,21,4,6,5,3,7,1,10,0,12,0,15,1,17,3,18,6,18,21]],V:[18,[1,21,9,0,-1,-1,17,21,9,0]],W:[24,[2,21,7,0,-1,-1,12,21,7,0,-1,-1,12,21,17,0,-1,-1,22,21,17,0]],X:[20,[3,21,17,0,-1,-1,17,21,3,0]],Y:[18,[1,21,9,11,9,0,-1,-1,17,21,9,11]],Z:[20,[17,21,3,0,-1,-1,3,21,17,21,-1,-1,3,0,17,0]],\"[\":[14,[4,25,4,-7,-1,-1,5,25,5,-7,-1,-1,4,25,11,25,-1,-1,4,-7,11,-7]],\"\\\\\":[14,[0,21,14,-3]],\"]\":[14,[9,25,9,-7,-1,-1,10,25,10,-7,-1,-1,3,25,10,25,-1,-1,3,-7,10,-7]],\"^\":[16,[6,15,8,18,10,15,-1,-1,3,12,8,17,13,12,-1,-1,8,17,8,0]],_:[16,[0,-2,16,-2]],\"`\":[10,[6,21,5,20,4,18,4,16,5,15,6,16,5,17]],a:[19,[15,14,15,0,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],b:[19,[4,21,4,0,-1,-1,4,11,6,13,8,14,11,14,13,13,15,11,16,8,16,6,15,3,13,1,11,0,8,0,6,1,4,3]],c:[18,[15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],d:[19,[15,21,15,0,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],e:[18,[3,8,15,8,15,10,14,12,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],f:[12,[10,21,8,21,6,20,5,17,5,0,-1,-1,2,14,9,14]],g:[19,[15,14,15,-2,14,-5,13,-6,11,-7,8,-7,6,-6,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],h:[19,[4,21,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0]],i:[8,[3,21,4,20,5,21,4,22,3,21,-1,-1,4,14,4,0]],j:[10,[5,21,6,20,7,21,6,22,5,21,-1,-1,6,14,6,-3,5,-6,3,-7,1,-7]],k:[17,[4,21,4,0,-1,-1,14,14,4,4,-1,-1,8,8,15,0]],l:[8,[4,21,4,0]],m:[30,[4,14,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0,-1,-1,15,10,18,13,20,14,23,14,25,13,26,10,26,0]],n:[19,[4,14,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0]],o:[19,[8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3,16,6,16,8,15,11,13,13,11,14,8,14]],p:[19,[4,14,4,-7,-1,-1,4,11,6,13,8,14,11,14,13,13,15,11,16,8,16,6,15,3,13,1,11,0,8,0,6,1,4,3]],q:[19,[15,14,15,-7,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],r:[13,[4,14,4,0,-1,-1,4,8,5,11,7,13,9,14,12,14]],s:[17,[14,11,13,13,10,14,7,14,4,13,3,11,4,9,6,8,11,7,13,6,14,4,14,3,13,1,10,0,7,0,4,1,3,3]],t:[12,[5,21,5,4,6,1,8,0,10,0,-1,-1,2,14,9,14]],u:[19,[4,14,4,4,5,1,7,0,10,0,12,1,15,4,-1,-1,15,14,15,0]],v:[16,[2,14,8,0,-1,-1,14,14,8,0]],w:[22,[3,14,7,0,-1,-1,11,14,7,0,-1,-1,11,14,15,0,-1,-1,19,14,15,0]],x:[17,[3,14,14,0,-1,-1,14,14,3,0]],y:[16,[2,14,8,0,-1,-1,14,14,8,0,6,-4,4,-6,2,-7,1,-7]],z:[17,[14,14,3,0,-1,-1,3,14,14,14,-1,-1,3,0,14,0]],\"{\":[14,[9,25,7,24,6,23,5,21,5,19,6,17,7,16,8,14,8,12,6,10,-1,-1,7,24,6,22,6,20,7,18,8,17,9,15,9,13,8,11,4,9,8,7,9,5,9,3,8,1,7,0,6,-2,6,-4,7,-6,-1,-1,6,8,8,6,8,4,7,2,6,1,5,-1,5,-3,6,-5,7,-6,9,-7]],\"|\":[8,[4,25,4,-7]],\"}\":[14,[5,25,7,24,8,23,9,21,9,19,8,17,7,16,6,14,6,12,8,10,-1,-1,7,24,8,22,8,20,7,18,6,17,5,15,5,13,6,11,10,9,6,7,5,5,5,3,6,1,7,0,8,-2,8,-4,7,-6,-1,-1,8,8,6,6,6,4,7,2,8,1,9,-1,9,-3,8,-5,7,-6,5,-7]],\"~\":[24,[3,6,3,8,4,11,6,12,8,12,10,11,14,8,16,7,18,7,20,8,21,10,-1,-1,3,8,4,10,6,11,8,11,10,10,14,7,16,6,18,6,20,7,21,10,21,12]]};\n},{\"../data/buffer\":51,\"../data/extent\":54,\"../data/pos_array\":57,\"../util/browser\":192,\"./vertex_array_object\":80,\"@mapbox/gl-matrix\":1}],70:[function(require,module,exports){\n\"use strict\";function drawFill(t,e,r,i){var a=t.gl;a.enable(a.STENCIL_TEST);var l=!r.paint[\"fill-pattern\"]&&r.isPaintValueFeatureConstant(\"fill-color\")&&r.isPaintValueFeatureConstant(\"fill-opacity\")&&1===r.paint[\"fill-color\"][3]&&1===r.paint[\"fill-opacity\"];t.isOpaquePass===l&&(t.setDepthSublayer(1),drawFillTiles(t,e,r,i,drawFillTile)),!t.isOpaquePass&&r.paint[\"fill-antialias\"]&&(t.lineWidth(2),t.depthMask(!1),t.setDepthSublayer(r.getPaintProperty(\"fill-outline-color\")?2:0),drawFillTiles(t,e,r,i,drawStrokeTile))}function drawFillTiles(t,e,r,i,a){for(var l=!0,n=0,o=i;n0?1/(1-r):1+r}function saturationFactor(r){return r>0?1-1/(1.001-r):-r}function getFadeValues(r,t,e,a){var i=e.paint[\"raster-fade-duration\"];if(r.sourceCache&&i>0){var o=Date.now(),n=(o-r.timeAdded)/i,u=t?(o-t.timeAdded)/i:-1,s=r.sourceCache.getSource(),c=a.coveringZoomLevel({tileSize:s.tileSize,roundZoom:s.roundZoom}),f=!t||Math.abs(t.coord.z-c)>Math.abs(r.coord.z-c),d=f&&r.refreshedUponExpiration?1:util.clamp(f?n:1-u,0,1);return r.refreshedUponExpiration&&n>=1&&(r.refreshedUponExpiration=!1),t?{opacity:1,mix:1-d}:{opacity:d,mix:0}}return{opacity:1,mix:0}}var util=require(\"../util/util\");module.exports=drawRaster;\n},{\"../util/util\":212}],74:[function(require,module,exports){\n\"use strict\";function drawSymbols(e,t,a,i){if(!e.isOpaquePass){var o=!(a.layout[\"text-allow-overlap\"]||a.layout[\"icon-allow-overlap\"]||a.layout[\"text-ignore-placement\"]||a.layout[\"icon-ignore-placement\"]),r=e.gl;o?r.disable(r.STENCIL_TEST):r.enable(r.STENCIL_TEST),e.setDepthSublayer(0),e.depthMask(!1),drawLayerSymbols(e,t,a,i,!1,a.paint[\"icon-translate\"],a.paint[\"icon-translate-anchor\"],a.layout[\"icon-rotation-alignment\"],a.layout[\"icon-rotation-alignment\"],a.layout[\"icon-size\"]),drawLayerSymbols(e,t,a,i,!0,a.paint[\"text-translate\"],a.paint[\"text-translate-anchor\"],a.layout[\"text-rotation-alignment\"],a.layout[\"text-pitch-alignment\"],a.layout[\"text-size\"]),t.map.showCollisionBoxes&&drawCollisionDebug(e,t,a,i)}}function drawLayerSymbols(e,t,a,i,o,r,n,l,s,u){if(o||!e.style.sprite||e.style.sprite.loaded()){var f=e.gl,m=\"map\"===l,p=\"map\"===s,c=p;c?f.enable(f.DEPTH_TEST):f.disable(f.DEPTH_TEST);for(var d,_,h=0,g=i;hthis.previousZoom;a--)r.changeTimes[a]=e,r.changeOpacities[a]=r.opacities[a];for(a=0;a<256;a++){var s=e-r.changeTimes[a],o=255*(i?s/i:1);a<=t?r.opacities[a]=r.changeOpacities[a]+o:r.opacities[a]=r.changeOpacities[a]-o}this.changed=!0,this.previousZoom=t},FrameHistory.prototype.bind=function(e){this.texture?(e.bindTexture(e.TEXTURE_2D,this.texture),this.changed&&(e.texSubImage2D(e.TEXTURE_2D,0,0,0,256,1,e.ALPHA,e.UNSIGNED_BYTE,this.array),this.changed=!1)):(this.texture=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.texture),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.NEAREST),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.NEAREST),e.texImage2D(e.TEXTURE_2D,0,e.ALPHA,256,1,0,e.ALPHA,e.UNSIGNED_BYTE,this.array))},module.exports=FrameHistory;\n},{}],76:[function(require,module,exports){\n\"use strict\";var util=require(\"../util/util\"),LineAtlas=function(t,i){this.width=t,this.height=i,this.nextRow=0,this.bytes=4,this.data=new Uint8Array(this.width*this.height*this.bytes),this.positions={}};LineAtlas.prototype.setSprite=function(t){this.sprite=t},LineAtlas.prototype.getDash=function(t,i){var e=t.join(\",\")+i;return this.positions[e]||(this.positions[e]=this.addDash(t,i)),this.positions[e]},LineAtlas.prototype.addDash=function(t,i){var e=this,h=i?7:0,s=2*h+1,a=128;if(this.nextRow+s>this.height)return util.warnOnce(\"LineAtlas out of space\"),null;for(var r=0,n=0;n0?r.pop():null},Painter.prototype.getViewportTexture=function(e,r){var t=this.reusableTextures.viewport;if(t)return t.width===e&&t.height===r?t:(this.gl.deleteTexture(t),void(this.reusableTextures.viewport=null))},Painter.prototype.lineWidth=function(e){this.gl.lineWidth(util.clamp(e,this.lineWidthRange[0],this.lineWidthRange[1]))},Painter.prototype.showOverdrawInspector=function(e){if(e||this._showOverdrawInspector){this._showOverdrawInspector=e;var r=this.gl;if(e){r.blendFunc(r.CONSTANT_COLOR,r.ONE);var t=8,i=1/t;r.blendColor(i,i,i,0),r.clearColor(0,0,0,1),r.clear(r.COLOR_BUFFER_BIT)}else r.blendFunc(r.ONE,r.ONE_MINUS_SRC_ALPHA)}},Painter.prototype.createProgram=function(e,r){var t=this.gl,i=t.createProgram(),a=shaders[e],s=\"#define MAPBOX_GL_JS\\n#define DEVICE_PIXEL_RATIO \"+browser.devicePixelRatio.toFixed(1)+\"\\n\";this._showOverdrawInspector&&(s+=\"#define OVERDRAW_INSPECTOR;\\n\");var o=r.applyPragmas(s+shaders.prelude.fragmentSource+a.fragmentSource,\"fragment\"),n=r.applyPragmas(s+shaders.prelude.vertexSource+a.vertexSource,\"vertex\"),l=t.createShader(t.FRAGMENT_SHADER);t.shaderSource(l,o),t.compileShader(l),t.attachShader(i,l);var h=t.createShader(t.VERTEX_SHADER);t.shaderSource(h,n),t.compileShader(h),t.attachShader(i,h),t.linkProgram(i);for(var u=t.getProgramParameter(i,t.ACTIVE_ATTRIBUTES),c={program:i,numAttributes:u},p=0;p>16,n>>16),o.uniform2f(i.u_pixel_coord_lower,65535&u,65535&n)};\n},{\"../source/pixels_to_tile_units\":87}],79:[function(require,module,exports){\n\"use strict\";var path=require(\"path\");module.exports={prelude:{fragmentSource:\"#ifdef GL_ES\\nprecision mediump float;\\n#else\\n\\n#if !defined(lowp)\\n#define lowp\\n#endif\\n\\n#if !defined(mediump)\\n#define mediump\\n#endif\\n\\n#if !defined(highp)\\n#define highp\\n#endif\\n\\n#endif\\n\",vertexSource:\"#ifdef GL_ES\\nprecision highp float;\\n#else\\n\\n#if !defined(lowp)\\n#define lowp\\n#endif\\n\\n#if !defined(mediump)\\n#define mediump\\n#endif\\n\\n#if !defined(highp)\\n#define highp\\n#endif\\n\\n#endif\\n\\nfloat evaluate_zoom_function_1(const vec4 values, const float t) {\\n if (t < 1.0) {\\n return mix(values[0], values[1], t);\\n } else if (t < 2.0) {\\n return mix(values[1], values[2], t - 1.0);\\n } else {\\n return mix(values[2], values[3], t - 2.0);\\n }\\n}\\nvec4 evaluate_zoom_function_4(const vec4 value0, const vec4 value1, const vec4 value2, const vec4 value3, const float t) {\\n if (t < 1.0) {\\n return mix(value0, value1, t);\\n } else if (t < 2.0) {\\n return mix(value1, value2, t - 1.0);\\n } else {\\n return mix(value2, value3, t - 2.0);\\n }\\n}\\n\\n\\n// To minimize the number of attributes needed in the mapbox-gl-native shaders,\\n// we encode a 4-component color into a pair of floats (i.e. a vec2) as follows:\\n// [ floor(color.r * 255) * 256 + color.g * 255,\\n// floor(color.b * 255) * 256 + color.g * 255 ]\\nvec4 decode_color(const vec2 encodedColor) {\\n float r = floor(encodedColor[0]/256.0)/255.0;\\n float g = (encodedColor[0] - r*256.0*255.0)/255.0;\\n float b = floor(encodedColor[1]/256.0)/255.0;\\n float a = (encodedColor[1] - b*256.0*255.0)/255.0;\\n return vec4(r, g, b, a);\\n}\\n\\n// Unpack a pair of paint values and interpolate between them.\\nfloat unpack_mix_vec2(const vec2 packedValue, const float t) {\\n return mix(packedValue[0], packedValue[1], t);\\n}\\n\\n// Unpack a pair of paint values and interpolate between them.\\nvec4 unpack_mix_vec4(const vec4 packedColors, const float t) {\\n vec4 minColor = decode_color(vec2(packedColors[0], packedColors[1]));\\n vec4 maxColor = decode_color(vec2(packedColors[2], packedColors[3]));\\n return mix(minColor, maxColor, t);\\n}\\n\\n// The offset depends on how many pixels are between the world origin and the edge of the tile:\\n// vec2 offset = mod(pixel_coord, size)\\n//\\n// At high zoom levels there are a ton of pixels between the world origin and the edge of the tile.\\n// The glsl spec only guarantees 16 bits of precision for highp floats. We need more than that.\\n//\\n// The pixel_coord is passed in as two 16 bit values:\\n// pixel_coord_upper = floor(pixel_coord / 2^16)\\n// pixel_coord_lower = mod(pixel_coord, 2^16)\\n//\\n// The offset is calculated in a series of steps that should preserve this precision:\\nvec2 get_pattern_pos(const vec2 pixel_coord_upper, const vec2 pixel_coord_lower,\\n const vec2 pattern_size, const float tile_units_to_pixels, const vec2 pos) {\\n\\n vec2 offset = mod(mod(mod(pixel_coord_upper, pattern_size) * 256.0, pattern_size) * 256.0 + pixel_coord_lower, pattern_size);\\n return (tile_units_to_pixels * pos + offset) / pattern_size;\\n}\\n\"},circle:{fragmentSource:\"#pragma mapbox: define lowp 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 lowp vec4 stroke_color\\n#pragma mapbox: define mediump float stroke_width\\n#pragma mapbox: define lowp float stroke_opacity\\n\\nvarying vec2 v_extrude;\\nvarying lowp float v_antialiasblur;\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp 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 lowp vec4 stroke_color\\n #pragma mapbox: initialize mediump float stroke_width\\n #pragma mapbox: initialize lowp float stroke_opacity\\n\\n float extrude_length = length(v_extrude);\\n float antialiased_blur = -max(blur, v_antialiasblur);\\n\\n float opacity_t = smoothstep(0.0, antialiased_blur, extrude_length - 1.0);\\n\\n float color_t = stroke_width < 0.01 ? 0.0 : smoothstep(\\n antialiased_blur,\\n 0.0,\\n extrude_length - radius / (radius + stroke_width)\\n );\\n\\n gl_FragColor = opacity_t * mix(color * opacity, stroke_color * stroke_opacity, color_t);\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform bool u_scale_with_map;\\nuniform vec2 u_extrude_scale;\\n\\nattribute vec2 a_pos;\\n\\n#pragma mapbox: define lowp 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 lowp vec4 stroke_color\\n#pragma mapbox: define mediump float stroke_width\\n#pragma mapbox: define lowp float stroke_opacity\\n\\nvarying vec2 v_extrude;\\nvarying lowp float v_antialiasblur;\\n\\nvoid main(void) {\\n #pragma mapbox: initialize lowp 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 lowp vec4 stroke_color\\n #pragma mapbox: initialize mediump float stroke_width\\n #pragma mapbox: initialize lowp float stroke_opacity\\n\\n // unencode the extrusion vector that we snuck into the a_pos vector\\n v_extrude = vec2(mod(a_pos, 2.0) * 2.0 - 1.0);\\n\\n vec2 extrude = v_extrude * (radius + stroke_width) * u_extrude_scale;\\n // multiply a_pos by 0.5, since we had it * 2 in order to sneak\\n // in extrusion data\\n gl_Position = u_matrix * vec4(floor(a_pos * 0.5), 0, 1);\\n\\n if (u_scale_with_map) {\\n gl_Position.xy += extrude;\\n } else {\\n gl_Position.xy += extrude * gl_Position.w;\\n }\\n\\n // This is a minimum blur distance that serves as a faux-antialiasing for\\n // the circle. since blur is a ratio of the circle's size and the intent is\\n // to keep the blur at roughly 1px, the two are inversely related.\\n v_antialiasblur = 1.0 / DEVICE_PIXEL_RATIO / (radius + stroke_width);\\n}\\n\"},collisionBox:{fragmentSource:\"uniform float u_zoom;\\nuniform float u_maxzoom;\\n\\nvarying float v_max_zoom;\\nvarying float v_placement_zoom;\\n\\nvoid main() {\\n\\n float alpha = 0.5;\\n\\n gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0) * alpha;\\n\\n if (v_placement_zoom > u_zoom) {\\n gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0) * alpha;\\n }\\n\\n if (u_zoom >= v_max_zoom) {\\n gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0) * alpha * 0.25;\\n }\\n\\n if (v_placement_zoom >= u_maxzoom) {\\n gl_FragColor = vec4(0.0, 0.0, 1.0, 1.0) * alpha * 0.2;\\n }\\n}\\n\",vertexSource:\"attribute vec2 a_pos;\\nattribute vec2 a_extrude;\\nattribute vec2 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform float u_scale;\\n\\nvarying float v_max_zoom;\\nvarying float v_placement_zoom;\\n\\nvoid main() {\\n gl_Position = u_matrix * vec4(a_pos + a_extrude / u_scale, 0.0, 1.0);\\n\\n v_max_zoom = a_data.x;\\n v_placement_zoom = a_data.y;\\n}\\n\"},debug:{fragmentSource:\"uniform lowp vec4 u_color;\\n\\nvoid main() {\\n gl_FragColor = u_color;\\n}\\n\",vertexSource:\"attribute vec2 a_pos;\\n\\nuniform mat4 u_matrix;\\n\\nvoid main() {\\n gl_Position = u_matrix * vec4(a_pos, step(32767.0, a_pos.x), 1);\\n}\\n\"},fill:{fragmentSource:\"#pragma mapbox: define lowp vec4 color\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp vec4 color\\n #pragma mapbox: initialize lowp float opacity\\n\\n gl_FragColor = color * opacity;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"attribute vec2 a_pos;\\n\\nuniform mat4 u_matrix;\\n\\n#pragma mapbox: define lowp vec4 color\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp vec4 color\\n #pragma mapbox: initialize lowp float opacity\\n\\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\\n}\\n\"},fillOutline:{fragmentSource:\"#pragma mapbox: define lowp vec4 outline_color\\n#pragma mapbox: define lowp float opacity\\n\\nvarying vec2 v_pos;\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp vec4 outline_color\\n #pragma mapbox: initialize lowp float opacity\\n\\n float dist = length(v_pos - gl_FragCoord.xy);\\n float alpha = smoothstep(1.0, 0.0, dist);\\n gl_FragColor = outline_color * (alpha * opacity);\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"attribute vec2 a_pos;\\n\\nuniform mat4 u_matrix;\\nuniform vec2 u_world;\\n\\nvarying vec2 v_pos;\\n\\n#pragma mapbox: define lowp vec4 outline_color\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp vec4 outline_color\\n #pragma mapbox: initialize lowp float opacity\\n\\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\\n v_pos = (gl_Position.xy / gl_Position.w + 1.0) / 2.0 * u_world;\\n}\\n\"},fillOutlinePattern:{fragmentSource:\"uniform vec2 u_pattern_tl_a;\\nuniform vec2 u_pattern_br_a;\\nuniform vec2 u_pattern_tl_b;\\nuniform vec2 u_pattern_br_b;\\nuniform float u_mix;\\n\\nuniform sampler2D u_image;\\n\\nvarying vec2 v_pos_a;\\nvarying vec2 v_pos_b;\\nvarying vec2 v_pos;\\n\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float opacity\\n\\n vec2 imagecoord = mod(v_pos_a, 1.0);\\n vec2 pos = mix(u_pattern_tl_a, u_pattern_br_a, imagecoord);\\n vec4 color1 = texture2D(u_image, pos);\\n\\n vec2 imagecoord_b = mod(v_pos_b, 1.0);\\n vec2 pos2 = mix(u_pattern_tl_b, u_pattern_br_b, imagecoord_b);\\n vec4 color2 = texture2D(u_image, pos2);\\n\\n // find distance to outline for alpha interpolation\\n\\n float dist = length(v_pos - gl_FragCoord.xy);\\n float alpha = smoothstep(1.0, 0.0, dist);\\n\\n\\n gl_FragColor = mix(color1, color2, u_mix) * alpha * opacity;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform vec2 u_world;\\nuniform vec2 u_pattern_size_a;\\nuniform vec2 u_pattern_size_b;\\nuniform vec2 u_pixel_coord_upper;\\nuniform vec2 u_pixel_coord_lower;\\nuniform float u_scale_a;\\nuniform float u_scale_b;\\nuniform float u_tile_units_to_pixels;\\n\\nattribute vec2 a_pos;\\n\\nvarying vec2 v_pos_a;\\nvarying vec2 v_pos_b;\\nvarying vec2 v_pos;\\n\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float opacity\\n\\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\\n\\n 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);\\n 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);\\n\\n v_pos = (gl_Position.xy / gl_Position.w + 1.0) / 2.0 * u_world;\\n}\\n\"},fillPattern:{fragmentSource:\"uniform vec2 u_pattern_tl_a;\\nuniform vec2 u_pattern_br_a;\\nuniform vec2 u_pattern_tl_b;\\nuniform vec2 u_pattern_br_b;\\nuniform float u_mix;\\n\\nuniform sampler2D u_image;\\n\\nvarying vec2 v_pos_a;\\nvarying vec2 v_pos_b;\\n\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float opacity\\n\\n vec2 imagecoord = mod(v_pos_a, 1.0);\\n vec2 pos = mix(u_pattern_tl_a, u_pattern_br_a, imagecoord);\\n vec4 color1 = texture2D(u_image, pos);\\n\\n vec2 imagecoord_b = mod(v_pos_b, 1.0);\\n vec2 pos2 = mix(u_pattern_tl_b, u_pattern_br_b, imagecoord_b);\\n vec4 color2 = texture2D(u_image, pos2);\\n\\n gl_FragColor = mix(color1, color2, u_mix) * opacity;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform vec2 u_pattern_size_a;\\nuniform vec2 u_pattern_size_b;\\nuniform vec2 u_pixel_coord_upper;\\nuniform vec2 u_pixel_coord_lower;\\nuniform float u_scale_a;\\nuniform float u_scale_b;\\nuniform float u_tile_units_to_pixels;\\n\\nattribute vec2 a_pos;\\n\\nvarying vec2 v_pos_a;\\nvarying vec2 v_pos_b;\\n\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float opacity\\n\\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\\n\\n 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);\\n 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);\\n}\\n\"},fillExtrusion:{fragmentSource:\"varying vec4 v_color;\\n#pragma mapbox: define lowp float base\\n#pragma mapbox: define lowp float height\\n#pragma mapbox: define lowp vec4 color\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float base\\n #pragma mapbox: initialize lowp float height\\n #pragma mapbox: initialize lowp vec4 color\\n\\n gl_FragColor = v_color;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform vec3 u_lightcolor;\\nuniform lowp vec3 u_lightpos;\\nuniform lowp float u_lightintensity;\\n\\nattribute vec2 a_pos;\\nattribute vec3 a_normal;\\nattribute float a_edgedistance;\\n\\nvarying vec4 v_color;\\n\\n#pragma mapbox: define lowp float base\\n#pragma mapbox: define lowp float height\\n\\n#pragma mapbox: define lowp vec4 color\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float base\\n #pragma mapbox: initialize lowp float height\\n #pragma mapbox: initialize lowp vec4 color\\n\\n float ed = a_edgedistance; // use each attrib in order to not trip a VAO assert\\n float t = mod(a_normal.x, 2.0);\\n\\n gl_Position = u_matrix * vec4(a_pos, t > 0.0 ? height : base, 1);\\n\\n // Relative luminance (how dark/bright is the surface color?)\\n float colorvalue = color.r * 0.2126 + color.g * 0.7152 + color.b * 0.0722;\\n\\n v_color = vec4(0.0, 0.0, 0.0, 1.0);\\n\\n // Add slight ambient lighting so no extrusions are totally black\\n vec4 ambientlight = vec4(0.03, 0.03, 0.03, 1.0);\\n color += ambientlight;\\n\\n // Calculate cos(theta), where theta is the angle between surface normal and diffuse light ray\\n float directional = clamp(dot(a_normal / 16384.0, u_lightpos), 0.0, 1.0);\\n\\n // Adjust directional so that\\n // the range of values for highlight/shading is narrower\\n // with lower light intensity\\n // and with lighter/brighter surface colors\\n directional = mix((1.0 - u_lightintensity), max((1.0 - colorvalue + u_lightintensity), 1.0), directional);\\n\\n // Add gradient along z axis of side surfaces\\n if (a_normal.y != 0.0) {\\n directional *= clamp((t + base) * pow(height / 150.0, 0.5), mix(0.7, 0.98, 1.0 - u_lightintensity), 1.0);\\n }\\n\\n // Assign final color based on surface + ambient light color, diffuse light directional, and light color\\n // with lower bounds adjusted to hue of light\\n // so that shading is tinted with the complementary (opposite) color to the light color\\n v_color.r += clamp(color.r * directional * u_lightcolor.r, mix(0.0, 0.3, 1.0 - u_lightcolor.r), 1.0);\\n v_color.g += clamp(color.g * directional * u_lightcolor.g, mix(0.0, 0.3, 1.0 - u_lightcolor.g), 1.0);\\n v_color.b += clamp(color.b * directional * u_lightcolor.b, mix(0.0, 0.3, 1.0 - u_lightcolor.b), 1.0);\\n}\\n\"},fillExtrusionPattern:{fragmentSource:\"uniform vec2 u_pattern_tl_a;\\nuniform vec2 u_pattern_br_a;\\nuniform vec2 u_pattern_tl_b;\\nuniform vec2 u_pattern_br_b;\\nuniform float u_mix;\\n\\nuniform sampler2D u_image;\\n\\nvarying vec2 v_pos_a;\\nvarying vec2 v_pos_b;\\nvarying vec4 v_lighting;\\n\\n#pragma mapbox: define lowp float base\\n#pragma mapbox: define lowp float height\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float base\\n #pragma mapbox: initialize lowp float height\\n\\n vec2 imagecoord = mod(v_pos_a, 1.0);\\n vec2 pos = mix(u_pattern_tl_a, u_pattern_br_a, imagecoord);\\n vec4 color1 = texture2D(u_image, pos);\\n\\n vec2 imagecoord_b = mod(v_pos_b, 1.0);\\n vec2 pos2 = mix(u_pattern_tl_b, u_pattern_br_b, imagecoord_b);\\n vec4 color2 = texture2D(u_image, pos2);\\n\\n vec4 mixedColor = mix(color1, color2, u_mix);\\n\\n gl_FragColor = mixedColor * v_lighting;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform vec2 u_pattern_size_a;\\nuniform vec2 u_pattern_size_b;\\nuniform vec2 u_pixel_coord_upper;\\nuniform vec2 u_pixel_coord_lower;\\nuniform float u_scale_a;\\nuniform float u_scale_b;\\nuniform float u_tile_units_to_pixels;\\nuniform float u_height_factor;\\n\\nuniform vec3 u_lightcolor;\\nuniform lowp vec3 u_lightpos;\\nuniform lowp float u_lightintensity;\\n\\nattribute vec2 a_pos;\\nattribute vec3 a_normal;\\nattribute float a_edgedistance;\\n\\nvarying vec2 v_pos_a;\\nvarying vec2 v_pos_b;\\nvarying vec4 v_lighting;\\nvarying float v_directional;\\n\\n#pragma mapbox: define lowp float base\\n#pragma mapbox: define lowp float height\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float base\\n #pragma mapbox: initialize lowp float height\\n\\n float t = mod(a_normal.x, 2.0);\\n float z = t > 0.0 ? height : base;\\n\\n gl_Position = u_matrix * vec4(a_pos, z, 1);\\n\\n vec2 pos = a_normal.x == 1.0 && a_normal.y == 0.0 && a_normal.z == 16384.0\\n ? a_pos // extrusion top\\n : vec2(a_edgedistance, z * u_height_factor); // extrusion side\\n\\n 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, pos);\\n 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, pos);\\n\\n v_lighting = vec4(0.0, 0.0, 0.0, 1.0);\\n float directional = clamp(dot(a_normal / 16383.0, u_lightpos), 0.0, 1.0);\\n directional = mix((1.0 - u_lightintensity), max((0.5 + u_lightintensity), 1.0), directional);\\n\\n if (a_normal.y != 0.0) {\\n directional *= clamp((t + base) * pow(height / 150.0, 0.5), mix(0.7, 0.98, 1.0 - u_lightintensity), 1.0);\\n }\\n\\n v_lighting.rgb += clamp(directional * u_lightcolor, mix(vec3(0.0), vec3(0.3), 1.0 - u_lightcolor), vec3(1.0));\\n}\\n\"},extrusionTexture:{fragmentSource:\"uniform sampler2D u_texture;\\nuniform float u_opacity;\\n\\nvarying vec2 v_pos;\\n\\nvoid main() {\\n gl_FragColor = texture2D(u_texture, v_pos) * u_opacity;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(0.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform int u_xdim;\\nuniform int u_ydim;\\nattribute vec2 a_pos;\\nvarying vec2 v_pos;\\n\\nvoid main() {\\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\\n\\n v_pos.x = a_pos.x / float(u_xdim);\\n v_pos.y = 1.0 - a_pos.y / float(u_ydim);\\n}\\n\"},line:{fragmentSource:\"#pragma mapbox: define lowp vec4 color\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n\\nvarying vec2 v_width2;\\nvarying vec2 v_normal;\\nvarying float v_gamma_scale;\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp vec4 color\\n #pragma mapbox: initialize lowp float blur\\n #pragma mapbox: initialize lowp float opacity\\n\\n // Calculate the distance of the pixel from the line in pixels.\\n float dist = length(v_normal) * v_width2.s;\\n\\n // Calculate the antialiasing fade factor. This is either when fading in\\n // the line in case of an offset line (v_width2.t) or when fading out\\n // (v_width2.s)\\n float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\\n float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\\n\\n gl_FragColor = color * (alpha * opacity);\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"\\n\\n// the distance over which the line edge fades out.\\n// Retina devices need a smaller distance to avoid aliasing.\\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\\n\\n// floor(127 / 2) == 63.0\\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\\n// there are also \\\"special\\\" normals that have a bigger length (of up to 126 in\\n// this case).\\n// #define scale 63.0\\n#define scale 0.015873016\\n\\nattribute vec2 a_pos;\\nattribute vec4 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform mediump float u_ratio;\\nuniform mediump float u_width;\\nuniform vec2 u_gl_units_to_pixels;\\n\\nvarying vec2 v_normal;\\nvarying vec2 v_width2;\\nvarying float v_gamma_scale;\\n\\n#pragma mapbox: define lowp 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\\nvoid main() {\\n #pragma mapbox: initialize lowp 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\\n vec2 a_extrude = a_data.xy - 128.0;\\n float a_direction = mod(a_data.z, 4.0) - 1.0;\\n\\n // We store the texture normals in the most insignificant bit\\n // transform y so that 0 => -1 and 1 => 1\\n // In the texture normal, x is 0 if the normal points straight up/down and 1 if it's a round cap\\n // y is 1 if the normal points up, and -1 if it points down\\n mediump vec2 normal = mod(a_pos, 2.0);\\n normal.y = sign(normal.y - 0.5);\\n v_normal = normal;\\n\\n\\n // these transformations used to be applied in the JS and native code bases. \\n // moved them into the shader for clarity and simplicity. \\n gapwidth = gapwidth / 2.0;\\n float width = u_width / 2.0;\\n offset = -1.0 * offset; \\n\\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\\n float outset = gapwidth + width * (gapwidth > 0.0 ? 2.0 : 1.0) + ANTIALIASING;\\n\\n // Scale the extrusion vector down to a normal and then up by the line width\\n // of this vertex.\\n mediump vec2 dist = outset * a_extrude * scale;\\n\\n // Calculate the offset when drawing a line that is to the side of the actual line.\\n // We do this by creating a vector that points towards the extrude, but rotate\\n // it when we're drawing round end points (a_direction = -1 or 1) since their\\n // extrude vector points in another direction.\\n mediump float u = 0.5 * a_direction;\\n mediump float t = 1.0 - abs(u);\\n mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\\n\\n // Remove the texture normal bit to get the position\\n vec2 pos = floor(a_pos * 0.5);\\n\\n vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\\n gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\\n\\n // calculate how much the perspective view squishes or stretches the extrude\\n float extrude_length_without_perspective = length(dist);\\n float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\\n v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\\n\\n v_width2 = vec2(outset, inset);\\n}\\n\"},linePattern:{fragmentSource:\"uniform vec2 u_pattern_size_a;\\nuniform vec2 u_pattern_size_b;\\nuniform vec2 u_pattern_tl_a;\\nuniform vec2 u_pattern_br_a;\\nuniform vec2 u_pattern_tl_b;\\nuniform vec2 u_pattern_br_b;\\nuniform float u_fade;\\n\\nuniform sampler2D u_image;\\n\\nvarying vec2 v_normal;\\nvarying vec2 v_width2;\\nvarying float v_linesofar;\\nvarying float v_gamma_scale;\\n\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float blur\\n #pragma mapbox: initialize lowp float opacity\\n\\n // Calculate the distance of the pixel from the line in pixels.\\n float dist = length(v_normal) * v_width2.s;\\n\\n // Calculate the antialiasing fade factor. This is either when fading in\\n // the line in case of an offset line (v_width2.t) or when fading out\\n // (v_width2.s)\\n float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\\n float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\\n\\n float x_a = mod(v_linesofar / u_pattern_size_a.x, 1.0);\\n float x_b = mod(v_linesofar / u_pattern_size_b.x, 1.0);\\n float y_a = 0.5 + (v_normal.y * v_width2.s / u_pattern_size_a.y);\\n float y_b = 0.5 + (v_normal.y * v_width2.s / u_pattern_size_b.y);\\n vec2 pos_a = mix(u_pattern_tl_a, u_pattern_br_a, vec2(x_a, y_a));\\n vec2 pos_b = mix(u_pattern_tl_b, u_pattern_br_b, vec2(x_b, y_b));\\n\\n vec4 color = mix(texture2D(u_image, pos_a), texture2D(u_image, pos_b), u_fade);\\n\\n gl_FragColor = color * alpha * opacity;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"// floor(127 / 2) == 63.0\\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\\n// there are also \\\"special\\\" normals that have a bigger length (of up to 126 in\\n// this case).\\n// #define scale 63.0\\n#define scale 0.015873016\\n\\n// We scale the distance before adding it to the buffers so that we can store\\n// long distances for long segments. Use this value to unscale the distance.\\n#define LINE_DISTANCE_SCALE 2.0\\n\\n// the distance over which the line edge fades out.\\n// Retina devices need a smaller distance to avoid aliasing.\\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\\n\\nattribute vec2 a_pos;\\nattribute vec4 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform mediump float u_ratio;\\nuniform mediump float u_width;\\nuniform vec2 u_gl_units_to_pixels;\\n\\nvarying vec2 v_normal;\\nvarying vec2 v_width2;\\nvarying float v_linesofar;\\nvarying float v_gamma_scale;\\n\\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\\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\\n vec2 a_extrude = a_data.xy - 128.0;\\n float a_direction = mod(a_data.z, 4.0) - 1.0;\\n float a_linesofar = (floor(a_data.z / 4.0) + a_data.w * 64.0) * LINE_DISTANCE_SCALE;\\n\\n // We store the texture normals in the most insignificant bit\\n // transform y so that 0 => -1 and 1 => 1\\n // In the texture normal, x is 0 if the normal points straight up/down and 1 if it's a round cap\\n // y is 1 if the normal points up, and -1 if it points down\\n mediump vec2 normal = mod(a_pos, 2.0);\\n normal.y = sign(normal.y - 0.5);\\n v_normal = normal;\\n\\n // these transformations used to be applied in the JS and native code bases. \\n // moved them into the shader for clarity and simplicity. \\n gapwidth = gapwidth / 2.0;\\n float width = u_width / 2.0;\\n offset = -1.0 * offset; \\n\\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\\n float outset = gapwidth + width * (gapwidth > 0.0 ? 2.0 : 1.0) + ANTIALIASING;\\n\\n // Scale the extrusion vector down to a normal and then up by the line width\\n // of this vertex.\\n mediump vec2 dist = outset * a_extrude * scale;\\n\\n // Calculate the offset when drawing a line that is to the side of the actual line.\\n // We do this by creating a vector that points towards the extrude, but rotate\\n // it when we're drawing round end points (a_direction = -1 or 1) since their\\n // extrude vector points in another direction.\\n mediump float u = 0.5 * a_direction;\\n mediump float t = 1.0 - abs(u);\\n mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\\n\\n // Remove the texture normal bit to get the position\\n vec2 pos = floor(a_pos * 0.5);\\n\\n vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\\n gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\\n\\n // calculate how much the perspective view squishes or stretches the extrude\\n float extrude_length_without_perspective = length(dist);\\n float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\\n v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\\n\\n v_linesofar = a_linesofar;\\n v_width2 = vec2(outset, inset);\\n}\\n\"},lineSDF:{fragmentSource:\"\\nuniform sampler2D u_image;\\nuniform float u_sdfgamma;\\nuniform float u_mix;\\n\\nvarying vec2 v_normal;\\nvarying vec2 v_width2;\\nvarying vec2 v_tex_a;\\nvarying vec2 v_tex_b;\\nvarying float v_gamma_scale;\\n\\n#pragma mapbox: define lowp vec4 color\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp vec4 color\\n #pragma mapbox: initialize lowp float blur\\n #pragma mapbox: initialize lowp float opacity\\n\\n // Calculate the distance of the pixel from the line in pixels.\\n float dist = length(v_normal) * v_width2.s;\\n\\n // Calculate the antialiasing fade factor. This is either when fading in\\n // the line in case of an offset line (v_width2.t) or when fading out\\n // (v_width2.s)\\n float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\\n float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\\n\\n float sdfdist_a = texture2D(u_image, v_tex_a).a;\\n float sdfdist_b = texture2D(u_image, v_tex_b).a;\\n float sdfdist = mix(sdfdist_a, sdfdist_b, u_mix);\\n alpha *= smoothstep(0.5 - u_sdfgamma, 0.5 + u_sdfgamma, sdfdist);\\n\\n gl_FragColor = color * (alpha * opacity);\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"// floor(127 / 2) == 63.0\\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\\n// there are also \\\"special\\\" normals that have a bigger length (of up to 126 in\\n// this case).\\n// #define scale 63.0\\n#define scale 0.015873016\\n\\n// We scale the distance before adding it to the buffers so that we can store\\n// long distances for long segments. Use this value to unscale the distance.\\n#define LINE_DISTANCE_SCALE 2.0\\n\\n// the distance over which the line edge fades out.\\n// Retina devices need a smaller distance to avoid aliasing.\\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\\n\\nattribute vec2 a_pos;\\nattribute vec4 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform mediump float u_ratio;\\nuniform vec2 u_patternscale_a;\\nuniform float u_tex_y_a;\\nuniform vec2 u_patternscale_b;\\nuniform float u_tex_y_b;\\nuniform vec2 u_gl_units_to_pixels;\\nuniform mediump float u_width;\\n\\nvarying vec2 v_normal;\\nvarying vec2 v_width2;\\nvarying vec2 v_tex_a;\\nvarying vec2 v_tex_b;\\nvarying float v_gamma_scale;\\n\\n#pragma mapbox: define lowp 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\\nvoid main() {\\n #pragma mapbox: initialize lowp 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\\n vec2 a_extrude = a_data.xy - 128.0;\\n float a_direction = mod(a_data.z, 4.0) - 1.0;\\n float a_linesofar = (floor(a_data.z / 4.0) + a_data.w * 64.0) * LINE_DISTANCE_SCALE;\\n\\n // We store the texture normals in the most insignificant bit\\n // transform y so that 0 => -1 and 1 => 1\\n // In the texture normal, x is 0 if the normal points straight up/down and 1 if it's a round cap\\n // y is 1 if the normal points up, and -1 if it points down\\n mediump vec2 normal = mod(a_pos, 2.0);\\n normal.y = sign(normal.y - 0.5);\\n v_normal = normal;\\n\\n // these transformations used to be applied in the JS and native code bases. \\n // moved them into the shader for clarity and simplicity. \\n gapwidth = gapwidth / 2.0;\\n float width = u_width / 2.0;\\n offset = -1.0 * offset;\\n \\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\\n float outset = gapwidth + width * (gapwidth > 0.0 ? 2.0 : 1.0) + ANTIALIASING;\\n\\n // Scale the extrusion vector down to a normal and then up by the line width\\n // of this vertex.\\n mediump vec2 dist =outset * a_extrude * scale;\\n\\n // Calculate the offset when drawing a line that is to the side of the actual line.\\n // We do this by creating a vector that points towards the extrude, but rotate\\n // it when we're drawing round end points (a_direction = -1 or 1) since their\\n // extrude vector points in another direction.\\n mediump float u = 0.5 * a_direction;\\n mediump float t = 1.0 - abs(u);\\n mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\\n\\n // Remove the texture normal bit to get the position\\n vec2 pos = floor(a_pos * 0.5);\\n\\n vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\\n gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\\n\\n // calculate how much the perspective view squishes or stretches the extrude\\n float extrude_length_without_perspective = length(dist);\\n float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\\n v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\\n\\n v_tex_a = vec2(a_linesofar * u_patternscale_a.x, normal.y * u_patternscale_a.y + u_tex_y_a);\\n v_tex_b = vec2(a_linesofar * u_patternscale_b.x, normal.y * u_patternscale_b.y + u_tex_y_b);\\n\\n v_width2 = vec2(outset, inset);\\n}\\n\"\n},raster:{fragmentSource:\"uniform float u_fade_t;\\nuniform float u_opacity;\\nuniform sampler2D u_image0;\\nuniform sampler2D u_image1;\\nvarying vec2 v_pos0;\\nvarying vec2 v_pos1;\\n\\nuniform float u_brightness_low;\\nuniform float u_brightness_high;\\n\\nuniform float u_saturation_factor;\\nuniform float u_contrast_factor;\\nuniform vec3 u_spin_weights;\\n\\nvoid main() {\\n\\n // read and cross-fade colors from the main and parent tiles\\n vec4 color0 = texture2D(u_image0, v_pos0);\\n vec4 color1 = texture2D(u_image1, v_pos1);\\n vec4 color = mix(color0, color1, u_fade_t);\\n color.a *= u_opacity;\\n vec3 rgb = color.rgb;\\n\\n // spin\\n rgb = vec3(\\n dot(rgb, u_spin_weights.xyz),\\n dot(rgb, u_spin_weights.zxy),\\n dot(rgb, u_spin_weights.yzx));\\n\\n // saturation\\n float average = (color.r + color.g + color.b) / 3.0;\\n rgb += (average - rgb) * u_saturation_factor;\\n\\n // contrast\\n rgb = (rgb - 0.5) * u_contrast_factor + 0.5;\\n\\n // brightness\\n vec3 u_high_vec = vec3(u_brightness_low, u_brightness_low, u_brightness_low);\\n vec3 u_low_vec = vec3(u_brightness_high, u_brightness_high, u_brightness_high);\\n\\n gl_FragColor = vec4(mix(u_high_vec, u_low_vec, rgb) * color.a, color.a);\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform vec2 u_tl_parent;\\nuniform float u_scale_parent;\\nuniform float u_buffer_scale;\\n\\nattribute vec2 a_pos;\\nattribute vec2 a_texture_pos;\\n\\nvarying vec2 v_pos0;\\nvarying vec2 v_pos1;\\n\\nvoid main() {\\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\\n v_pos0 = (((a_texture_pos / 32767.0) - 0.5) / u_buffer_scale ) + 0.5;\\n v_pos1 = (v_pos0 * u_scale_parent) + u_tl_parent;\\n}\\n\"},symbolIcon:{fragmentSource:\"uniform sampler2D u_texture;\\nuniform sampler2D u_fadetexture;\\n\\n#pragma mapbox: define lowp float opacity\\n\\nvarying vec2 v_tex;\\nvarying vec2 v_fade_tex;\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float opacity\\n\\n lowp float alpha = texture2D(u_fadetexture, v_fade_tex).a * opacity;\\n gl_FragColor = texture2D(u_texture, v_tex) * alpha;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"\\nattribute vec4 a_pos_offset;\\nattribute vec2 a_texture_pos;\\nattribute vec4 a_data;\\n\\n#pragma mapbox: define lowp float opacity\\n\\n// matrix is for the vertex position.\\nuniform mat4 u_matrix;\\n\\nuniform mediump float u_zoom;\\nuniform bool u_rotate_with_map;\\nuniform vec2 u_extrude_scale;\\n\\nuniform vec2 u_texsize;\\n\\nvarying vec2 v_tex;\\nvarying vec2 v_fade_tex;\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float opacity\\n\\n vec2 a_pos = a_pos_offset.xy;\\n vec2 a_offset = a_pos_offset.zw;\\n\\n vec2 a_tex = a_texture_pos.xy;\\n mediump float a_labelminzoom = a_data[0];\\n mediump vec2 a_zoom = a_data.pq;\\n mediump float a_minzoom = a_zoom[0];\\n mediump float a_maxzoom = a_zoom[1];\\n\\n // u_zoom is the current zoom level adjusted for the change in font size\\n mediump float z = 2.0 - step(a_minzoom, u_zoom) - (1.0 - step(a_maxzoom, u_zoom));\\n\\n vec2 extrude = u_extrude_scale * (a_offset / 64.0);\\n if (u_rotate_with_map) {\\n gl_Position = u_matrix * vec4(a_pos + extrude, 0, 1);\\n gl_Position.z += z * gl_Position.w;\\n } else {\\n gl_Position = u_matrix * vec4(a_pos, 0, 1) + vec4(extrude, 0, 0);\\n }\\n\\n v_tex = a_tex / u_texsize;\\n v_fade_tex = vec2(a_labelminzoom / 255.0, 0.0);\\n}\\n\"},symbolSDF:{fragmentSource:\"#define SDF_PX 8.0\\n#define EDGE_GAMMA 0.105/DEVICE_PIXEL_RATIO\\n\\nuniform bool u_is_halo;\\n#pragma mapbox: define lowp vec4 fill_color\\n#pragma mapbox: define lowp 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\\n\\nuniform sampler2D u_texture;\\nuniform sampler2D u_fadetexture;\\nuniform lowp float u_font_scale;\\nuniform highp float u_gamma_scale;\\n\\nvarying vec2 v_tex;\\nvarying vec2 v_fade_tex;\\nvarying float v_gamma_scale;\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp vec4 fill_color\\n #pragma mapbox: initialize lowp 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\\n\\n lowp vec4 color = fill_color;\\n highp float gamma = EDGE_GAMMA / u_gamma_scale;\\n lowp float buff = (256.0 - 64.0) / 256.0;\\n if (u_is_halo) {\\n color = halo_color;\\n gamma = (halo_blur * 1.19 / SDF_PX + EDGE_GAMMA) / u_gamma_scale;\\n buff = (6.0 - halo_width / u_font_scale) / SDF_PX;\\n }\\n\\n lowp float dist = texture2D(u_texture, v_tex).a;\\n lowp float fade_alpha = texture2D(u_fadetexture, v_fade_tex).a;\\n highp float gamma_scaled = gamma * v_gamma_scale;\\n highp float alpha = smoothstep(buff - gamma_scaled, buff + gamma_scaled, dist) * fade_alpha;\\n\\n gl_FragColor = color * (alpha * opacity);\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"const float PI = 3.141592653589793;\\n\\nattribute vec4 a_pos_offset;\\nattribute vec2 a_texture_pos;\\nattribute vec4 a_data;\\n\\n#pragma mapbox: define lowp vec4 fill_color\\n#pragma mapbox: define lowp 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\\n\\n// matrix is for the vertex position.\\nuniform mat4 u_matrix;\\n\\nuniform mediump float u_zoom;\\nuniform bool u_rotate_with_map;\\nuniform bool u_pitch_with_map;\\nuniform mediump float u_pitch;\\nuniform mediump float u_bearing;\\nuniform mediump float u_aspect_ratio;\\nuniform vec2 u_extrude_scale;\\n\\nuniform vec2 u_texsize;\\n\\nvarying vec2 v_tex;\\nvarying vec2 v_fade_tex;\\nvarying float v_gamma_scale;\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp vec4 fill_color\\n #pragma mapbox: initialize lowp 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\\n\\n vec2 a_pos = a_pos_offset.xy;\\n vec2 a_offset = a_pos_offset.zw;\\n\\n vec2 a_tex = a_texture_pos.xy;\\n mediump float a_labelminzoom = a_data[0];\\n mediump vec2 a_zoom = a_data.pq;\\n mediump float a_minzoom = a_zoom[0];\\n mediump float a_maxzoom = a_zoom[1];\\n\\n // u_zoom is the current zoom level adjusted for the change in font size\\n mediump float z = 2.0 - step(a_minzoom, u_zoom) - (1.0 - step(a_maxzoom, u_zoom));\\n\\n // pitch-alignment: map\\n // rotation-alignment: map | viewport\\n if (u_pitch_with_map) {\\n lowp float angle = u_rotate_with_map ? (a_data[1] / 256.0 * 2.0 * PI) : u_bearing;\\n lowp float asin = sin(angle);\\n lowp float acos = cos(angle);\\n mat2 RotationMatrix = mat2(acos, asin, -1.0 * asin, acos);\\n vec2 offset = RotationMatrix * a_offset;\\n vec2 extrude = u_extrude_scale * (offset / 64.0);\\n gl_Position = u_matrix * vec4(a_pos + extrude, 0, 1);\\n gl_Position.z += z * gl_Position.w;\\n // pitch-alignment: viewport\\n // rotation-alignment: map\\n } else if (u_rotate_with_map) {\\n // foreshortening factor to apply on pitched maps\\n // as a label goes from horizontal <=> vertical in angle\\n // it goes from 0% foreshortening to up to around 70% foreshortening\\n lowp float pitchfactor = 1.0 - cos(u_pitch * sin(u_pitch * 0.75));\\n\\n lowp float lineangle = a_data[1] / 256.0 * 2.0 * PI;\\n\\n // use the lineangle to position points a,b along the line\\n // project the points and calculate the label angle in projected space\\n // this calculation allows labels to be rendered unskewed on pitched maps\\n vec4 a = u_matrix * vec4(a_pos, 0, 1);\\n vec4 b = u_matrix * vec4(a_pos + vec2(cos(lineangle),sin(lineangle)), 0, 1);\\n lowp float angle = atan((b[1]/b[3] - a[1]/a[3])/u_aspect_ratio, b[0]/b[3] - a[0]/a[3]);\\n lowp float asin = sin(angle);\\n lowp float acos = cos(angle);\\n mat2 RotationMatrix = mat2(acos, -1.0 * asin, asin, acos);\\n\\n vec2 offset = RotationMatrix * (vec2((1.0-pitchfactor)+(pitchfactor*cos(angle*2.0)), 1.0) * a_offset);\\n vec2 extrude = u_extrude_scale * (offset / 64.0);\\n gl_Position = u_matrix * vec4(a_pos, 0, 1) + vec4(extrude, 0, 0);\\n gl_Position.z += z * gl_Position.w;\\n // pitch-alignment: viewport\\n // rotation-alignment: viewport\\n } else {\\n vec2 extrude = u_extrude_scale * (a_offset / 64.0);\\n gl_Position = u_matrix * vec4(a_pos, 0, 1) + vec4(extrude, 0, 0);\\n }\\n\\n v_gamma_scale = gl_Position.w;\\n\\n v_tex = a_tex / u_texsize;\\n v_fade_tex = vec2(a_labelminzoom / 255.0, 0.0);\\n}\\n\"}};\n},{\"path\":23}],80:[function(require,module,exports){\n\"use strict\";var VertexArrayObject=function(){this.boundProgram=null,this.boundVertexBuffer=null,this.boundVertexBuffer2=null,this.boundElementBuffer=null,this.boundVertexOffset=null,this.vao=null};VertexArrayObject.prototype.bind=function(e,t,r,i,n,o){void 0===e.extVertexArrayObject&&(e.extVertexArrayObject=e.getExtension(\"OES_vertex_array_object\"));var s=!this.vao||this.boundProgram!==t||this.boundVertexBuffer!==r||this.boundVertexBuffer2!==n||this.boundElementBuffer!==i||this.boundVertexOffset!==o;!e.extVertexArrayObject||s?(this.freshBind(e,t,r,i,n,o),this.gl=e):e.extVertexArrayObject.bindVertexArrayOES(this.vao)},VertexArrayObject.prototype.freshBind=function(e,t,r,i,n,o){var s,u=t.numAttributes;if(e.extVertexArrayObject)this.vao&&this.destroy(),this.vao=e.extVertexArrayObject.createVertexArrayOES(),e.extVertexArrayObject.bindVertexArrayOES(this.vao),s=0,this.boundProgram=t,this.boundVertexBuffer=r,this.boundVertexBuffer2=n,this.boundElementBuffer=i,this.boundVertexOffset=o;else{s=e.currentNumAttributes||0;for(var b=u;bthis.maxzoom?Math.pow(2,t.coord.z-this.maxzoom):1,r={type:this.type,uid:t.uid,coord:t.coord,zoom:t.coord.z,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,overscaling:i,angle:this.map.transform.angle,pitch:this.map.transform.pitch,showCollisionBoxes:this.map.showCollisionBoxes};t.workerID=this.dispatcher.send(\"loadTile\",r,function(i,r){if(t.unloadVectorData(),!t.aborted)return i?e(i):(t.loadVectorData(r,o.map.painter),t.redoWhenDone&&(t.redoWhenDone=!1,t.redoPlacement(o)),e(null))},this.workerID)},e.prototype.abortTile=function(t){t.aborted=!0},e.prototype.unloadTile=function(t){t.unloadVectorData(),this.dispatcher.send(\"removeTile\",{uid:t.uid,type:this.type,source:this.id},function(){},t.workerID)},e.prototype.onRemove=function(){this.dispatcher.broadcast(\"removeSource\",{type:this.type,source:this.id},function(){})},e.prototype.serialize=function(){return{type:this.type,data:this._data}},e}(Evented);module.exports=GeoJSONSource;\n},{\"../data/extent\":54,\"../util/evented\":200,\"../util/util\":212,\"../util/window\":194}],83:[function(require,module,exports){\n\"use strict\";var ajax=require(\"../util/ajax\"),rewind=require(\"geojson-rewind\"),GeoJSONWrapper=require(\"./geojson_wrapper\"),vtpbf=require(\"vt-pbf\"),supercluster=require(\"supercluster\"),geojsonvt=require(\"geojson-vt\"),VectorTileWorkerSource=require(\"./vector_tile_worker_source\"),GeoJSONWorkerSource=function(e){function r(r,t,o){e.call(this,r,t),o&&(this.loadGeoJSON=o),this._geoJSONIndexes={}}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.loadVectorData=function(e,r){var t=e.source,o=e.coord;if(!this._geoJSONIndexes[t])return r(null,null);var n=this._geoJSONIndexes[t].getTile(Math.min(o.z,e.maxZoom),o.x,o.y);if(!n)return r(null,null);var u=new GeoJSONWrapper(n.features);u.name=\"_geojsonTileLayer\";var a=vtpbf({layers:{_geojsonTileLayer:u}});0===a.byteOffset&&a.byteLength===a.buffer.byteLength||(a=new Uint8Array(a)),u.rawData=a.buffer,r(null,u)},r.prototype.loadData=function(e,r){var t=function(t,o){var n=this;return t?r(t):\"object\"!=typeof o?r(new Error(\"Input data is not a valid GeoJSON object.\")):(rewind(o,!0),void this._indexData(o,e,function(t,o){return t?r(t):(n._geoJSONIndexes[e.source]=o,void r(null))}))}.bind(this);this.loadGeoJSON(e,t)},r.prototype.loadGeoJSON=function(e,r){if(e.url)ajax.getJSON(e.url,r);else{if(\"string\"!=typeof e.data)return r(new Error(\"Input data is not a valid GeoJSON object.\"));try{return r(null,JSON.parse(e.data))}catch(e){return r(new Error(\"Input data is not a valid GeoJSON object.\"))}}},r.prototype.removeSource=function(e){this._geoJSONIndexes[e.source]&&delete this._geoJSONIndexes[e.source]},r.prototype._indexData=function(e,r,t){try{r.cluster?t(null,supercluster(r.superclusterOptions).load(e.features)):t(null,geojsonvt(e,r.geojsonVtOptions))}catch(e){return t(e)}},r}(VectorTileWorkerSource);module.exports=GeoJSONWorkerSource;\n},{\"../util/ajax\":191,\"./geojson_wrapper\":84,\"./vector_tile_worker_source\":96,\"geojson-rewind\":7,\"geojson-vt\":11,\"supercluster\":29,\"vt-pbf\":38}],84:[function(require,module,exports){\n\"use strict\";var Point=require(\"point-geometry\"),VectorTileFeature=require(\"vector-tile\").VectorTileFeature,EXTENT=require(\"../data/extent\"),FeatureWrapper=function(e){var t=this;if(this.type=e.type,1===e.type){this.rawGeometry=[];for(var r=0;rt)){var n=Math.pow(2,Math.min(a.coord.z,i._source.maxzoom)-Math.min(e.z,i._source.maxzoom));if(Math.floor(a.coord.x/n)===e.x&&Math.floor(a.coord.y/n)===e.y)for(o[s]=!0,r=!0;a&&a.coord.z-1>e.z;){var d=a.coord.parent(i._source.maxzoom).id;a=i._tiles[d],a&&a.hasData()&&(delete o[s],o[d]=!0)}}}return r},t.prototype.findLoadedParent=function(e,t,o){for(var i=this,r=e.z-1;r>=t;r--){e=e.parent(i._source.maxzoom);var s=i._tiles[e.id];if(s&&s.hasData())return o[e.id]=!0,s;if(i._cache.has(e.id))return o[e.id]=!0,i._cache.getWithoutRemoving(e.id)}},t.prototype.updateCacheSize=function(e){var t=Math.ceil(e.width/e.tileSize)+1,o=Math.ceil(e.height/e.tileSize)+1,i=t*o,r=5;this._cache.setMaxSize(Math.floor(i*r))},t.prototype.update=function(e){var o=this;if(this.transform=e,this._sourceLoaded){var i,r,s,a;this.updateCacheSize(e);var n=(this._source.roundZoom?Math.round:Math.floor)(this.getZoom(e)),d=Math.max(n-t.maxOverzooming,this._source.minzoom),c=Math.max(n+t.maxUnderzooming,this._source.minzoom),h={};this._coveredTiles={};var u;for(u=this.used?this._source.coord?[this._source.coord]:e.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}):[],i=0;i=Date.now())&&(o.findLoadedChildren(r,c,h)&&(h[_]=!0),a=o.findLoadedParent(r,d,l),a&&o.addTile(a.coord))}var f;for(f in l)h[f]||(o._coveredTiles[f]=!0);for(f in l)h[f]=!0;var T=util.keysDifference(this._tiles,h);for(i=0;ithis._source.maxzoom?Math.pow(2,r-this._source.maxzoom):1;t=new Tile(o,this._source.tileSize*s,this._source.maxzoom),this.loadTile(t,this._tileLoaded.bind(this,t,e.id,t.state))}return t.uses++,this._tiles[e.id]=t,i||this._source.fire(\"dataloading\",{tile:t,coord:t.coord,dataType:\"source\"}),t},t.prototype._setTileReloadTimer=function(e,t){var o=this,i=t.getExpiryTimeout();i&&(this._timers[e]=setTimeout(function(){o.reloadTile(e,\"expired\"),o._timers[e]=void 0},i))},t.prototype._setCacheInvalidationTimer=function(e,t){var o=this,i=t.getExpiryTimeout();i&&(this._cacheTimers[e]=setTimeout(function(){o._cache.remove(e),o._cacheTimers[e]=void 0},i))},t.prototype.removeTile=function(e){var t=this._tiles[e];if(t&&(t.uses--,delete this._tiles[e],this._timers[e]&&(clearTimeout(this._timers[e]),this._timers[e]=void 0),!(t.uses>0)))if(t.hasData()){var o=t.coord.wrapped().id;this._cache.add(o,t),this._setCacheInvalidationTimer(o,t)}else t.aborted=!0,this.abortTile(t),this.unloadTile(t)},t.prototype.clearTiles=function(){var e=this;for(var t in e._tiles)e.removeTile(t);this._cache.reset()},t.prototype.tilesIn=function(e){for(var t=this,o={},i=this.getIds(),r=1/0,s=1/0,a=-(1/0),n=-(1/0),d=e[0].zoom,c=0;c=0&&p[1].y>=0){for(var _=[],f=0;fo)r=!1;else if(t)if(this.expirationTimei.row){var o=t;t=i,i=o}return{x0:t.column,y0:t.row,x1:i.column,y1:i.row,dx:i.column-t.column,dy:i.row-t.row}}function scanSpans(t,i,o,r,e){var n=Math.max(o,Math.floor(i.y0)),h=Math.min(r,Math.ceil(i.y1));if(t.x0===i.x0&&t.y0===i.y0?t.x0+i.dy/t.dy*t.dx0,l=i.dx<0,u=n;ua.dy&&(h=s,s=a,a=h),s.dy>d.dy&&(h=s,s=d,d=h),a.dy>d.dy&&(h=a,a=d,d=h),s.dy&&scanSpans(d,s,r,e,n),a.dy&&scanSpans(d,a,r,e,n)}function getQuadkey(t,i,o){for(var r,e=\"\",n=t;n>0;n--)r=1<t?new TileCoord(this.z-1,this.x,this.y,this.w):new TileCoord(this.z-1,Math.floor(this.x/2),Math.floor(this.y/2),this.w)},TileCoord.prototype.wrapped=function(){return new TileCoord(this.z,this.x,this.y,0)},TileCoord.prototype.children=function(t){if(this.z>=t)return[new TileCoord(this.z+1,this.x,this.y,this.w)];var i=this.z+1,o=2*this.x,r=2*this.y;return[new TileCoord(i,o,r,this.w),new TileCoord(i,o+1,r,this.w),new TileCoord(i,o,r+1,this.w),new TileCoord(i,o+1,r+1,this.w)]},TileCoord.cover=function(t,i,o,r){function e(t,i,e){var s,a,d,y;if(e>=0&&e<=n)for(s=t;sthis.maxzoom?Math.pow(2,e.coord.z-this.maxzoom):1,r={url:normalizeURL(e.coord.url(this.tiles,this.maxzoom,this.scheme),this.url),uid:e.uid,coord:e.coord,zoom:e.coord.z,tileSize:this.tileSize*o,type:this.type,source:this.id,overscaling:o,angle:this.map.transform.angle,pitch:this.map.transform.pitch,showCollisionBoxes:this.map.showCollisionBoxes};e.workerID&&\"expired\"!==e.state?\"loading\"===e.state?e.reloadCallback=t:this.dispatcher.send(\"reloadTile\",r,i.bind(this),e.workerID):e.workerID=this.dispatcher.send(\"loadTile\",r,i.bind(this))},t.prototype.abortTile=function(e){this.dispatcher.send(\"abortTile\",{uid:e.uid,type:this.type,source:this.id},null,e.workerID)},t.prototype.unloadTile=function(e){e.unloadVectorData(),this.dispatcher.send(\"removeTile\",{uid:e.uid,type:this.type,source:this.id},null,e.workerID)},t}(Evented);module.exports=VectorTileSource;\n},{\"../util/evented\":200,\"../util/mapbox\":208,\"../util/util\":212,\"./load_tilejson\":86}],96:[function(require,module,exports){\n\"use strict\";var ajax=require(\"../util/ajax\"),vt=require(\"vector-tile\"),Protobuf=require(\"pbf\"),WorkerTile=require(\"./worker_tile\"),util=require(\"../util/util\"),VectorTileWorkerSource=function(e,r,t){this.actor=e,this.layerIndex=r,t&&(this.loadVectorData=t),this.loading={},this.loaded={}};VectorTileWorkerSource.prototype.loadTile=function(e,r){function t(e,t){return delete this.loading[o][i],e?r(e):t?(a.vectorTile=t,a.parse(t,this.layerIndex,this.actor,function(e,o,i){if(e)return r(e);var a={};t.expires&&(a.expires=t.expires),t.cacheControl&&(a.cacheControl=t.cacheControl),r(null,util.extend({rawTileData:t.rawData},o,a),i)}),this.loaded[o]=this.loaded[o]||{},void(this.loaded[o][i]=a)):r(null,null)}var o=e.source,i=e.uid;this.loading[o]||(this.loading[o]={});var a=this.loading[o][i]=new WorkerTile(e);a.abort=this.loadVectorData(e,t.bind(this))},VectorTileWorkerSource.prototype.reloadTile=function(e,r){function t(e,t){if(this.reloadCallback){var o=this.reloadCallback;delete this.reloadCallback,this.parse(this.vectorTile,a.layerIndex,a.actor,o)}r(e,t)}var o=this.loaded[e.source],i=e.uid,a=this;if(o&&o[i]){var l=o[i];\"parsing\"===l.status?l.reloadCallback=r:\"done\"===l.status&&l.parse(l.vectorTile,this.layerIndex,this.actor,t.bind(l))}},VectorTileWorkerSource.prototype.abortTile=function(e){var r=this.loading[e.source],t=e.uid;r&&r[t]&&r[t].abort&&(r[t].abort(),delete r[t])},VectorTileWorkerSource.prototype.removeTile=function(e){var r=this.loaded[e.source],t=e.uid;r&&r[t]&&delete r[t]},VectorTileWorkerSource.prototype.loadVectorData=function(e,r){function t(e,t){if(e)return r(e);var o=new vt.VectorTile(new Protobuf(t.data));o.rawData=t.data,o.cacheControl=t.cacheControl,o.expires=t.expires,r(e,o)}var o=ajax.getArrayBuffer(e.url,t.bind(this));return function(){o.abort()}},VectorTileWorkerSource.prototype.redoPlacement=function(e,r){var t=this.loaded[e.source],o=this.loading[e.source],i=e.uid;if(t&&t[i]){var a=t[i],l=a.redoPlacement(e.angle,e.pitch,e.showCollisionBoxes);l.result&&r(null,l.result,l.transferables)}else o&&o[i]&&(o[i].angle=e.angle)},module.exports=VectorTileWorkerSource;\n},{\"../util/ajax\":191,\"../util/util\":212,\"./worker_tile\":99,\"pbf\":25,\"vector-tile\":34}],97:[function(require,module,exports){\n\"use strict\";var ajax=require(\"../util/ajax\"),ImageSource=require(\"./image_source\"),VideoSource=function(t){function e(e,o,i,r){t.call(this,e,o,i,r),this.roundZoom=!0,this.type=\"video\",this.options=o}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.load=function(){var t=this,e=this.options;this.urls=e.urls,ajax.getVideo(e.urls,function(e,o){if(e)return t.fire(\"error\",{error:e});t.video=o,t.video.loop=!0;var i;t.video.addEventListener(\"playing\",function(){i=t.map.style.animationLoop.set(1/0),t.map._rerender()}),t.video.addEventListener(\"pause\",function(){t.map.style.animationLoop.cancel(i)}),t.map&&t.video.play(),t._finishLoading()})},e.prototype.getVideo=function(){return this.video},e.prototype.onAdd=function(t){this.map||(this.load(),this.map=t,this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},e.prototype.prepare=function(){!this.tile||this.video.readyState<2||this._prepareImage(this.map.painter.gl,this.video)},e.prototype.serialize=function(){return{type:\"video\",urls:this.urls,coordinates:this.coordinates}},e}(ImageSource);module.exports=VideoSource;\n},{\"../util/ajax\":191,\"./image_source\":85}],98:[function(require,module,exports){\n\"use strict\";var Actor=require(\"../util/actor\"),StyleLayerIndex=require(\"../style/style_layer_index\"),VectorTileWorkerSource=require(\"./vector_tile_worker_source\"),GeoJSONWorkerSource=require(\"./geojson_worker_source\"),globalRTLTextPlugin=require(\"./rtl_text_plugin\"),Worker=function(e){var r=this;this.self=e,this.actor=new Actor(e,this),this.layerIndexes={},this.workerSourceTypes={vector:VectorTileWorkerSource,geojson:GeoJSONWorkerSource},this.workerSources={},this.self.registerWorkerSource=function(e,o){if(r.workerSourceTypes[e])throw new Error('Worker source with name \"'+e+'\" already registered.');r.workerSourceTypes[e]=o},this.self.registerRTLTextPlugin=function(e){if(globalRTLTextPlugin.applyArabicShaping||globalRTLTextPlugin.processBidirectionalText)throw new Error(\"RTL text plugin already registered.\");globalRTLTextPlugin.applyArabicShaping=e.applyArabicShaping,globalRTLTextPlugin.processBidirectionalText=e.processBidirectionalText}};Worker.prototype.setLayers=function(e,r){this.getLayerIndex(e).replace(r)},Worker.prototype.updateLayers=function(e,r){this.getLayerIndex(e).update(r.layers,r.removedIds,r.symbolOrder)},Worker.prototype.loadTile=function(e,r,o){this.getWorkerSource(e,r.type).loadTile(r,o)},Worker.prototype.reloadTile=function(e,r,o){this.getWorkerSource(e,r.type).reloadTile(r,o)},Worker.prototype.abortTile=function(e,r){this.getWorkerSource(e,r.type).abortTile(r)},Worker.prototype.removeTile=function(e,r){this.getWorkerSource(e,r.type).removeTile(r)},Worker.prototype.removeSource=function(e,r){var o=this.getWorkerSource(e,r.type);void 0!==o.removeSource&&o.removeSource(r)},Worker.prototype.redoPlacement=function(e,r,o){this.getWorkerSource(e,r.type).redoPlacement(r,o)},Worker.prototype.loadWorkerSource=function(e,r,o){try{this.self.importScripts(r.url),o()}catch(e){o(e)}},Worker.prototype.loadRTLTextPlugin=function(e,r,o){try{globalRTLTextPlugin.applyArabicShaping||globalRTLTextPlugin.processBidirectionalText||this.self.importScripts(r)}catch(e){o(e)}},Worker.prototype.getLayerIndex=function(e){var r=this.layerIndexes[e];return r||(r=this.layerIndexes[e]=new StyleLayerIndex),r},Worker.prototype.getWorkerSource=function(e,r){var o=this;if(this.workerSources[e]||(this.workerSources[e]={}),!this.workerSources[e][r]){var t={send:function(r,t,i,n){o.actor.send(r,t,i,n,e)}};this.workerSources[e][r]=new this.workerSourceTypes[r](t,this.getLayerIndex(e))}return this.workerSources[e][r]},module.exports=function(e){return new Worker(e)};\n},{\"../style/style_layer_index\":154,\"../util/actor\":190,\"./geojson_worker_source\":83,\"./rtl_text_plugin\":90,\"./vector_tile_worker_source\":96}],99:[function(require,module,exports){\n\"use strict\";function recalculateLayers(e,i){for(var r=0,o=e.layers;r=B.maxzoom||B.layout&&\"none\"===B.layout.visibility)){for(var b=0,k=x;b=0;w--){var A=n[i.symbolOrder[w]];A&&t.symbolBuckets.push(A)}if(0===this.symbolBuckets.length)return T(new CollisionTile(this.angle,this.pitch,this.collisionBoxArray));var D=0,I=Object.keys(c.iconDependencies),O=util.mapObject(c.glyphDependencies,function(e){return Object.keys(e).map(Number)}),L=function(e){if(e)return o(e);if(D++,2===D){for(var i=new CollisionTile(t.angle,t.pitch,t.collisionBoxArray),r=0,s=t.symbolBuckets;r\"===i||\"<=\"===i||\">=\"===i?compileComparisonOp(e[1],e[2],i,!0):\"any\"===i?compileLogicalOp(e.slice(1),\"||\"):\"all\"===i?compileLogicalOp(e.slice(1),\"&&\"):\"none\"===i?compileNegation(compileLogicalOp(e.slice(1),\"||\")):\"in\"===i?compileInOp(e[1],e.slice(2)):\"!in\"===i?compileNegation(compileInOp(e[1],e.slice(2))):\"has\"===i?compileHasOp(e[1]):\"!has\"===i?compileNegation(compileHasOp(e[1])):\"true\";return\"(\"+n+\")\"}function compilePropertyReference(e){return\"$type\"===e?\"f.type\":\"$id\"===e?\"f.id\":\"p[\"+JSON.stringify(e)+\"]\"}function compileComparisonOp(e,i,n,r){var o=compilePropertyReference(e),t=\"$type\"===e?types.indexOf(i):JSON.stringify(i);return(r?\"typeof \"+o+\"=== typeof \"+t+\"&&\":\"\")+o+n+t}function compileLogicalOp(e,i){return e.map(compile).join(i)}function compileInOp(e,i){\"$type\"===e&&(i=i.map(function(e){return types.indexOf(e)}));var n=JSON.stringify(i.sort(compare)),r=compilePropertyReference(e);return i.length<=200?n+\".indexOf(\"+r+\") !== -1\":\"function(v, a, i, j) {while (i <= j) { var m = (i + j) >> 1; if (a[m] === v) return true; if (a[m] > v) j = m - 1; else i = m + 1;}return false; }(\"+r+\", \"+n+\",0,\"+(i.length-1)+\")\"}function compileHasOp(e){return\"$id\"===e?'\"id\" in f':JSON.stringify(e)+\" in p\"}function compileNegation(e){return\"!(\"+e+\")\"}function compare(e,i){return ei?1:0}module.exports=createFilter;var types=[\"Unknown\",\"Point\",\"LineString\",\"Polygon\"];\n},{}],104:[function(require,module,exports){\n\"use strict\";function xyz2lab(r){return r>t3?Math.pow(r,1/3):r/t2+t0}function lab2xyz(r){return r>t1?r*r*r:t2*(r-t0)}function xyz2rgb(r){return 255*(r<=.0031308?12.92*r:1.055*Math.pow(r,1/2.4)-.055)}function rgb2xyz(r){return r/=255,r<=.04045?r/12.92:Math.pow((r+.055)/1.055,2.4)}function rgbToLab(r){var t=rgb2xyz(r[0]),a=rgb2xyz(r[1]),n=rgb2xyz(r[2]),b=xyz2lab((.4124564*t+.3575761*a+.1804375*n)/Xn),o=xyz2lab((.2126729*t+.7151522*a+.072175*n)/Yn),g=xyz2lab((.0193339*t+.119192*a+.9503041*n)/Zn);return[116*o-16,500*(b-o),200*(o-g),r[3]]}function labToRgb(r){var t=(r[0]+16)/116,a=isNaN(r[1])?t:t+r[1]/500,n=isNaN(r[2])?t:t-r[2]/200;return t=Yn*lab2xyz(t),a=Xn*lab2xyz(a),n=Zn*lab2xyz(n),[xyz2rgb(3.2404542*a-1.5371385*t-.4985314*n),xyz2rgb(-.969266*a+1.8760108*t+.041556*n),xyz2rgb(.0556434*a-.2040259*t+1.0572252*n),r[3]]}function rgbToHcl(r){var t=rgbToLab(r),a=t[0],n=t[1],b=t[2],o=Math.atan2(b,n)*rad2deg;return[o<0?o+360:o,Math.sqrt(n*n+b*b),a,r[3]]}function hclToRgb(r){var t=r[0]*deg2rad,a=r[1],n=r[2];return labToRgb([n,Math.cos(t)*a,Math.sin(t)*a,r[3]])}var Xn=.95047,Yn=1,Zn=1.08883,t0=4/29,t1=6/29,t2=3*t1*t1,t3=t1*t1*t1,deg2rad=Math.PI/180,rad2deg=180/Math.PI;module.exports={lab:{forward:rgbToLab,reverse:labToRgb},hcl:{forward:rgbToHcl,reverse:hclToRgb}};\n},{}],105:[function(require,module,exports){\n\"use strict\";function identityFunction(t){return t}function createFunction(t,e){var o,n=\"color\"===e.type;if(isFunctionDefinition(t)){var r=t.stops&&\"object\"==typeof t.stops[0][0],a=r||void 0!==t.property,i=r||!a,s=t.type||(\"interpolated\"===e.function?\"exponential\":\"interval\");n&&(t=extend({},t),t.stops&&(t.stops=t.stops.map(function(t){return[t[0],parseColor(t[1])]})),t.default?t.default=parseColor(t.default):t.default=parseColor(e.default));var u,p,l;if(\"exponential\"===s)u=evaluateExponentialFunction;else if(\"interval\"===s)u=evaluateIntervalFunction;else if(\"categorical\"===s){u=evaluateCategoricalFunction,p=Object.create(null);for(var c=0,f=t.stops;c=t.stops[n-1][0])return t.stops[n-1][1];var r=binarySearchForIndex(t.stops,o);return t.stops[r][1]}function evaluateExponentialFunction(t,e,o){var n=void 0!==t.base?t.base:1;if(\"number\"!==getType(o))return coalesce(t.default,e.default);var r=t.stops.length;if(1===r)return t.stops[0][1];if(o<=t.stops[0][0])return t.stops[0][1];if(o>=t.stops[r-1][0])return t.stops[r-1][1];var a=binarySearchForIndex(t.stops,o);return interpolate(o,n,t.stops[a][0],t.stops[a+1][0],t.stops[a][1],t.stops[a+1][1])}function evaluateIdentityFunction(t,e,o){return\"color\"===e.type?o=parseColor(o):getType(o)!==e.type&&(o=void 0),coalesce(o,t.default,e.default)}function binarySearchForIndex(t,e){for(var o,n,r=t.length,a=0,i=r-1,s=0;a<=i;){if(s=Math.floor((a+i)/2),o=t[s][0],n=t[s+1][0],e>=o&&ee&&(i=s-1)}return Math.max(s-1,0)}function interpolate(t,e,o,n,r,a){return\"function\"==typeof r?function(){var i=r.apply(void 0,arguments),s=a.apply(void 0,arguments);if(void 0!==i&&void 0!==s)return interpolate(t,e,o,n,i,s)}:r.length?interpolateArray(t,e,o,n,r,a):interpolateNumber(t,e,o,n,r,a)}function interpolateNumber(t,e,o,n,r,a){var i,s=n-o,u=t-o;return i=1===e?u/s:(Math.pow(e,u)-1)/(Math.pow(e,s)-1),r*(1-i)+a*i}function interpolateArray(t,e,o,n,r,a){for(var i=[],s=0;s255?255:e}function clamp_css_float(e){return e<0?0:e>1?1:e}function parse_css_int(e){return clamp_css_byte(\"%\"===e[e.length-1]?parseFloat(e)/100*255:parseInt(e))}function parse_css_float(e){return clamp_css_float(\"%\"===e[e.length-1]?parseFloat(e)/100:parseFloat(e))}function css_hue_to_rgb(e,r,l){return l<0?l+=1:l>1&&(l-=1),6*l<1?e+(r-e)*l*6:2*l<1?r:3*l<2?e+(r-e)*(2/3-l)*6:e}function parseCSSColor(e){var r=e.replace(/ /g,\"\").toLowerCase();if(r in kCSSColorTable)return kCSSColorTable[r].slice();if(\"#\"===r[0]){if(4===r.length){var l=parseInt(r.substr(1),16);return l>=0&&l<=4095?[(3840&l)>>4|(3840&l)>>8,240&l|(240&l)>>4,15&l|(15&l)<<4,1]:null}if(7===r.length){var l=parseInt(r.substr(1),16);return l>=0&&l<=16777215?[(16711680&l)>>16,(65280&l)>>8,255&l,1]:null}return null}var a=r.indexOf(\"(\"),t=r.indexOf(\")\");if(a!==-1&&t+1===r.length){var n=r.substr(0,a),s=r.substr(a+1,t-(a+1)).split(\",\"),o=1;switch(n){case\"rgba\":if(4!==s.length)return null;o=parse_css_float(s.pop());case\"rgb\":return 3!==s.length?null:[parse_css_int(s[0]),parse_css_int(s[1]),parse_css_int(s[2]),o];case\"hsla\":if(4!==s.length)return null;o=parse_css_float(s.pop());case\"hsl\":if(3!==s.length)return null;var i=(parseFloat(s[0])%360+360)%360/360,u=parse_css_float(s[1]),g=parse_css_float(s[2]),d=g<=.5?g*(u+1):g+u-g*u,c=2*g-d;return[clamp_css_byte(255*css_hue_to_rgb(c,d,i+1/3)),clamp_css_byte(255*css_hue_to_rgb(c,d,i)),clamp_css_byte(255*css_hue_to_rgb(c,d,i-1/3)),o];default:return null}}return null}var kCSSColorTable={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],rebeccapurple:[102,51,153,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};try{exports.parseCSSColor=parseCSSColor}catch(e){}\n},{}],108:[function(require,module,exports){\nfunction sss(r){var e,t,s,n,u,a;switch(typeof r){case\"object\":if(null===r)return null;if(isArray(r)){for(s=\"[\",t=r.length-1,e=0;e-1&&(s+=sss(r[e])),s+\"]\"}for(n=objKeys(r).sort(),t=n.length,s=\"{\",u=n[e=0],a=t>0&&void 0!==r[u];e15?\"\\\\u00\"+e.toString(16):\"\\\\u000\"+e.toString(16)}};module.exports=function(r){if(void 0!==r)return\"\"+sss(r)},module.exports.stringSearch=strReg,module.exports.stringReplace=strReplace;\n},{}],109:[function(require,module,exports){\nfunction isObjectLike(r){return!!r&&\"object\"==typeof r}function arraySome(r,e){for(var a=-1,t=r.length;++as))return!1;for(;++c-1&&t%1==0&&t<=MAX_SAFE_INTEGER}function isObject(t){var e=typeof t;return!!t&&(\"object\"==e||\"function\"==e)}function isObjectLike(t){return!!t&&\"object\"==typeof t}var MAX_SAFE_INTEGER=9007199254740991,argsTag=\"[object Arguments]\",funcTag=\"[object Function]\",genTag=\"[object GeneratorFunction]\",objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,objectToString=objectProto.toString,propertyIsEnumerable=objectProto.propertyIsEnumerable;module.exports=isArguments;\n},{}],113:[function(require,module,exports){\nfunction isObjectLike(t){return!!t&&\"object\"==typeof t}function getNative(t,r){var e=null==t?void 0:t[r];return isNative(e)?e:void 0}function isLength(t){return\"number\"==typeof t&&t>-1&&t%1==0&&t<=MAX_SAFE_INTEGER}function isFunction(t){return isObject(t)&&objToString.call(t)==funcTag}function isObject(t){var r=typeof t;return!!t&&(\"object\"==r||\"function\"==r)}function isNative(t){return null!=t&&(isFunction(t)?reIsNative.test(fnToString.call(t)):isObjectLike(t)&&reIsHostCtor.test(t))}var arrayTag=\"[object Array]\",funcTag=\"[object Function]\",reIsHostCtor=/^\\[object .+?Constructor\\]$/,objectProto=Object.prototype,fnToString=Function.prototype.toString,hasOwnProperty=objectProto.hasOwnProperty,objToString=objectProto.toString,reIsNative=RegExp(\"^\"+fnToString.call(hasOwnProperty).replace(/[\\\\^$.*+?()[\\]{}|]/g,\"\\\\$&\").replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g,\"$1.*?\")+\"$\"),nativeIsArray=getNative(Array,\"isArray\"),MAX_SAFE_INTEGER=9007199254740991,isArray=nativeIsArray||function(t){return isObjectLike(t)&&isLength(t.length)&&objToString.call(t)==arrayTag};module.exports=isArray;\n},{}],114:[function(require,module,exports){\nfunction isEqual(a,l,i,e){i=\"function\"==typeof i?bindCallback(i,e,3):void 0;var s=i?i(a,l):void 0;return void 0===s?baseIsEqual(a,l,i):!!s}var baseIsEqual=require(\"lodash._baseisequal\"),bindCallback=require(\"lodash._bindcallback\");module.exports=isEqual;\n},{\"lodash._baseisequal\":109,\"lodash._bindcallback\":110}],115:[function(require,module,exports){\nfunction isLength(a){return\"number\"==typeof a&&a>-1&&a%1==0&&a<=MAX_SAFE_INTEGER}function isObjectLike(a){return!!a&&\"object\"==typeof a}function isTypedArray(a){return isObjectLike(a)&&isLength(a.length)&&!!typedArrayTags[objectToString.call(a)]}var MAX_SAFE_INTEGER=9007199254740991,argsTag=\"[object Arguments]\",arrayTag=\"[object Array]\",boolTag=\"[object Boolean]\",dateTag=\"[object Date]\",errorTag=\"[object Error]\",funcTag=\"[object Function]\",mapTag=\"[object Map]\",numberTag=\"[object Number]\",objectTag=\"[object Object]\",regexpTag=\"[object RegExp]\",setTag=\"[object Set]\",stringTag=\"[object String]\",weakMapTag=\"[object WeakMap]\",arrayBufferTag=\"[object ArrayBuffer]\",dataViewTag=\"[object DataView]\",float32Tag=\"[object Float32Array]\",float64Tag=\"[object Float64Array]\",int8Tag=\"[object Int8Array]\",int16Tag=\"[object Int16Array]\",int32Tag=\"[object Int32Array]\",uint8Tag=\"[object Uint8Array]\",uint8ClampedTag=\"[object Uint8ClampedArray]\",uint16Tag=\"[object Uint16Array]\",uint32Tag=\"[object Uint32Array]\",typedArrayTags={};typedArrayTags[float32Tag]=typedArrayTags[float64Tag]=typedArrayTags[int8Tag]=typedArrayTags[int16Tag]=typedArrayTags[int32Tag]=typedArrayTags[uint8Tag]=typedArrayTags[uint8ClampedTag]=typedArrayTags[uint16Tag]=typedArrayTags[uint32Tag]=!0,typedArrayTags[argsTag]=typedArrayTags[arrayTag]=typedArrayTags[arrayBufferTag]=typedArrayTags[boolTag]=typedArrayTags[dataViewTag]=typedArrayTags[dateTag]=typedArrayTags[errorTag]=typedArrayTags[funcTag]=typedArrayTags[mapTag]=typedArrayTags[numberTag]=typedArrayTags[objectTag]=typedArrayTags[regexpTag]=typedArrayTags[setTag]=typedArrayTags[stringTag]=typedArrayTags[weakMapTag]=!1;var objectProto=Object.prototype,objectToString=objectProto.toString;module.exports=isTypedArray;\n},{}],116:[function(require,module,exports){\nfunction baseProperty(e){return function(t){return null==t?void 0:t[e]}}function isArrayLike(e){return null!=e&&isLength(getLength(e))}function isIndex(e,t){return e=\"number\"==typeof e||reIsUint.test(e)?+e:-1,t=null==t?MAX_SAFE_INTEGER:t,e>-1&&e%1==0&&e-1&&e%1==0&&e<=MAX_SAFE_INTEGER}function shimKeys(e){for(var t=keysIn(e),r=t.length,n=r&&e.length,s=!!n&&isLength(n)&&(isArray(e)||isArguments(e)),o=-1,i=[];++o0;++n\":{},\">=\":{},\"<\":{},\"<=\":{},\"in\":{},\"!in\":{},\"all\":{},\"any\":{},\"none\":{},\"has\":{},\"!has\":{}}},\"geometry_type\":{\"type\":\"enum\",\"values\":{\"Point\":{},\"LineString\":{},\"Polygon\":{}}},\"function\":{\"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\":false}},\"function_stop\":{\"type\":\"array\",\"minimum\":0,\"maximum\":22,\"value\":[\"number\",\"color\"],\"length\":2},\"light\":{\"anchor\":{\"type\":\"enum\",\"default\":\"viewport\",\"values\":{\"map\":{},\"viewport\":{}},\"transition\":false},\"position\":{\"type\":\"array\",\"default\":[1.15,210,30],\"length\":3,\"value\":\"number\",\"transition\":true,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":false},\"color\":{\"type\":\"color\",\"default\":\"#ffffff\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":false,\"transition\":true},\"intensity\":{\"type\":\"number\",\"default\":0.5,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":false,\"transition\":true}},\"paint\":[\"paint_fill\",\"paint_line\",\"paint_circle\",\"paint_fill-extrusion\",\"paint_symbol\",\"paint_raster\",\"paint_background\"],\"paint_fill\":{\"fill-antialias\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":true},\"fill-opacity\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true},\"fill-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[{\"!\":\"fill-pattern\"}]},\"fill-outline-color\":{\"type\":\"color\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[{\"!\":\"fill-pattern\"},{\"fill-antialias\":true}]},\"fill-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\"},\"fill-translate-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"fill-translate\"]},\"fill-pattern\":{\"type\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"transition\":true}},\"paint_fill-extrusion\":{\"fill-extrusion-opacity\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":false,\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true},\"fill-extrusion-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[{\"!\":\"fill-extrusion-pattern\"}]},\"fill-extrusion-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\"},\"fill-extrusion-translate-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"fill-extrusion-translate\"]},\"fill-extrusion-pattern\":{\"type\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"transition\":true},\"fill-extrusion-height\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"default\":0,\"minimum\":0,\"units\":\"meters\",\"transition\":true},\"fill-extrusion-base\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"default\":0,\"minimum\":0,\"units\":\"meters\",\"transition\":true,\"requires\":[\"fill-extrusion-height\"]}},\"paint_line\":{\"line-opacity\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true},\"line-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[{\"!\":\"line-pattern\"}]},\"line-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\"},\"line-translate-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"line-translate\"]},\"line-width\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\"},\"line-gap-width\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\"},\"line-offset\":{\"type\":\"number\",\"default\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\"},\"line-blur\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\"},\"line-dasharray\":{\"type\":\"array\",\"value\":\"number\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"minimum\":0,\"transition\":true,\"units\":\"line widths\",\"requires\":[{\"!\":\"line-pattern\"}]},\"line-pattern\":{\"type\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"transition\":true}},\"paint_circle\":{\"circle-radius\":{\"type\":\"number\",\"default\":5,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\"},\"circle-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true},\"circle-blur\":{\"type\":\"number\",\"default\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true},\"circle-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true},\"circle-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\"},\"circle-translate-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"circle-translate\"]},\"circle-pitch-scale\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\"},\"circle-stroke-width\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\"},\"circle-stroke-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true},\"circle-stroke-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true}},\"paint_symbol\":{\"icon-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[\"icon-image\"]},\"icon-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[\"icon-image\"]},\"icon-halo-color\":{\"type\":\"color\",\"default\":\"rgba(0, 0, 0, 0)\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[\"icon-image\"]},\"icon-halo-width\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"icon-image\"]},\"icon-halo-blur\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"icon-image\"]},\"icon-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"icon-image\"]},\"icon-translate-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"icon-image\",\"icon-translate\"]},\"text-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[\"text-field\"]},\"text-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[\"text-field\"]},\"text-halo-color\":{\"type\":\"color\",\"default\":\"rgba(0, 0, 0, 0)\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[\"text-field\"]},\"text-halo-width\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"text-field\"]},\"text-halo-blur\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"text-field\"]},\"text-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"text-field\"]},\"text-translate-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"text-field\",\"text-translate\"]}},\"paint_raster\":{\"raster-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true},\"raster-hue-rotate\":{\"type\":\"number\",\"default\":0,\"period\":360,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"degrees\"},\"raster-brightness-min\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"default\":0,\"minimum\":0,\"maximum\":1,\"transition\":true},\"raster-brightness-max\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true},\"raster-saturation\":{\"type\":\"number\",\"default\":0,\"minimum\":-1,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true},\"raster-contrast\":{\"type\":\"number\",\"default\":0,\"minimum\":-1,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true},\"raster-fade-duration\":{\"type\":\"number\",\"default\":300,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"milliseconds\"}},\"paint_background\":{\"background-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"requires\":[{\"!\":\"background-pattern\"}]},\"background-pattern\":{\"type\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"transition\":true},\"background-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true}},\"transition\":{\"duration\":{\"type\":\"number\",\"default\":300,\"minimum\":0,\"units\":\"milliseconds\"},\"delay\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"units\":\"milliseconds\"}}}\n},{}],119:[function(require,module,exports){\n\"use strict\";module.exports=function(r){for(var t=arguments,e=1;e7)return[new ValidationError(u,a,\"constants have been deprecated as of v8\")];if(!(a in l.constants))return[new ValidationError(u,a,'constant \"%s\" not found',a)];e=extend({},e,{value:l.constants[a]})}return n.function&&\"object\"===getType(a)?r(e):n.type&&i[n.type]?i[n.type](e):t(extend({},e,{valueSpec:n.type?o[n.type]:n}))};\n},{\"../error/validation_error\":102,\"../util/extend\":119,\"../util/get_type\":120,\"./validate_array\":125,\"./validate_boolean\":126,\"./validate_color\":127,\"./validate_constants\":128,\"./validate_enum\":129,\"./validate_filter\":130,\"./validate_function\":131,\"./validate_layer\":133,\"./validate_light\":135,\"./validate_number\":136,\"./validate_object\":137,\"./validate_source\":140,\"./validate_string\":141}],125:[function(require,module,exports){\n\"use strict\";var getType=require(\"../util/get_type\"),validate=require(\"./validate\"),ValidationError=require(\"../error/validation_error\");module.exports=function(e){var r=e.value,t=e.valueSpec,a=e.style,n=e.styleSpec,l=e.key,i=e.arrayElementValidator||validate;if(\"array\"!==getType(r))return[new ValidationError(l,r,\"array expected, %s found\",getType(r))];if(t.length&&r.length!==t.length)return[new ValidationError(l,r,\"array length %d expected, length %d found\",t.length,r.length)];if(t[\"min-length\"]&&r.length7)return t?[new ValidationError(e,t,\"constants have been deprecated as of v8\")]:[];var o=getType(t);if(\"object\"!==o)return[new ValidationError(e,t,\"object expected, %s found\",o)];var n=[];for(var i in t)\"@\"!==i[0]&&n.push(new ValidationError(e+\".\"+i,t[i],'constants must start with \"@\"'));return n};\n},{\"../error/validation_error\":102,\"../util/get_type\":120}],129:[function(require,module,exports){\n\"use strict\";var ValidationError=require(\"../error/validation_error\"),unbundle=require(\"../util/unbundle_jsonlint\");module.exports=function(e){var r=e.key,n=e.value,u=e.valueSpec,o=[];return Array.isArray(u.values)?u.values.indexOf(unbundle(n))===-1&&o.push(new ValidationError(r,n,\"expected one of [%s], %s found\",u.values.join(\", \"),n)):Object.keys(u.values).indexOf(unbundle(n))===-1&&o.push(new ValidationError(r,n,\"expected one of [%s], %s found\",Object.keys(u.values).join(\", \"),n)),o};\n},{\"../error/validation_error\":102,\"../util/unbundle_jsonlint\":123}],130:[function(require,module,exports){\n\"use strict\";var ValidationError=require(\"../error/validation_error\"),validateEnum=require(\"./validate_enum\"),getType=require(\"../util/get_type\"),unbundle=require(\"../util/unbundle_jsonlint\");module.exports=function e(r){var t,a=r.value,n=r.key,l=r.styleSpec,s=[];if(\"array\"!==getType(a))return[new ValidationError(n,a,\"array expected, %s found\",getType(a))];if(a.length<1)return[new ValidationError(n,a,\"filter array must have at least 1 element\")];switch(s=s.concat(validateEnum({key:n+\"[0]\",value:a[0],valueSpec:l.filter_operator,style:r.style,styleSpec:r.styleSpec})),unbundle(a[0])){case\"<\":case\"<=\":case\">\":case\">=\":a.length>=2&&\"$type\"===unbundle(a[1])&&s.push(new ValidationError(n,a,'\"$type\" cannot be use with operator \"%s\"',a[0]));case\"==\":case\"!=\":3!==a.length&&s.push(new ValidationError(n,a,'filter array for operator \"%s\" must have 3 elements',a[0]));case\"in\":case\"!in\":a.length>=2&&(t=getType(a[1]),\"string\"!==t&&s.push(new ValidationError(n+\"[1]\",a[1],\"string expected, %s found\",t)));for(var o=2;ounbundle(r[0].zoom))return[new ValidationError(o,r[0].zoom,\"stop zoom values must appear in ascending order\")];unbundle(r[0].zoom)!==l&&(l=unbundle(r[0].zoom),i=void 0,s={}),t=t.concat(validateObject({key:o+\"[0]\",value:r[0],valueSpec:{zoom:{}},style:e.style,styleSpec:e.styleSpec,objectElementValidators:{zoom:validateNumber,value:a}}))}else t=t.concat(a({key:o+\"[0]\",value:r[0],valueSpec:{},style:e.style,styleSpec:e.styleSpec}));return t.concat(validate({key:o+\"[1]\",value:r[1],valueSpec:u,style:e.style,styleSpec:e.styleSpec}))}function a(e){var t=getType(e.value),r=unbundle(e.value);if(n){if(t!==n)return[new ValidationError(e.key,e.value,\"%s stop domain type must match previous stop domain type %s\",t,n)]}else n=t;if(\"number\"!==t&&\"string\"!==t&&\"boolean\"!==t)return[new ValidationError(e.key,e.value,\"stop domain value must be a number, string, or boolean\")];if(\"number\"!==t&&\"categorical\"!==p){var a=\"number expected, %s found\";return u[\"property-function\"]&&void 0===p&&(a+='\\nIf you intended to use a categorical function, specify `\"type\": \"categorical\"`.'),[new ValidationError(e.key,e.value,a,t)]}return\"categorical\"!==p||\"number\"!==t||isFinite(r)&&Math.floor(r)===r?\"number\"===t&&void 0!==i&&r=8&&(d&&!e.valueSpec[\"property-function\"]?v.push(new ValidationError(e.key,e.value,\"property functions not supported\")):y&&!e.valueSpec[\"zoom-function\"]&&v.push(new ValidationError(e.key,e.value,\"zoom functions not supported\"))),\"categorical\"!==p&&!c||void 0!==e.value.property||v.push(new ValidationError(e.key,e.value,'\"property\" property is required')),v};\n},{\"../error/validation_error\":102,\"../util/get_type\":120,\"../util/unbundle_jsonlint\":123,\"./validate\":124,\"./validate_array\":125,\"./validate_number\":136,\"./validate_object\":137}],132:[function(require,module,exports){\n\"use strict\";var ValidationError=require(\"../error/validation_error\"),validateString=require(\"./validate_string\");module.exports=function(r){var e=r.value,t=r.key,a=validateString(r);return a.length?a:(e.indexOf(\"{fontstack}\")===-1&&a.push(new ValidationError(t,e,'\"glyphs\" url must include a \"{fontstack}\" token')),e.indexOf(\"{range}\")===-1&&a.push(new ValidationError(t,e,'\"glyphs\" url must include a \"{range}\" token')),a)};\n},{\"../error/validation_error\":102,\"./validate_string\":141}],133:[function(require,module,exports){\n\"use strict\";var ValidationError=require(\"../error/validation_error\"),unbundle=require(\"../util/unbundle_jsonlint\"),validateObject=require(\"./validate_object\"),validateFilter=require(\"./validate_filter\"),validatePaintProperty=require(\"./validate_paint_property\"),validateLayoutProperty=require(\"./validate_layout_property\"),extend=require(\"../util/extend\");module.exports=function(e){var r=[],t=e.value,a=e.key,i=e.style,l=e.styleSpec;t.type||t.ref||r.push(new ValidationError(a,t,'either \"type\" or \"ref\" is required'));var u=unbundle(t.type),n=unbundle(t.ref);if(t.id)for(var o=unbundle(t.id),s=0;sm.maximum?[new ValidationError(r,i,\"%s is greater than the maximum value %s\",i,m.maximum)]:[]};\n},{\"../error/validation_error\":102,\"../util/get_type\":120}],137:[function(require,module,exports){\n\"use strict\";var ValidationError=require(\"../error/validation_error\"),getType=require(\"../util/get_type\"),validateSpec=require(\"./validate\");module.exports=function(e){var r=e.key,t=e.value,i=e.valueSpec||{},a=e.objectElementValidators||{},o=e.style,l=e.styleSpec,n=[],u=getType(t);if(\"object\"!==u)return[new ValidationError(r,t,\"object expected, %s found\",u)];for(var d in t){var p=d.split(\".\")[0],s=i[p]||i[\"*\"],c=void 0;if(a[p])c=a[p];else if(i[p])c=validateSpec;else if(a[\"*\"])c=a[\"*\"];else{if(!i[\"*\"]){n.push(new ValidationError(r,t[d],'unknown property \"%s\"',d));continue}c=validateSpec}n=n.concat(c({key:(r?r+\".\":r)+d,value:t[d],valueSpec:s,style:o,styleSpec:l,object:t,objectKey:d}))}for(var v in i)i[v].required&&void 0===i[v].default&&void 0===t[v]&&n.push(new ValidationError(r,t,'missing required property \"%s\"',v));return n};\n},{\"../error/validation_error\":102,\"../util/get_type\":120,\"./validate\":124}],138:[function(require,module,exports){\n\"use strict\";var validateProperty=require(\"./validate_property\");module.exports=function(r){return validateProperty(r,\"paint\")};\n},{\"./validate_property\":139}],139:[function(require,module,exports){\n\"use strict\";var validate=require(\"./validate\"),ValidationError=require(\"../error/validation_error\"),getType=require(\"../util/get_type\");module.exports=function(e,t){var r=e.key,i=e.style,a=e.styleSpec,n=e.value,o=e.objectKey,l=a[t+\"_\"+e.layerType];if(!l)return[];var y=o.match(/^(.*)-transition$/);if(\"paint\"===t&&y&&l[y[1]]&&l[y[1]].transition)return validate({key:r,value:n,valueSpec:a.transition,style:i,styleSpec:a});var p=e.valueSpec||l[o];if(!p)return[new ValidationError(r,n,'unknown property \"%s\"',o)];var s;if(\"string\"===getType(n)&&p[\"property-function\"]&&!p.tokens&&(s=/^{([^}]+)}$/.exec(n)))return[new ValidationError(r,n,'\"%s\" does not support interpolation syntax\\nUse an identity property function instead: `{ \"type\": \"identity\", \"property\": %s` }`.',o,JSON.stringify(s[1]))];var u=[];return\"symbol\"===e.layerType&&\"text-field\"===o&&i&&!i.glyphs&&u.push(new ValidationError(r,n,'use of \"text-field\" requires a style \"glyphs\" property')),u.concat(validate({key:e.key,value:n,valueSpec:p,style:i,styleSpec:a}))};\n},{\"../error/validation_error\":102,\"../util/get_type\":120,\"./validate\":124}],140:[function(require,module,exports){\n\"use strict\";var ValidationError=require(\"../error/validation_error\"),unbundle=require(\"../util/unbundle_jsonlint\"),validateObject=require(\"./validate_object\"),validateEnum=require(\"./validate_enum\");module.exports=function(e){var a=e.value,t=e.key,r=e.styleSpec,l=e.style;if(!a.type)return[new ValidationError(t,a,'\"type\" is required')];var u=unbundle(a.type),i=[];switch(u){case\"vector\":case\"raster\":if(i=i.concat(validateObject({key:t,value:a,valueSpec:r.source_tile,style:e.style,styleSpec:r})),\"url\"in a)for(var s in a)[\"type\",\"url\",\"tileSize\"].indexOf(s)<0&&i.push(new ValidationError(t+\".\"+s,a[s],'a source with a \"url\" property may not include a \"%s\" property',s));return i;case\"geojson\":return validateObject({key:t,value:a,valueSpec:r.source_geojson,style:l,styleSpec:r});case\"video\":return validateObject({key:t,value:a,valueSpec:r.source_video,style:l,styleSpec:r});case\"image\":return validateObject({key:t,value:a,valueSpec:r.source_image,style:l,styleSpec:r});case\"canvas\":return validateObject({key:t,value:a,valueSpec:r.source_canvas,style:l,styleSpec:r});default:return validateEnum({key:t+\".type\",value:a.type,valueSpec:{values:[\"vector\",\"raster\",\"geojson\",\"video\",\"image\",\"canvas\"]},style:l,styleSpec:r})}};\n},{\"../error/validation_error\":102,\"../util/unbundle_jsonlint\":123,\"./validate_enum\":129,\"./validate_object\":137}],141:[function(require,module,exports){\n\"use strict\";var getType=require(\"../util/get_type\"),ValidationError=require(\"../error/validation_error\");module.exports=function(r){var e=r.value,t=r.key,i=getType(e);return\"string\"!==i?[new ValidationError(t,e,\"string expected, %s found\",i)]:[]};\n},{\"../error/validation_error\":102,\"../util/get_type\":120}],142:[function(require,module,exports){\n\"use strict\";function validateStyleMin(e,a){a=a||latestStyleSpec;var t=[];return t=t.concat(validate({key:\"\",value:e,valueSpec:a.$root,styleSpec:a,style:e,objectElementValidators:{glyphs:validateGlyphsURL,\"*\":function(){return[]}}})),a.$version>7&&e.constants&&(t=t.concat(validateConstants({key:\"constants\",value:e.constants,style:e,styleSpec:a}))),sortErrors(t)}function sortErrors(e){return[].concat(e).sort(function(e,a){return e.line-a.line})}function wrapCleanErrors(e){return function(){return sortErrors(e.apply(this,arguments))}}var validateConstants=require(\"./validate/validate_constants\"),validate=require(\"./validate/validate\"),latestStyleSpec=require(\"./reference/latest\"),validateGlyphsURL=require(\"./validate/validate_glyphs_url\");validateStyleMin.source=wrapCleanErrors(require(\"./validate/validate_source\")),validateStyleMin.light=wrapCleanErrors(require(\"./validate/validate_light\")),validateStyleMin.layer=wrapCleanErrors(require(\"./validate/validate_layer\")),validateStyleMin.filter=wrapCleanErrors(require(\"./validate/validate_filter\")),validateStyleMin.paintProperty=wrapCleanErrors(require(\"./validate/validate_paint_property\")),validateStyleMin.layoutProperty=wrapCleanErrors(require(\"./validate/validate_layout_property\")),module.exports=validateStyleMin;\n},{\"./reference/latest\":117,\"./validate/validate\":124,\"./validate/validate_constants\":128,\"./validate/validate_filter\":130,\"./validate/validate_glyphs_url\":132,\"./validate/validate_layer\":133,\"./validate/validate_layout_property\":134,\"./validate/validate_light\":135,\"./validate/validate_paint_property\":138,\"./validate/validate_source\":140}],143:[function(require,module,exports){\n\"use strict\";var AnimationLoop=function(){this.n=0,this.times=[]};AnimationLoop.prototype.stopped=function(){return this.times=this.times.filter(function(t){return t.time>=(new Date).getTime()}),!this.times.length},AnimationLoop.prototype.set=function(t){return this.times.push({id:this.n,time:t+(new Date).getTime()}),this.n++},AnimationLoop.prototype.cancel=function(t){this.times=this.times.filter(function(i){return i.id!==t})},module.exports=AnimationLoop;\n},{}],144:[function(require,module,exports){\n\"use strict\";var Evented=require(\"../util/evented\"),ajax=require(\"../util/ajax\"),browser=require(\"../util/browser\"),normalizeURL=require(\"../util/mapbox\").normalizeSpriteURL,SpritePosition=function(){this.x=0,this.y=0,this.width=0,this.height=0,this.pixelRatio=1,this.sdf=!1},ImageSprite=function(t){function i(i,e){var a=this;t.call(this),this.base=i,this.retina=browser.devicePixelRatio>1,this.setEventedParent(e);var r=this.retina?\"@2x\":\"\";ajax.getJSON(normalizeURL(i,r,\".json\"),function(t,i){return t?void a.fire(\"error\",{error:t}):(a.data=i,void(a.imgData&&a.fire(\"data\",{dataType:\"style\"})))}),ajax.getImage(normalizeURL(i,r,\".png\"),function(t,i){if(t)return void a.fire(\"error\",{error:t});a.imgData=browser.getImageData(i);for(var e=0;e1!==this.retina){var e=new i(this.base);e.on(\"data\",function(){t.data=e.data,t.imgData=e.imgData,t.width=e.width,t.retina=e.retina})}},i.prototype.getSpritePosition=function(t){if(!this.loaded())return new SpritePosition;var i=this.data&&this.data[t];return i&&this.imgData?i:new SpritePosition},i}(Evented);module.exports=ImageSprite;\n},{\"../util/ajax\":191,\"../util/browser\":192,\"../util/evented\":200,\"../util/mapbox\":208}],145:[function(require,module,exports){\n\"use strict\";var styleSpec=require(\"../style-spec/reference/latest\"),util=require(\"../util/util\"),Evented=require(\"../util/evented\"),validateStyle=require(\"./validate_style\"),StyleDeclaration=require(\"./style_declaration\"),StyleTransition=require(\"./style_transition\"),TRANSITION_SUFFIX=\"-transition\",Light=function(t){function i(i){t.call(this),this.properties=[\"anchor\",\"color\",\"position\",\"intensity\"],this._specifications=styleSpec.light,this.set(i)}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.set=function(t){var i=this;if(!this._validate(validateStyle.light,t)){this._declarations={},this._transitions={},this._transitionOptions={},this.calculated={},t=util.extend({anchor:this._specifications.anchor.default,color:this._specifications.color.default,position:this._specifications.position.default,intensity:this._specifications.intensity.default},t);for(var e=0,o=i.properties;eMath.floor(e)&&(t.lastIntegerZoom=Math.floor(e+1),t.lastIntegerZoomTime=Date.now()),t.lastZoom=e},t.prototype._checkLoaded=function(){if(!this._loaded)throw new Error(\"Style is not done loading\")},t.prototype.update=function(e,t){var r=this;if(this._changed){var i=Object.keys(this._updatedLayers),o=Object.keys(this._removedLayers);(i.length||o.length||this._updatedSymbolOrder)&&this._updateWorkerLayers(i,o);for(var s in r._updatedSources){var a=r._updatedSources[s];\"reload\"===a?r._reloadSource(s):\"clear\"===a&&r._clearSource(s)}this._applyClasses(e,t),this._resetUpdates(),this.fire(\"data\",{dataType:\"style\"})}},t.prototype._updateWorkerLayers=function(e,t){var r=this,i=this._updatedSymbolOrder?this._order.filter(function(e){return\"symbol\"===r._layers[e].type}):null;this.dispatcher.broadcast(\"updateLayers\",{layers:this._serializeLayers(e),removedIds:t,symbolOrder:i})},t.prototype._resetUpdates=function(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSymbolOrder=!1,this._updatedSources={},this._updatedPaintProps={},this._updatedAllPaintProps=!1},t.prototype.setState=function(e){var t=this;if(this._checkLoaded(),validateStyle.emitErrors(this,validateStyle(e)))return!1;e=util.extend({},e),e.layers=deref(e.layers);var r=diff(this.serialize(),e).filter(function(e){return!(e.command in ignoredDiffOperations)});if(0===r.length)return!1;var i=r.filter(function(e){return!(e.command in supportedDiffOperations)});if(i.length>0)throw new Error(\"Unimplemented: \"+i.map(function(e){return e.command}).join(\", \")+\".\");return r.forEach(function(e){\"setTransition\"!==e.command&&t[e.command].apply(t,e.args)}),this.stylesheet=e,!0},t.prototype.addSource=function(e,t,r){var i=this;if(this._checkLoaded(),void 0!==this.sourceCaches[e])throw new Error(\"There is already a source with this ID\");if(!t.type)throw new Error(\"The type property must be defined, but the only the following properties were given: \"+Object.keys(t)+\".\");var o=[\"vector\",\"raster\",\"geojson\",\"video\",\"image\",\"canvas\"],s=o.indexOf(t.type)>=0;if(!s||!this._validate(validateStyle.source,\"sources.\"+e,t,null,r)){var a=this.sourceCaches[e]=new SourceCache(e,t,this.dispatcher);a.style=this,a.setEventedParent(this,function(){return{isSourceLoaded:i.loaded(),source:a.serialize(),sourceId:e}}),a.onAdd(this.map),this._changed=!0}},t.prototype.removeSource=function(e){if(this._checkLoaded(),void 0===this.sourceCaches[e])throw new Error(\"There is no source with this ID\");var t=this.sourceCaches[e];delete this.sourceCaches[e],delete this._updatedSources[e],t.setEventedParent(null),t.clearTiles(),t.onRemove&&t.onRemove(this.map),this._changed=!0},t.prototype.getSource=function(e){return this.sourceCaches[e]&&this.sourceCaches[e].getSource()},t.prototype.addLayer=function(e,t,r){this._checkLoaded();var i=e.id;if(\"object\"==typeof e.source&&(this.addSource(i,e.source),e=util.extend(e,{source:i})),!this._validate(validateStyle.layer,\"layers.\"+i,e,{arrayIndex:-1},r)){var o=StyleLayer.create(e);this._validateLayer(o),o.setEventedParent(this,{layer:{id:i}});var s=t?this._order.indexOf(t):this._order.length;if(this._order.splice(s,0,i),this._layers[i]=o,this._removedLayers[i]&&o.source){var a=this._removedLayers[i];delete this._removedLayers[i],this._updatedSources[o.source]=a.type!==o.type?\"clear\":\"reload\"}this._updateLayer(o),\"symbol\"===o.type&&(this._updatedSymbolOrder=!0),this.updateClasses(i)}},t.prototype.moveLayer=function(e,t){this._checkLoaded(),this._changed=!0;var r=this._layers[e];if(!r)return void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be moved.\")});var i=this._order.indexOf(e);this._order.splice(i,1);var o=t?this._order.indexOf(t):this._order.length;this._order.splice(o,0,e),\"symbol\"===r.type&&(this._updatedSymbolOrder=!0,r.source&&!this._updatedSources[r.source]&&(this._updatedSources[r.source]=\"reload\"))},t.prototype.removeLayer=function(e){this._checkLoaded();var t=this._layers[e];if(!t)return void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be removed.\")});t.setEventedParent(null);var r=this._order.indexOf(e);this._order.splice(r,1),\"symbol\"===t.type&&(this._updatedSymbolOrder=!0),this._changed=!0,this._removedLayers[e]=t,delete this._layers[e],delete this._updatedLayers[e],delete this._updatedPaintProps[e]},t.prototype.getLayer=function(e){return this._layers[e]},t.prototype.setLayerZoomRange=function(e,t,r){this._checkLoaded();var i=this.getLayer(e);return i?void(i.minzoom===t&&i.maxzoom===r||(null!=t&&(i.minzoom=t),null!=r&&(i.maxzoom=r),this._updateLayer(i))):void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot have zoom extent.\")})},t.prototype.setFilter=function(e,t){this._checkLoaded();var r=this.getLayer(e);return r?void(null!==t&&void 0!==t&&this._validate(validateStyle.filter,\"layers.\"+r.id+\".filter\",t)||util.deepEqual(r.filter,t)||(r.filter=util.clone(t),this._updateLayer(r))):void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be filtered.\")})},t.prototype.getFilter=function(e){return util.clone(this.getLayer(e).filter)},t.prototype.setLayoutProperty=function(e,t,r){this._checkLoaded();var i=this.getLayer(e);return i?void(util.deepEqual(i.getLayoutProperty(t),r)||(i.setLayoutProperty(t,r),this._updateLayer(i))):void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be styled.\")})},t.prototype.getLayoutProperty=function(e,t){return this.getLayer(e).getLayoutProperty(t)},t.prototype.setPaintProperty=function(e,t,r,i){this._checkLoaded();var o=this.getLayer(e);if(!o)return void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be styled.\")});if(!util.deepEqual(o.getPaintProperty(t,i),r)){var s=o.isPaintValueFeatureConstant(t);o.setPaintProperty(t,r,i);var a=!(r&&MapboxGLFunction.isFunctionDefinition(r)&&\"$zoom\"!==r.property&&void 0!==r.property);a&&s||this._updateLayer(o),this.updateClasses(e,t)}},t.prototype.getPaintProperty=function(e,t,r){return this.getLayer(e).getPaintProperty(t,r)},t.prototype.getTransition=function(){return util.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},t.prototype.updateClasses=function(e,t){if(this._changed=!0,e){var r=this._updatedPaintProps;r[e]||(r[e]={}),r[e][t||\"all\"]=!0}else this._updatedAllPaintProps=!0},t.prototype.serialize=function(){var e=this;return util.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:util.mapObject(this.sourceCaches,function(e){return e.serialize()}),layers:this._order.map(function(t){return e._layers[t].serialize()})},function(e){return void 0!==e})},t.prototype._updateLayer=function(e){this._updatedLayers[e.id]=!0,e.source&&!this._updatedSources[e.source]&&(this._updatedSources[e.source]=\"reload\"),this._changed=!0},t.prototype._flattenRenderedFeatures=function(e){for(var t=this,r=[],i=this._order.length-1;i>=0;i--)for(var o=t._order[i],s=0,a=e;s=this.maxzoom)||\"none\"===this.layout.visibility)},i.prototype.updatePaintTransitions=function(t,i,a,e,n){for(var o=this,r=util.extend({},this._paintDeclarations[\"\"]),s=0;s=this.endTime)return e;var a=this.oldTransition.calculate(t,i,this.startTime),n=util.easeCubicInOut((o-this.startTime-this.delay)/this.duration);return this.interp(a,e,n)},StyleTransition.prototype._calculateTargetValue=function(t,i){if(!this.zoomTransitioned)return this.declaration.calculate(t,i);var o=t.zoom,e=this.zoomHistory.lastIntegerZoom,a=o>e?2:.5,n=this.declaration.calculate({zoom:o>e?o-1:o+1},i),r=this.declaration.calculate({zoom:o},i),s=Math.min((Date.now()-this.zoomHistory.lastIntegerZoomTime)/this.duration,1),l=Math.abs(o-e),u=interpolate(s,1,l);return void 0!==n&&void 0!==r?{from:n,fromScale:a,to:r,toScale:1,t:u}:void 0},module.exports=StyleTransition;\n},{\"../util/interpolate\":204,\"../util/util\":212}],156:[function(require,module,exports){\n\"use strict\";module.exports=require(\"../style-spec/validate_style.min\"),module.exports.emitErrors=function(r,e){if(e&&e.length){for(var t=0;t-a/2;){if(s--,s<0)return!1;f-=e[s].dist(i),i=e[s]}f+=e[s].dist(e[s+1]),s++;for(var l=[],o=0;fr;)o-=l.shift().angleDelta;if(o>n)return!1;s++,f+=c.dist(g)}return!0}module.exports=checkMaxAngle;\n},{}],159:[function(require,module,exports){\n\"use strict\";function clipLine(n,x,y,o,e){for(var r=[],t=0;t=o&&w.x>=o||(P.x>=o?P=new Point(o,P.y+(w.y-P.y)*((o-P.x)/(w.x-P.x)))._round():w.x>=o&&(w=new Point(o,P.y+(w.y-P.y)*((o-P.x)/(w.x-P.x)))._round()),P.y>=e&&w.y>=e||(P.y>=e?P=new Point(P.x+(w.x-P.x)*((e-P.y)/(w.y-P.y)),e)._round():w.y>=e&&(w=new Point(P.x+(w.x-P.x)*((e-P.y)/(w.y-P.y)),e)._round()),u&&P.equals(u[u.length-1])||(u=[P],r.push(u)),u.push(w)))))}return r}var Point=require(\"point-geometry\");module.exports=clipLine;\n},{\"point-geometry\":26}],160:[function(require,module,exports){\n\"use strict\";var createStructArrayType=require(\"../util/struct_array\"),Point=require(\"point-geometry\"),CollisionBoxArray=createStructArrayType({members:[{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:\"Float32\",name:\"maxScale\"},{type:\"Uint32\",name:\"featureIndex\"},{type:\"Uint16\",name:\"sourceLayerIndex\"},{type:\"Uint16\",name:\"bucketIndex\"},{type:\"Int16\",name:\"bbox0\"},{type:\"Int16\",name:\"bbox1\"},{type:\"Int16\",name:\"bbox2\"},{type:\"Int16\",name:\"bbox3\"},{type:\"Float32\",name:\"placementScale\"}]});Object.defineProperty(CollisionBoxArray.prototype.StructType.prototype,\"anchorPoint\",{get:function(){return new Point(this.anchorPointX,this.anchorPointY)}}),module.exports=CollisionBoxArray;\n},{\"../util/struct_array\":210,\"point-geometry\":26}],161:[function(require,module,exports){\n\"use strict\";var CollisionFeature=function(t,e,i,o,s,a,n,r,l,d,u){var h=n.top*r-l,x=n.bottom*r+l,f=n.left*r-l,m=n.right*r+l;if(this.boxStartIndex=t.length,d){var _=x-h,b=m-f;if(_>0)if(_=Math.max(10*r,_),u){var v=e[i.segment+1].sub(e[i.segment])._unit()._mult(b),c=[i.sub(v),i.add(v)];this._addLineCollisionBoxes(t,c,i,0,b,_,o,s,a)}else this._addLineCollisionBoxes(t,e,i,i.segment,b,_,o,s,a)}else t.emplaceBack(i.x,i.y,f,h,m,x,1/0,o,s,a,0,0,0,0,0);this.boxEndIndex=t.length};CollisionFeature.prototype._addLineCollisionBoxes=function(t,e,i,o,s,a,n,r,l){var d=a/2,u=Math.floor(s/d),h=-a/2,x=this.boxes,f=i,m=o+1,_=h;do{if(m--,m<0)return x;_-=e[m].dist(f),f=e[m]}while(_>-s/2);for(var b=e[m].dist(e[m+1]),v=0;v=e.length)return x;b=e[m].dist(e[m+1])}var g=c-_,p=e[m],C=e[m+1],B=C.sub(p)._unit()._mult(g)._add(p)._round(),M=Math.max(Math.abs(c-h)-d/2,0),y=s/2/M;t.emplaceBack(B.x,B.y,-a/2,-a/2,a/2,a/2,y,n,r,l,0,0,0,0,0)}return x},module.exports=CollisionFeature;\n},{}],162:[function(require,module,exports){\n\"use strict\";var Point=require(\"point-geometry\"),EXTENT=require(\"../data/extent\"),Grid=require(\"grid-index\"),intersectionTests=require(\"../util/intersection_tests\"),CollisionTile=function(t,e,i){if(\"object\"==typeof t){var r=t;i=e,t=r.angle,e=r.pitch,this.grid=new Grid(r.grid),this.ignoredGrid=new Grid(r.ignoredGrid)}else this.grid=new Grid(EXTENT,12,6),this.ignoredGrid=new Grid(EXTENT,12,0);this.minScale=.5,this.maxScale=2,this.angle=t,this.pitch=e;var a=Math.sin(t),o=Math.cos(t);if(this.rotationMatrix=[o,-a,a,o],this.reverseRotationMatrix=[o,a,-a,o],this.yStretch=1/Math.cos(e/180*Math.PI),this.yStretch=Math.pow(this.yStretch,1.3),this.collisionBoxArray=i,0===i.length){i.emplaceBack();var n=32767;i.emplaceBack(0,0,0,-n,0,n,n,0,0,0,0,0,0,0,0,0),i.emplaceBack(EXTENT,0,0,-n,0,n,n,0,0,0,0,0,0,0,0,0),i.emplaceBack(0,0,-n,0,n,0,n,0,0,0,0,0,0,0,0,0),i.emplaceBack(0,EXTENT,-n,0,n,0,n,0,0,0,0,0,0,0,0,0)}this.tempCollisionBox=i.get(0),this.edges=[i.get(1),i.get(2),i.get(3),i.get(4)]};CollisionTile.prototype.serialize=function(t){var e=this.grid.toArrayBuffer(),i=this.ignoredGrid.toArrayBuffer();return t&&(t.push(e),t.push(i)),{angle:this.angle,pitch:this.pitch,grid:e,ignoredGrid:i}},CollisionTile.prototype.placeCollisionFeature=function(t,e,i){for(var r=this,a=this.collisionBoxArray,o=this.minScale,n=this.rotationMatrix,l=this.yStretch,h=t.boxStartIndex;h=r.maxScale)return o}if(i){var S=void 0;if(r.angle){var P=r.reverseRotationMatrix,b=new Point(s.x1,s.y1).matMult(P),T=new Point(s.x2,s.y1).matMult(P),w=new Point(s.x1,s.y2).matMult(P),N=new Point(s.x2,s.y2).matMult(P);S=r.tempCollisionBox,S.anchorPointX=s.anchorPoint.x,S.anchorPointY=s.anchorPoint.y,S.x1=Math.min(b.x,T.x,w.x,N.x),S.y1=Math.min(b.y,T.x,w.x,N.x),S.x2=Math.max(b.x,T.x,w.x,N.x),S.y2=Math.max(b.y,T.x,w.x,N.x),S.maxScale=s.maxScale}else S=s;for(var B=0;B=r.maxScale)return o}}}return o},CollisionTile.prototype.queryRenderedSymbols=function(t,e){var i={},r=[];if(0===t.length||0===this.grid.length&&0===this.ignoredGrid.length)return r;for(var a=this.collisionBoxArray,o=this.rotationMatrix,n=this.yStretch,l=[],h=1/0,s=1/0,x=-(1/0),c=-(1/0),g=0;gS.maxScale)){var T=S.anchorPoint.matMult(o),w=T.x+S.x1/e,N=T.y+S.y1/e*n,B=T.x+S.x2/e,G=T.y+S.y2/e*n,E=[new Point(w,N),new Point(B,N),new Point(B,G),new Point(w,G)];intersectionTests.polygonIntersectsPolygon(l,E)&&(i[P][b]=!0,r.push(u[v]))}}return r},CollisionTile.prototype.getPlacementScale=function(t,e,i,r,a){var o=e.x-r.x,n=e.y-r.y,l=(a.x1-i.x2)/o,h=(a.x2-i.x1)/o,s=(a.y1-i.y2)*this.yStretch/n,x=(a.y2-i.y1)*this.yStretch/n;(isNaN(l)||isNaN(h))&&(l=h=1),(isNaN(s)||isNaN(x))&&(s=x=1);var c=Math.min(Math.max(l,h),Math.max(s,x)),g=a.maxScale,y=i.maxScale;return c>g&&(c=g),c>y&&(c=y),c>t&&c>=a.placementScale&&(t=c),t},CollisionTile.prototype.insertCollisionFeature=function(t,e,i){for(var r=this,a=i?this.ignoredGrid:this.grid,o=this.collisionBoxArray,n=t.boxStartIndex;n=0&&k=0&&q=0&&p+c<=s){var M=new Anchor(k,q,y,f)._round();n&&!checkMaxAngle(e,M,l,n,a)||x.push(M)}}g+=A}return i||x.length||o||(x=resample(e,g/2,t,n,a,l,o,!0,h)),x}var interpolate=require(\"../util/interpolate\"),Anchor=require(\"../symbol/anchor\"),checkMaxAngle=require(\"./check_max_angle\");module.exports=getAnchors;\n},{\"../symbol/anchor\":157,\"../util/interpolate\":204,\"./check_max_angle\":158}],164:[function(require,module,exports){\n\"use strict\";var ShelfPack=require(\"@mapbox/shelf-pack\"),util=require(\"../util/util\"),SIZE_GROWTH_RATE=4,DEFAULT_SIZE=128,MAX_SIZE=2048,GlyphAtlas=function(){this.width=DEFAULT_SIZE,this.height=DEFAULT_SIZE,this.atlas=new ShelfPack(this.width,this.height),this.index={},this.ids={},this.data=new Uint8Array(this.width*this.height)};GlyphAtlas.prototype.getGlyphs=function(){var t,i,e,h=this,r={};for(var s in h.ids)t=s.split(\"#\"),i=t[0],e=t[1],r[i]||(r[i]=[]),r[i].push(e);return r},GlyphAtlas.prototype.getRects=function(){var t,i,e,h=this,r={};for(var s in h.ids)t=s.split(\"#\"),i=t[0],e=t[1],r[i]||(r[i]={}),r[i][e]=h.index[s];return r},GlyphAtlas.prototype.addGlyph=function(t,i,e,h){var r=this;if(!e)return null;var s=i+\"#\"+e.id;if(this.index[s])return this.ids[s].indexOf(t)<0&&this.ids[s].push(t),this.index[s];if(!e.bitmap)return null;var a=e.width+2*h,E=e.height+2*h,n=1,l=a+2*n,T=E+2*n;l+=4-l%4,T+=4-T%4;var u=this.atlas.packOne(l,T);if(u||(this.resize(),u=this.atlas.packOne(l,T)),!u)return util.warnOnce(\"glyph bitmap overflow\"),null;this.index[s]=u,this.ids[s]=[t];for(var d=this.data,p=e.bitmap,A=0;A=MAX_SIZE||e>=MAX_SIZE)){this.texture&&(this.gl&&this.gl.deleteTexture(this.texture),this.texture=null),this.width*=SIZE_GROWTH_RATE,this.height*=SIZE_GROWTH_RATE,this.atlas.resize(this.width,this.height);for(var h=new ArrayBuffer(this.width*this.height),r=0;r65535)return a(\"glyphs > 65535 not supported\");void 0===this.loading[t]&&(this.loading[t]={});var l=this.loading[t];if(l[e])l[e].push(a);else{l[e]=[a];var i=256*e+\"-\"+(256*e+255),r=glyphUrl(t,i,this.url);ajax.getArrayBuffer(r,function(t,a){for(var i=!t&&new Glyphs(new Protobuf(a.data)),r=0;r1?2:1,this.canvas&&(this.canvas.width=this.width*this.pixelRatio,this.canvas.height=this.height*this.pixelRatio)),this.sprite=t},i.prototype.addIcons=function(t,i){for(var e=this,r=0;r1||(b?(clearTimeout(b),b=null,h(\"dblclick\",t)):b=setTimeout(l,300))}function i(e){f(\"touchmove\",e)}function c(e){f(\"touchend\",e)}function d(e){f(\"touchcancel\",e)}function l(){b=null}function s(e){var t=DOM.mousePos(g,e);t.equals(L)&&h(\"click\",e)}function v(e){h(\"dblclick\",e),e.preventDefault()}function m(t){var n=e.dragRotate&&e.dragRotate.isActive();E||n?E&&(p=t):h(\"contextmenu\",t),t.preventDefault()}function h(t,n){var o=DOM.mousePos(g,n);return e.fire(t,{lngLat:e.unproject(o),point:o,originalEvent:n})}function f(t,n){var o=DOM.touchPos(g,n),r=o.reduce(function(e,t,n,o){return e.add(t.div(o.length))},new Point(0,0));return e.fire(t,{lngLat:e.unproject(r),point:r,lngLats:o.map(function(t){return e.unproject(t)},this),points:o,originalEvent:n})}var g=e.getCanvasContainer(),p=null,E=!1,L=null,b=null;for(var q in handlers)e[q]=new handlers[q](e,t),t.interactive&&t[q]&&e[q].enable(t[q]);g.addEventListener(\"mouseout\",n,!1),g.addEventListener(\"mousedown\",o,!1),g.addEventListener(\"mouseup\",r,!1),g.addEventListener(\"mousemove\",a,!1),g.addEventListener(\"touchstart\",u,!1),g.addEventListener(\"touchend\",c,!1),g.addEventListener(\"touchmove\",i,!1),g.addEventListener(\"touchcancel\",d,!1),g.addEventListener(\"click\",s,!1),g.addEventListener(\"dblclick\",v,!1),g.addEventListener(\"contextmenu\",m,!1)};\n},{\"../util/dom\":199,\"./handler/box_zoom\":179,\"./handler/dblclick_zoom\":180,\"./handler/drag_pan\":181,\"./handler/drag_rotate\":182,\"./handler/keyboard\":183,\"./handler/scroll_zoom\":184,\"./handler/touch_zoom_rotate\":185,\"point-geometry\":26}],172:[function(require,module,exports){\n\"use strict\";var util=require(\"../util/util\"),interpolate=require(\"../util/interpolate\"),browser=require(\"../util/browser\"),LngLat=require(\"../geo/lng_lat\"),LngLatBounds=require(\"../geo/lng_lat_bounds\"),Point=require(\"point-geometry\"),Evented=require(\"../util/evented\"),Camera=function(t){function i(i,e){t.call(this),this.moving=!1,this.transform=i,this._bearingSnap=e.bearingSnap}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.getCenter=function(){return this.transform.center},i.prototype.setCenter=function(t,i){return this.jumpTo({center:t},i),this},i.prototype.panBy=function(t,i,e){return this.panTo(this.transform.center,util.extend({offset:Point.convert(t).mult(-1)},i),e),this},i.prototype.panTo=function(t,i,e){return this.easeTo(util.extend({center:t},i),e)},i.prototype.getZoom=function(){return this.transform.zoom},i.prototype.setZoom=function(t,i){return this.jumpTo({zoom:t},i),this},i.prototype.zoomTo=function(t,i,e){return this.easeTo(util.extend({zoom:t},i),e)},i.prototype.zoomIn=function(t,i){return this.zoomTo(this.getZoom()+1,t,i),this},i.prototype.zoomOut=function(t,i){return this.zoomTo(this.getZoom()-1,t,i),this},i.prototype.getBearing=function(){return this.transform.bearing},i.prototype.setBearing=function(t,i){return this.jumpTo({bearing:t},i),this},i.prototype.rotateTo=function(t,i,e){return this.easeTo(util.extend({bearing:t},i),e)},i.prototype.resetNorth=function(t,i){return this.rotateTo(0,util.extend({duration:1e3},t),i),this},i.prototype.snapToNorth=function(t,i){return Math.abs(this.getBearing())i?1:0}),[\"bottom\",\"left\",\"right\",\"top\"]))return void util.warnOnce(\"options.padding must be a positive number, or an Object with keys 'bottom', 'left', 'right', 'top'\");t=LngLatBounds.convert(t);var n=[i.padding.left-i.padding.right,i.padding.top-i.padding.bottom],r=Math.min(i.padding.right,i.padding.left),s=Math.min(i.padding.top,i.padding.bottom);i.offset=[i.offset[0]+n[0],i.offset[1]+n[1]];var a=Point.convert(i.offset),h=this.transform,u=h.project(t.getNorthWest()),p=h.project(t.getSouthEast()),c=p.sub(u),g=(h.width-2*r-2*Math.abs(a.x))/c.x,m=(h.height-2*s-2*Math.abs(a.y))/c.y;return m<0||g<0?void util.warnOnce(\"Map cannot fit within canvas with the given bounds, padding, and/or offset.\"):(i.center=h.unproject(u.add(p).div(2)),i.zoom=Math.min(h.scaleZoom(h.scale*Math.min(g,m)),i.maxZoom),i.bearing=0,i.linear?this.easeTo(i,e):this.flyTo(i,e))},i.prototype.jumpTo=function(t,i){this.stop();var e=this.transform,o=!1,n=!1,r=!1;return\"zoom\"in t&&e.zoom!==+t.zoom&&(o=!0,e.zoom=+t.zoom),\"center\"in t&&(e.center=LngLat.convert(t.center)),\"bearing\"in t&&e.bearing!==+t.bearing&&(n=!0,e.bearing=+t.bearing),\"pitch\"in t&&e.pitch!==+t.pitch&&(r=!0,e.pitch=+t.pitch),this.fire(\"movestart\",i).fire(\"move\",i),o&&this.fire(\"zoomstart\",i).fire(\"zoom\",i).fire(\"zoomend\",i),n&&this.fire(\"rotate\",i),r&&this.fire(\"pitch\",i),this.fire(\"moveend\",i)},i.prototype.easeTo=function(t,i){var e=this;this.stop(),t=util.extend({offset:[0,0],duration:500,easing:util.ease},t);var o,n,r=this.transform,s=Point.convert(t.offset),a=this.getZoom(),h=this.getBearing(),u=this.getPitch(),p=\"zoom\"in t?+t.zoom:a,c=\"bearing\"in t?this._normalizeBearing(t.bearing,h):h,g=\"pitch\"in t?+t.pitch:u;\"center\"in t?(o=LngLat.convert(t.center),n=r.centerPoint.add(s)):\"around\"in t?(o=LngLat.convert(t.around),n=r.locationPoint(o)):(n=r.centerPoint.add(s),o=r.pointLocation(n));var m=r.locationPoint(o);return t.animate===!1&&(t.duration=0),this.zooming=p!==a,this.rotating=h!==c,this.pitching=g!==u,t.smoothEasing&&0!==t.duration&&(t.easing=this._smoothOutEasing(t.duration)),t.noMoveStart||(this.moving=!0,this.fire(\"movestart\",i)),this.zooming&&this.fire(\"zoomstart\",i),clearTimeout(this._onEaseEnd),this._ease(function(t){this.zooming&&(r.zoom=interpolate(a,p,t)),this.rotating&&(r.bearing=interpolate(h,c,t)),this.pitching&&(r.pitch=interpolate(u,g,t)),r.setLocationAtPoint(o,m.add(n.sub(m)._mult(t))),this.fire(\"move\",i),this.zooming&&this.fire(\"zoom\",i),this.rotating&&this.fire(\"rotate\",i),this.pitching&&this.fire(\"pitch\",i)},function(){t.delayEndEvents?e._onEaseEnd=setTimeout(e._easeToEnd.bind(e,i),t.delayEndEvents):e._easeToEnd(i)},t),this},i.prototype._easeToEnd=function(t){var i=this.zooming;this.moving=!1,this.zooming=!1,this.rotating=!1,this.pitching=!1,i&&this.fire(\"zoomend\",t),this.fire(\"moveend\",t)},i.prototype.flyTo=function(t,i){function e(t){var i=(y*y-z*z+(t?-1:1)*E*E*_*_)/(2*(t?y:z)*E*_);return Math.log(Math.sqrt(i*i+1)-i)}function o(t){return(Math.exp(t)-Math.exp(-t))/2}function n(t){return(Math.exp(t)+Math.exp(-t))/2}function r(t){return o(t)/n(t)}this.stop(),t=util.extend({offset:[0,0],speed:1.2,curve:1.42,easing:util.ease},t);var s=this.transform,a=Point.convert(t.offset),h=this.getZoom(),u=this.getBearing(),p=this.getPitch(),c=\"center\"in t?LngLat.convert(t.center):this.getCenter(),g=\"zoom\"in t?+t.zoom:h,m=\"bearing\"in t?this._normalizeBearing(t.bearing,u):u,f=\"pitch\"in t?+t.pitch:p;Math.abs(s.center.lng)+Math.abs(c.lng)>180&&(s.center.lng>0&&c.lng<0?c.lng+=360:s.center.lng<0&&c.lng>0&&(c.lng-=360));var d=s.zoomScale(g-h),l=s.point,v=\"center\"in t?s.project(c).sub(a.div(d)):l,b=t.curve,z=Math.max(s.width,s.height),y=z/d,_=v.sub(l).mag();if(\"minZoom\"in t){var M=util.clamp(Math.min(t.minZoom,h,g),s.minZoom,s.maxZoom),T=z/s.zoomScale(M-h);b=Math.sqrt(T/_*2)}var E=b*b,x=e(0),L=function(t){return n(x)/n(x+b*t)},Z=function(t){return z*((n(x)*r(x+b*t)-o(x))/E)/_},P=(e(1)-x)/b;if(Math.abs(_)<1e-6){if(Math.abs(z-y)<1e-6)return this.easeTo(t,i);var j=y=0)return!1;return!0}),this._container.innerHTML=i.join(\" | \"),this._editLink=null}},AttributionControl.prototype._updateCompact=function(){var t=this._map.getCanvasContainer().offsetWidth<=640;this._container.classList[t?\"add\":\"remove\"](\"compact\")},module.exports=AttributionControl;\n},{\"../../util/dom\":199,\"../../util/util\":212}],174:[function(require,module,exports){\n\"use strict\";var DOM=require(\"../../util/dom\"),util=require(\"../../util/util\"),window=require(\"../../util/window\"),FullscreenControl=function(){this._fullscreen=!1,util.bindAll([\"_onClickFullscreen\",\"_changeIcon\"],this),\"onfullscreenchange\"in window.document?this._fullscreenchange=\"fullscreenchange\":\"onmozfullscreenchange\"in window.document?this._fullscreenchange=\"mozfullscreenchange\":\"onwebkitfullscreenchange\"in window.document?this._fullscreenchange=\"webkitfullscreenchange\":\"onmsfullscreenchange\"in window.document&&(this._fullscreenchange=\"MSFullscreenChange\")};FullscreenControl.prototype.onAdd=function(e){var n=\"mapboxgl-ctrl\",t=this._container=DOM.create(\"div\",n+\" mapboxgl-ctrl-group\"),l=this._fullscreenButton=DOM.create(\"button\",n+\"-icon \"+n+\"-fullscreen\",this._container);return l.setAttribute(\"aria-label\",\"Toggle fullscreen\"),l.type=\"button\",this._fullscreenButton.addEventListener(\"click\",this._onClickFullscreen),this._mapContainer=e.getContainer(),window.document.addEventListener(this._fullscreenchange,this._changeIcon),t},FullscreenControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},FullscreenControl.prototype._isFullscreen=function(){return this._fullscreen},FullscreenControl.prototype._changeIcon=function(e){if(e.target===this._mapContainer){this._fullscreen=!this._fullscreen;var n=\"mapboxgl-ctrl\";this._fullscreenButton.classList.toggle(n+\"-shrink\"),this._fullscreenButton.classList.toggle(n+\"-fullscreen\")}},FullscreenControl.prototype._onClickFullscreen=function(){this._isFullscreen()?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._mapContainer.requestFullscreen?this._mapContainer.requestFullscreen():this._mapContainer.mozRequestFullScreen?this._mapContainer.mozRequestFullScreen():this._mapContainer.msRequestFullscreen?this._mapContainer.msRequestFullscreen():this._mapContainer.webkitRequestFullscreen&&this._mapContainer.webkitRequestFullscreen()},module.exports=FullscreenControl;\n},{\"../../util/dom\":199,\"../../util/util\":212,\"../../util/window\":194}],175:[function(require,module,exports){\n\"use strict\";function checkGeolocationSupport(t){void 0!==supportsGeolocation?t(supportsGeolocation):void 0!==window.navigator.permissions?window.navigator.permissions.query({name:\"geolocation\"}).then(function(o){supportsGeolocation=\"denied\"!==o.state,t(supportsGeolocation)}):(supportsGeolocation=!!window.navigator.geolocation,t(supportsGeolocation))}var Evented=require(\"../../util/evented\"),DOM=require(\"../../util/dom\"),window=require(\"../../util/window\"),util=require(\"../../util/util\"),defaultGeoPositionOptions={enableHighAccuracy:!1,timeout:6e3},className=\"mapboxgl-ctrl\",supportsGeolocation,GeolocateControl=function(t){function o(o){t.call(this),this.options=o||{},util.bindAll([\"_onSuccess\",\"_onError\",\"_finish\",\"_setupUI\"],this)}return t&&(o.__proto__=t),o.prototype=Object.create(t&&t.prototype),o.prototype.constructor=o,o.prototype.onAdd=function(t){return this._map=t,this._container=DOM.create(\"div\",className+\" \"+className+\"-group\"),checkGeolocationSupport(this._setupUI),this._container},o.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map=void 0},o.prototype._onSuccess=function(t){this._map.jumpTo({center:[t.coords.longitude,t.coords.latitude],zoom:17,bearing:0,pitch:0}),this.fire(\"geolocate\",t),this._finish()},o.prototype._onError=function(t){this.fire(\"error\",t),this._finish()},o.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},o.prototype._setupUI=function(t){t!==!1&&(this._container.addEventListener(\"contextmenu\",function(t){return t.preventDefault()}),this._geolocateButton=DOM.create(\"button\",className+\"-icon \"+className+\"-geolocate\",this._container),this._geolocateButton.type=\"button\",this._geolocateButton.setAttribute(\"aria-label\",\"Geolocate\"),this.options.watchPosition&&this._geolocateButton.setAttribute(\"aria-pressed\",!1),this._geolocateButton.addEventListener(\"click\",this._onClickGeolocate.bind(this)))},o.prototype._onClickGeolocate=function(){var t=util.extend(defaultGeoPositionOptions,this.options&&this.options.positionOptions||{});this.options.watchPosition?void 0!==this._geolocationWatchID?(this._geolocateButton.classList.remove(\"watching\"),this._geolocateButton.setAttribute(\"aria-pressed\",!1),window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0):(this._geolocateButton.classList.add(\"watching\"),this._geolocateButton.setAttribute(\"aria-pressed\",!0),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,t)):(window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,t),this._timeoutId=setTimeout(this._finish,1e4))},o}(Evented);module.exports=GeolocateControl;\n},{\"../../util/dom\":199,\"../../util/evented\":200,\"../../util/util\":212,\"../../util/window\":194}],176:[function(require,module,exports){\n\"use strict\";var DOM=require(\"../../util/dom\"),util=require(\"../../util/util\"),LogoControl=function(){util.bindAll([\"_updateLogo\"],this)};LogoControl.prototype.onAdd=function(o){return this._map=o,this._container=DOM.create(\"div\",\"mapboxgl-ctrl\"),this._map.on(\"sourcedata\",this._updateLogo),this._updateLogo(),this._container},LogoControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off(\"sourcedata\",this._updateLogo)},LogoControl.prototype.getDefaultPosition=function(){return\"bottom-left\"},LogoControl.prototype._updateLogo=function(o){if(o&&\"metadata\"===o.sourceDataType)if(!this._container.childNodes.length&&this._logoRequired()){var t=DOM.create(\"a\",\"mapboxgl-ctrl-logo\");t.target=\"_blank\",t.href=\"https://www.mapbox.com/\",t.setAttribute(\"aria-label\",\"Mapbox logo\"),this._container.appendChild(t),this._map.off(\"data\",this._updateLogo)}else this._container.childNodes.length&&!this._logoRequired()&&this.onRemove()},LogoControl.prototype._logoRequired=function(){if(this._map.style){var o=this._map.style.sourceCaches;for(var t in o){var e=o[t].getSource();if(e.mapbox_logo)return!0}return!1}},module.exports=LogoControl;\n},{\"../../util/dom\":199,\"../../util/util\":212}],177:[function(require,module,exports){\n\"use strict\";function copyMouseEvent(t){return new window.MouseEvent(t.type,{button:2,buttons:2,bubbles:!0,cancelable:!0,detail:t.detail,view:t.view,screenX:t.screenX,screenY:t.screenY,clientX:t.clientX,clientY:t.clientY,movementX:t.movementX,movementY:t.movementY,ctrlKey:t.ctrlKey,shiftKey:t.shiftKey,altKey:t.altKey,metaKey:t.metaKey})}var DOM=require(\"../../util/dom\"),window=require(\"../../util/window\"),util=require(\"../../util/util\"),className=\"mapboxgl-ctrl\",NavigationControl=function(){util.bindAll([\"_rotateCompassArrow\"],this)};NavigationControl.prototype._rotateCompassArrow=function(){var t=\"rotate(\"+this._map.transform.angle*(180/Math.PI)+\"deg)\";this._compassArrow.style.transform=t},NavigationControl.prototype.onAdd=function(t){return this._map=t,this._container=DOM.create(\"div\",className+\" \"+className+\"-group\",t.getContainer()),this._container.addEventListener(\"contextmenu\",this._onContextMenu.bind(this)),this._zoomInButton=this._createButton(className+\"-icon \"+className+\"-zoom-in\",\"Zoom In\",t.zoomIn.bind(t)),this._zoomOutButton=this._createButton(className+\"-icon \"+className+\"-zoom-out\",\"Zoom Out\",t.zoomOut.bind(t)),this._compass=this._createButton(className+\"-icon \"+className+\"-compass\",\"Reset North\",t.resetNorth.bind(t)),this._compassArrow=DOM.create(\"span\",className+\"-compass-arrow\",this._compass),this._compass.addEventListener(\"mousedown\",this._onCompassDown.bind(this)),this._onCompassMove=this._onCompassMove.bind(this),this._onCompassUp=this._onCompassUp.bind(this),this._map.on(\"rotate\",this._rotateCompassArrow),this._rotateCompassArrow(),this._container},NavigationControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off(\"rotate\",this._rotateCompassArrow),this._map=void 0},NavigationControl.prototype._onContextMenu=function(t){t.preventDefault()},NavigationControl.prototype._onCompassDown=function(t){0===t.button&&(DOM.disableDrag(),window.document.addEventListener(\"mousemove\",this._onCompassMove),window.document.addEventListener(\"mouseup\",this._onCompassUp),this._map.getCanvasContainer().dispatchEvent(copyMouseEvent(t)),t.stopPropagation())},NavigationControl.prototype._onCompassMove=function(t){0===t.button&&(this._map.getCanvasContainer().dispatchEvent(copyMouseEvent(t)),t.stopPropagation())},NavigationControl.prototype._onCompassUp=function(t){0===t.button&&(window.document.removeEventListener(\"mousemove\",this._onCompassMove),window.document.removeEventListener(\"mouseup\",this._onCompassUp),DOM.enableDrag(),this._map.getCanvasContainer().dispatchEvent(copyMouseEvent(t)),t.stopPropagation())},NavigationControl.prototype._createButton=function(t,o,e){var n=DOM.create(\"button\",t,this._container);return n.type=\"button\",n.setAttribute(\"aria-label\",o),n.addEventListener(\"click\",function(){e()}),n},module.exports=NavigationControl;\n},{\"../../util/dom\":199,\"../../util/util\":212,\"../../util/window\":194}],178:[function(require,module,exports){\n\"use strict\";function updateScale(t,e,o){var n=o&&o.maxWidth||100,i=t._container.clientHeight/2,a=getDistance(t.unproject([0,i]),t.unproject([n,i]));if(o&&\"imperial\"===o.unit){var r=3.2808*a;if(r>5280){var l=r/5280;setScale(e,n,l,\"mi\")}else setScale(e,n,r,\"ft\")}else setScale(e,n,a,\"m\")}function setScale(t,e,o,n){var i=getRoundNum(o),a=i/o;\"m\"===n&&i>=1e3&&(i/=1e3,n=\"km\"),t.style.width=e*a+\"px\",t.innerHTML=i+n}function getDistance(t,e){var o=6371e3,n=Math.PI/180,i=t.lat*n,a=e.lat*n,r=Math.sin(i)*Math.sin(a)+Math.cos(i)*Math.cos(a)*Math.cos((e.lng-t.lng)*n),l=o*Math.acos(Math.min(r,1));return l}function getRoundNum(t){var e=Math.pow(10,(\"\"+Math.floor(t)).length-1),o=t/e;return o=o>=10?10:o>=5?5:o>=3?3:o>=2?2:1,e*o}var DOM=require(\"../../util/dom\"),util=require(\"../../util/util\"),ScaleControl=function(t){this.options=t,util.bindAll([\"_onMove\"],this)};ScaleControl.prototype.getDefaultPosition=function(){return\"bottom-left\"},ScaleControl.prototype._onMove=function(){updateScale(this._map,this._container,this.options)},ScaleControl.prototype.onAdd=function(t){return this._map=t,this._container=DOM.create(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-scale\",t.getContainer()),this._map.on(\"move\",this._onMove),this._onMove(),this._container},ScaleControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off(\"move\",this._onMove),this._map=void 0},module.exports=ScaleControl;\n},{\"../../util/dom\":199,\"../../util/util\":212}],179:[function(require,module,exports){\n\"use strict\";var DOM=require(\"../../util/dom\"),LngLatBounds=require(\"../../geo/lng_lat_bounds\"),util=require(\"../../util/util\"),window=require(\"../../util/window\"),BoxZoomHandler=function(o){this._map=o,this._el=o.getCanvasContainer(),this._container=o.getContainer(),util.bindAll([\"_onMouseDown\",\"_onMouseMove\",\"_onMouseUp\",\"_onKeyDown\"],this)};BoxZoomHandler.prototype.isEnabled=function(){return!!this._enabled},BoxZoomHandler.prototype.isActive=function(){return!!this._active},BoxZoomHandler.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener(\"mousedown\",this._onMouseDown,!1),this._enabled=!0)},BoxZoomHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener(\"mousedown\",this._onMouseDown),this._enabled=!1)},BoxZoomHandler.prototype._onMouseDown=function(o){o.shiftKey&&0===o.button&&(window.document.addEventListener(\"mousemove\",this._onMouseMove,!1),window.document.addEventListener(\"keydown\",this._onKeyDown,!1),window.document.addEventListener(\"mouseup\",this._onMouseUp,!1),DOM.disableDrag(),this._startPos=DOM.mousePos(this._el,o),this._active=!0)},BoxZoomHandler.prototype._onMouseMove=function(o){var e=this._startPos,t=DOM.mousePos(this._el,o);this._box||(this._box=DOM.create(\"div\",\"mapboxgl-boxzoom\",this._container),this._container.classList.add(\"mapboxgl-crosshair\"),this._fireEvent(\"boxzoomstart\",o));var n=Math.min(e.x,t.x),i=Math.max(e.x,t.x),s=Math.min(e.y,t.y),r=Math.max(e.y,t.y);DOM.setTransform(this._box,\"translate(\"+n+\"px,\"+s+\"px)\"),this._box.style.width=i-n+\"px\",this._box.style.height=r-s+\"px\"},BoxZoomHandler.prototype._onMouseUp=function(o){if(0===o.button){var e=this._startPos,t=DOM.mousePos(this._el,o),n=(new LngLatBounds).extend(this._map.unproject(e)).extend(this._map.unproject(t));this._finish(),e.x===t.x&&e.y===t.y?this._fireEvent(\"boxzoomcancel\",o):this._map.fitBounds(n,{linear:!0}).fire(\"boxzoomend\",{originalEvent:o,boxZoomBounds:n})}},BoxZoomHandler.prototype._onKeyDown=function(o){27===o.keyCode&&(this._finish(),this._fireEvent(\"boxzoomcancel\",o))},BoxZoomHandler.prototype._finish=function(){this._active=!1,window.document.removeEventListener(\"mousemove\",this._onMouseMove,!1),window.document.removeEventListener(\"keydown\",this._onKeyDown,!1),window.document.removeEventListener(\"mouseup\",this._onMouseUp,!1),this._container.classList.remove(\"mapboxgl-crosshair\"),this._box&&(this._box.parentNode.removeChild(this._box),this._box=null),DOM.enableDrag()},BoxZoomHandler.prototype._fireEvent=function(o,e){return this._map.fire(o,{originalEvent:e})},module.exports=BoxZoomHandler;\n},{\"../../geo/lng_lat_bounds\":63,\"../../util/dom\":199,\"../../util/util\":212,\"../../util/window\":194}],180:[function(require,module,exports){\n\"use strict\";var DoubleClickZoomHandler=function(o){this._map=o,this._onDblClick=this._onDblClick.bind(this)};DoubleClickZoomHandler.prototype.isEnabled=function(){return!!this._enabled},DoubleClickZoomHandler.prototype.enable=function(){this.isEnabled()||(this._map.on(\"dblclick\",this._onDblClick),this._enabled=!0)},DoubleClickZoomHandler.prototype.disable=function(){this.isEnabled()&&(this._map.off(\"dblclick\",this._onDblClick),this._enabled=!1)},DoubleClickZoomHandler.prototype._onDblClick=function(o){this._map.zoomTo(this._map.getZoom()+(o.originalEvent.shiftKey?-1:1),{around:o.lngLat},o)},module.exports=DoubleClickZoomHandler;\n},{}],181:[function(require,module,exports){\n\"use strict\";var DOM=require(\"../../util/dom\"),util=require(\"../../util/util\"),window=require(\"../../util/window\"),inertiaLinearity=.3,inertiaEasing=util.bezier(0,0,inertiaLinearity,1),inertiaMaxSpeed=1400,inertiaDeceleration=2500,DragPanHandler=function(t){this._map=t,this._el=t.getCanvasContainer(),util.bindAll([\"_onDown\",\"_onMove\",\"_onUp\",\"_onTouchEnd\",\"_onMouseUp\"],this)};DragPanHandler.prototype.isEnabled=function(){return!!this._enabled},DragPanHandler.prototype.isActive=function(){return!!this._active},DragPanHandler.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener(\"mousedown\",this._onDown),this._el.addEventListener(\"touchstart\",this._onDown),this._enabled=!0)},DragPanHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener(\"mousedown\",this._onDown),this._el.removeEventListener(\"touchstart\",this._onDown),this._enabled=!1)},DragPanHandler.prototype._onDown=function(t){this._ignoreEvent(t)||this.isActive()||(t.touches?(window.document.addEventListener(\"touchmove\",this._onMove),window.document.addEventListener(\"touchend\",this._onTouchEnd)):(window.document.addEventListener(\"mousemove\",this._onMove),window.document.addEventListener(\"mouseup\",this._onMouseUp)),window.addEventListener(\"blur\",this._onMouseUp),this._active=!1,this._startPos=this._pos=DOM.mousePos(this._el,t),this._inertia=[[Date.now(),this._pos]])},DragPanHandler.prototype._onMove=function(t){if(!this._ignoreEvent(t)){this.isActive()||(this._active=!0,this._map.moving=!0,this._fireEvent(\"dragstart\",t),this._fireEvent(\"movestart\",t));var e=DOM.mousePos(this._el,t),n=this._map;n.stop(),this._drainInertiaBuffer(),this._inertia.push([Date.now(),e]),n.transform.setLocationAtPoint(n.transform.pointLocation(this._pos),e),this._fireEvent(\"drag\",t),this._fireEvent(\"move\",t),this._pos=e,t.preventDefault()}},DragPanHandler.prototype._onUp=function(t){var e=this;if(this.isActive()){this._active=!1,this._fireEvent(\"dragend\",t),this._drainInertiaBuffer();var n=function(){e._map.moving=!1,e._fireEvent(\"moveend\",t)},i=this._inertia;if(i.length<2)return void n();var o=i[i.length-1],r=i[0],a=o[1].sub(r[1]),s=(o[0]-r[0])/1e3;if(0===s||o[1].equals(r[1]))return void n();var u=a.mult(inertiaLinearity/s),d=u.mag();d>inertiaMaxSpeed&&(d=inertiaMaxSpeed,u._unit()._mult(d));var h=d/(inertiaDeceleration*inertiaLinearity),v=u.mult(-h/2);this._map.panBy(v,{duration:1e3*h,easing:inertiaEasing,noMoveStart:!0},{originalEvent:t})}},DragPanHandler.prototype._onMouseUp=function(t){this._ignoreEvent(t)||(this._onUp(t),window.document.removeEventListener(\"mousemove\",this._onMove),window.document.removeEventListener(\"mouseup\",this._onMouseUp),window.removeEventListener(\"blur\",this._onMouseUp))},DragPanHandler.prototype._onTouchEnd=function(t){this._ignoreEvent(t)||(this._onUp(t),window.document.removeEventListener(\"touchmove\",this._onMove),window.document.removeEventListener(\"touchend\",this._onTouchEnd))},DragPanHandler.prototype._fireEvent=function(t,e){return this._map.fire(t,{originalEvent:e})},DragPanHandler.prototype._ignoreEvent=function(t){var e=this._map;if(e.boxZoom&&e.boxZoom.isActive())return!0;if(e.dragRotate&&e.dragRotate.isActive())return!0;if(t.touches)return t.touches.length>1;if(t.ctrlKey)return!0;var n=1,i=0;return\"mousemove\"===t.type?t.buttons&0===n:t.button&&t.button!==i},DragPanHandler.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now(),n=160;t.length>0&&e-t[0][0]>n;)t.shift()},module.exports=DragPanHandler;\n},{\"../../util/dom\":199,\"../../util/util\":212,\"../../util/window\":194}],182:[function(require,module,exports){\n\"use strict\";var DOM=require(\"../../util/dom\"),util=require(\"../../util/util\"),window=require(\"../../util/window\"),inertiaLinearity=.25,inertiaEasing=util.bezier(0,0,inertiaLinearity,1),inertiaMaxSpeed=180,inertiaDeceleration=720,DragRotateHandler=function(t,e){this._map=t,this._el=t.getCanvasContainer(),this._bearingSnap=e.bearingSnap,this._pitchWithRotate=e.pitchWithRotate!==!1,util.bindAll([\"_onDown\",\"_onMove\",\"_onUp\"],this)};DragRotateHandler.prototype.isEnabled=function(){return!!this._enabled},DragRotateHandler.prototype.isActive=function(){return!!this._active},DragRotateHandler.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener(\"mousedown\",this._onDown),this._enabled=!0)},DragRotateHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener(\"mousedown\",this._onDown),this._enabled=!1)},DragRotateHandler.prototype._onDown=function(t){this._ignoreEvent(t)||this.isActive()||(window.document.addEventListener(\"mousemove\",this._onMove),window.document.addEventListener(\"mouseup\",this._onUp),window.addEventListener(\"blur\",this._onUp),this._active=!1,this._inertia=[[Date.now(),this._map.getBearing()]],this._startPos=this._pos=DOM.mousePos(this._el,t),this._center=this._map.transform.centerPoint,t.preventDefault())},DragRotateHandler.prototype._onMove=function(t){if(!this._ignoreEvent(t)){this.isActive()||(this._active=!0,this._map.moving=!0,this._fireEvent(\"rotatestart\",t),this._fireEvent(\"movestart\",t));var e=this._map;e.stop();var i=this._pos,n=DOM.mousePos(this._el,t),r=.8*(i.x-n.x),a=(i.y-n.y)*-.5,o=e.getBearing()-r,s=e.getPitch()-a,h=this._inertia,v=h[h.length-1];this._drainInertiaBuffer(),h.push([Date.now(),e._normalizeBearing(o,v[1])]),e.transform.bearing=o,this._pitchWithRotate&&(e.transform.pitch=s),this._fireEvent(\"rotate\",t),this._fireEvent(\"move\",t),this._pos=n}},DragRotateHandler.prototype._onUp=function(t){var e=this;if(!this._ignoreEvent(t)&&(window.document.removeEventListener(\"mousemove\",this._onMove),window.document.removeEventListener(\"mouseup\",this._onUp),window.removeEventListener(\"blur\",this._onUp),this.isActive())){this._active=!1,this._fireEvent(\"rotateend\",t),this._drainInertiaBuffer();var i=this._map,n=i.getBearing(),r=this._inertia,a=function(){Math.abs(n)inertiaMaxSpeed&&(p=inertiaMaxSpeed);var l=p/(inertiaDeceleration*inertiaLinearity),g=u*p*(l/2);v+=g,Math.abs(i._normalizeBearing(v,0))1;var i=t.ctrlKey?1:2,n=t.ctrlKey?0:2,r=t.button;return\"undefined\"!=typeof InstallTrigger&&2===t.button&&t.ctrlKey&&window.navigator.platform.toUpperCase().indexOf(\"MAC\")>=0&&(r=0),\"mousemove\"===t.type?t.buttons&0===i:!this.isActive()&&r!==n},DragRotateHandler.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now(),i=160;t.length>0&&e-t[0][0]>i;)t.shift()},module.exports=DragRotateHandler;\n},{\"../../util/dom\":199,\"../../util/util\":212,\"../../util/window\":194}],183:[function(require,module,exports){\n\"use strict\";function easeOut(e){return e*(2-e)}var panStep=100,bearingStep=15,pitchStep=10,KeyboardHandler=function(e){this._map=e,this._el=e.getCanvasContainer(),this._onKeyDown=this._onKeyDown.bind(this)};KeyboardHandler.prototype.isEnabled=function(){return!!this._enabled},KeyboardHandler.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener(\"keydown\",this._onKeyDown,!1),this._enabled=!0)},KeyboardHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener(\"keydown\",this._onKeyDown),this._enabled=!1)},KeyboardHandler.prototype._onKeyDown=function(e){if(!(e.altKey||e.ctrlKey||e.metaKey)){var t=0,n=0,a=0,i=0,r=0;switch(e.keyCode){case 61:case 107:case 171:case 187:t=1;break;case 189:case 109:case 173:t=-1;break;case 37:e.shiftKey?n=-1:(e.preventDefault(),i=-1);break;case 39:e.shiftKey?n=1:(e.preventDefault(),i=1);break;case 38:e.shiftKey?a=1:(e.preventDefault(),r=-1);break;case 40:e.shiftKey?a=-1:(r=1,e.preventDefault())}var s=this._map,o=s.getZoom(),d={duration:300,delayEndEvents:500,easing:easeOut,zoom:t?Math.round(o)+t*(e.shiftKey?2:1):o,bearing:s.getBearing()+n*bearingStep,pitch:s.getPitch()+a*pitchStep,offset:[-i*panStep,-r*panStep],center:s.getCenter()};s.easeTo(d,{originalEvent:e})}},module.exports=KeyboardHandler;\n},{}],184:[function(require,module,exports){\n\"use strict\";var DOM=require(\"../../util/dom\"),util=require(\"../../util/util\"),browser=require(\"../../util/browser\"),window=require(\"../../util/window\"),ua=window.navigator.userAgent.toLowerCase(),firefox=ua.indexOf(\"firefox\")!==-1,safari=ua.indexOf(\"safari\")!==-1&&ua.indexOf(\"chrom\")===-1,ScrollZoomHandler=function(e){this._map=e,this._el=e.getCanvasContainer(),util.bindAll([\"_onWheel\",\"_onTimeout\"],this)};ScrollZoomHandler.prototype.isEnabled=function(){return!!this._enabled},ScrollZoomHandler.prototype.enable=function(e){this.isEnabled()||(this._el.addEventListener(\"wheel\",this._onWheel,!1),this._el.addEventListener(\"mousewheel\",this._onWheel,!1),this._enabled=!0,this._aroundCenter=e&&\"center\"===e.around)},ScrollZoomHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener(\"wheel\",this._onWheel),this._el.removeEventListener(\"mousewheel\",this._onWheel),this._enabled=!1)},ScrollZoomHandler.prototype._onWheel=function(e){var t;\"wheel\"===e.type?(t=e.deltaY,firefox&&e.deltaMode===window.WheelEvent.DOM_DELTA_PIXEL&&(t/=browser.devicePixelRatio),e.deltaMode===window.WheelEvent.DOM_DELTA_LINE&&(t*=40)):\"mousewheel\"===e.type&&(t=-e.wheelDeltaY,safari&&(t/=3));var o=browser.now(),i=o-(this._time||0);this._pos=DOM.mousePos(this._el,e),this._time=o,0!==t&&t%4.000244140625===0?this._type=\"wheel\":0!==t&&Math.abs(t)<4?this._type=\"trackpad\":i>400?(this._type=null,this._lastValue=t,this._timeout=setTimeout(this._onTimeout,40)):this._type||(this._type=Math.abs(i*t)<200?\"trackpad\":\"wheel\",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,t+=this._lastValue)),e.shiftKey&&t&&(t/=4),this._type&&this._zoom(-t,e),e.preventDefault()},ScrollZoomHandler.prototype._onTimeout=function(){this._type=\"wheel\",this._zoom(-this._lastValue)},ScrollZoomHandler.prototype._zoom=function(e,t){if(0!==e){var o=this._map,i=2/(1+Math.exp(-Math.abs(e/100)));e<0&&0!==i&&(i=1/i);var l=o.ease?o.ease.to:o.transform.scale,s=o.transform.scaleZoom(l*i);o.zoomTo(s,{duration:\"wheel\"===this._type?200:0,around:this._aroundCenter?o.getCenter():o.unproject(this._pos),delayEndEvents:200,smoothEasing:!0},{originalEvent:t})}},module.exports=ScrollZoomHandler;\n},{\"../../util/browser\":192,\"../../util/dom\":199,\"../../util/util\":212,\"../../util/window\":194}],185:[function(require,module,exports){\n\"use strict\";var DOM=require(\"../../util/dom\"),util=require(\"../../util/util\"),window=require(\"../../util/window\"),inertiaLinearity=.15,inertiaEasing=util.bezier(0,0,inertiaLinearity,1),inertiaDeceleration=12,inertiaMaxSpeed=2.5,significantScaleThreshold=.15,significantRotateThreshold=4,TouchZoomRotateHandler=function(t){this._map=t,this._el=t.getCanvasContainer(),util.bindAll([\"_onStart\",\"_onMove\",\"_onEnd\"],this)};TouchZoomRotateHandler.prototype.isEnabled=function(){return!!this._enabled},TouchZoomRotateHandler.prototype.enable=function(t){this.isEnabled()||(this._el.addEventListener(\"touchstart\",this._onStart,!1),this._enabled=!0,this._aroundCenter=t&&\"center\"===t.around)},TouchZoomRotateHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener(\"touchstart\",this._onStart),this._enabled=!1)},TouchZoomRotateHandler.prototype.disableRotation=function(){this._rotationDisabled=!0},TouchZoomRotateHandler.prototype.enableRotation=function(){this._rotationDisabled=!1},TouchZoomRotateHandler.prototype._onStart=function(t){if(2===t.touches.length){var e=DOM.mousePos(this._el,t.touches[0]),o=DOM.mousePos(this._el,t.touches[1]);this._startVec=e.sub(o),this._startScale=this._map.transform.scale,this._startBearing=this._map.transform.bearing,this._gestureIntent=void 0,this._inertia=[],window.document.addEventListener(\"touchmove\",this._onMove,!1),window.document.addEventListener(\"touchend\",this._onEnd,!1)}},TouchZoomRotateHandler.prototype._onMove=function(t){if(2===t.touches.length){var e=DOM.mousePos(this._el,t.touches[0]),o=DOM.mousePos(this._el,t.touches[1]),i=e.add(o).div(2),n=e.sub(o),a=n.mag()/this._startVec.mag(),r=this._rotationDisabled?0:180*n.angleWith(this._startVec)/Math.PI,s=this._map;if(this._gestureIntent){var h={duration:0,around:s.unproject(i)};\"rotate\"===this._gestureIntent&&(h.bearing=this._startBearing+r),\"zoom\"!==this._gestureIntent&&\"rotate\"!==this._gestureIntent||(h.zoom=s.transform.scaleZoom(this._startScale*a)),s.stop(),this._drainInertiaBuffer(),this._inertia.push([Date.now(),a,i]),s.easeTo(h,{originalEvent:t})}else{var u=Math.abs(1-a)>significantScaleThreshold,d=Math.abs(r)>significantRotateThreshold;d?this._gestureIntent=\"rotate\":u&&(this._gestureIntent=\"zoom\"),this._gestureIntent&&(this._startVec=n,this._startScale=s.transform.scale,this._startBearing=s.transform.bearing)}t.preventDefault()}},TouchZoomRotateHandler.prototype._onEnd=function(t){window.document.removeEventListener(\"touchmove\",this._onMove),window.document.removeEventListener(\"touchend\",this._onEnd),this._drainInertiaBuffer();var e=this._inertia,o=this._map;if(e.length<2)return void o.snapToNorth({},{originalEvent:t});var i=e[e.length-1],n=e[0],a=o.transform.scaleZoom(this._startScale*i[1]),r=o.transform.scaleZoom(this._startScale*n[1]),s=a-r,h=(i[0]-n[0])/1e3,u=i[2];if(0===h||a===r)return void o.snapToNorth({},{originalEvent:t});var d=s*inertiaLinearity/h;Math.abs(d)>inertiaMaxSpeed&&(d=d>0?inertiaMaxSpeed:-inertiaMaxSpeed);var l=1e3*Math.abs(d/(inertiaDeceleration*inertiaLinearity)),c=a+d*l/2e3;c<0&&(c=0),o.easeTo({zoom:c,duration:l,easing:inertiaEasing,around:this._aroundCenter?o.getCenter():o.unproject(u)},{originalEvent:t})},TouchZoomRotateHandler.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now(),o=160;t.length>2&&e-t[0][0]>o;)t.shift()},module.exports=TouchZoomRotateHandler;\n},{\"../../util/dom\":199,\"../../util/util\":212,\"../../util/window\":194}],186:[function(require,module,exports){\n\"use strict\";var util=require(\"../util/util\"),window=require(\"../util/window\"),Hash=function(){util.bindAll([\"_onHashChange\",\"_updateHash\"],this)};Hash.prototype.addTo=function(t){return this._map=t,window.addEventListener(\"hashchange\",this._onHashChange,!1),this._map.on(\"moveend\",this._updateHash),this},Hash.prototype.remove=function(){return window.removeEventListener(\"hashchange\",this._onHashChange,!1),this._map.off(\"moveend\",this._updateHash),delete this._map,this},Hash.prototype._onHashChange=function(){var t=window.location.hash.replace(\"#\",\"\").split(\"/\");return t.length>=3&&(this._map.jumpTo({center:[+t[2],+t[1]],zoom:+t[0],bearing:+(t[3]||0),pitch:+(t[4]||0)}),!0)},Hash.prototype._updateHash=function(){var t=this._map.getCenter(),e=this._map.getZoom(),a=this._map.getBearing(),h=this._map.getPitch(),i=Math.max(0,Math.ceil(Math.log(e)/Math.LN2)),n=\"#\"+Math.round(100*e)/100+\"/\"+t.lat.toFixed(i)+\"/\"+t.lng.toFixed(i);(a||h)&&(n+=\"/\"+Math.round(10*a)/10),h&&(n+=\"/\"+Math.round(h)),window.history.replaceState(\"\",\"\",n)},module.exports=Hash;\n},{\"../util/util\":212,\"../util/window\":194}],187:[function(require,module,exports){\n\"use strict\";function removeNode(t){t.parentNode&&t.parentNode.removeChild(t)}var util=require(\"../util/util\"),browser=require(\"../util/browser\"),window=require(\"../util/window\"),DOM=require(\"../util/dom\"),Style=require(\"../style/style\"),AnimationLoop=require(\"../style/animation_loop\"),Painter=require(\"../render/painter\"),Transform=require(\"../geo/transform\"),Hash=require(\"./hash\"),bindHandlers=require(\"./bind_handlers\"),Camera=require(\"./camera\"),LngLat=require(\"../geo/lng_lat\"),LngLatBounds=require(\"../geo/lng_lat_bounds\"),Point=require(\"point-geometry\"),AttributionControl=require(\"./control/attribution_control\"),LogoControl=require(\"./control/logo_control\"),isSupported=require(\"mapbox-gl-supported\"),defaultMinZoom=0,defaultMaxZoom=22,defaultOptions={center:[0,0],zoom:0,bearing:0,pitch:0,minZoom:defaultMinZoom,maxZoom:defaultMaxZoom,interactive:!0,scrollZoom:!0,boxZoom:!0,dragRotate:!0,dragPan:!0,keyboard:!0,doubleClickZoom:!0,touchZoomRotate:!0,bearingSnap:7,hash:!1,attributionControl:!0,failIfMajorPerformanceCaveat:!1,preserveDrawingBuffer:!1,trackResize:!0,renderWorldCopies:!0,refreshExpiredTiles:!0},Map=function(t){function e(e){var o=this;if(e=util.extend({},defaultOptions,e),null!=e.minZoom&&null!=e.maxZoom&&e.minZoom>e.maxZoom)throw new Error(\"maxZoom must be greater than minZoom\");var i=new Transform(e.minZoom,e.maxZoom,e.renderWorldCopies);if(t.call(this,i,e),this._interactive=e.interactive,this._failIfMajorPerformanceCaveat=e.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=e.preserveDrawingBuffer,this._trackResize=e.trackResize,this._bearingSnap=e.bearingSnap,this._refreshExpiredTiles=e.refreshExpiredTiles,\"string\"==typeof e.container){if(this._container=window.document.getElementById(e.container),!this._container)throw new Error(\"Container '\"+e.container+\"' not found.\")}else this._container=e.container;this.animationLoop=new AnimationLoop,e.maxBounds&&this.setMaxBounds(e.maxBounds),util.bindAll([\"_onWindowOnline\",\"_onWindowResize\",\"_contextLost\",\"_contextRestored\",\"_update\",\"_render\",\"_onData\",\"_onDataLoading\"],this),this._setupContainer(),this._setupPainter(),this.on(\"move\",this._update.bind(this,!1)),this.on(\"zoom\",this._update.bind(this,!0)),this.on(\"moveend\",function(){o.animationLoop.set(300),o._rerender()}),\"undefined\"!=typeof window&&(window.addEventListener(\"online\",this._onWindowOnline,!1),window.addEventListener(\"resize\",this._onWindowResize,!1)),bindHandlers(this,e),this._hash=e.hash&&(new Hash).addTo(this),this._hash&&this._hash._onHashChange()||this.jumpTo({center:e.center,zoom:e.zoom,bearing:e.bearing,pitch:e.pitch}),this._classes=[],this.resize(),e.classes&&this.setClasses(e.classes),e.style&&this.setStyle(e.style),e.attributionControl&&this.addControl(new AttributionControl),this.addControl(new LogoControl,e.logoPosition),this.on(\"style.load\",function(){this.transform.unmodified&&this.jumpTo(this.style.stylesheet),this.style.update(this._classes,{transition:!1})}),this.on(\"data\",this._onData),this.on(\"dataloading\",this._onDataLoading)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var o={showTileBoundaries:{},showCollisionBoxes:{},showOverdrawInspector:{},repaint:{},vertices:{}};return e.prototype.addControl=function(t,e){void 0===e&&t.getDefaultPosition&&(e=t.getDefaultPosition()),void 0===e&&(e=\"top-right\");var o=t.onAdd(this),i=this._controlPositions[e];return e.indexOf(\"bottom\")!==-1?i.insertBefore(o,i.firstChild):i.appendChild(o),this},e.prototype.removeControl=function(t){return t.onRemove(this),this},e.prototype.addClass=function(t,e){return util.warnOnce(\"Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.\"),this._classes.indexOf(t)>=0||\"\"===t?this:(this._classes.push(t),this._classOptions=e,this.style&&this.style.updateClasses(),this._update(!0))},e.prototype.removeClass=function(t,e){util.warnOnce(\"Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.\");var o=this._classes.indexOf(t);return o<0||\"\"===t?this:(this._classes.splice(o,1),this._classOptions=e,this.style&&this.style.updateClasses(),this._update(!0))},e.prototype.setClasses=function(t,e){util.warnOnce(\"Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.\");for(var o={},i=0;i=0},e.prototype.getClasses=function(){return util.warnOnce(\"Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.\"),this._classes},e.prototype.resize=function(){var t=this._containerDimensions(),e=t[0],o=t[1];return this._resizeCanvas(e,o),this.transform.resize(e,o),this.painter.resize(e,o),this.fire(\"movestart\").fire(\"move\").fire(\"resize\").fire(\"moveend\")},e.prototype.getBounds=function(){var t=new LngLatBounds(this.transform.pointLocation(new Point(0,this.transform.height)),this.transform.pointLocation(new Point(this.transform.width,0)));return(this.transform.angle||this.transform.pitch)&&(t.extend(this.transform.pointLocation(new Point(this.transform.size.x,0))),t.extend(this.transform.pointLocation(new Point(0,this.transform.size.y)))),t},e.prototype.setMaxBounds=function(t){if(t){var e=LngLatBounds.convert(t);this.transform.lngRange=[e.getWest(),e.getEast()],this.transform.latRange=[e.getSouth(),e.getNorth()],this.transform._constrain(),this._update()}else null!==t&&void 0!==t||(this.transform.lngRange=[],this.transform.latRange=[],this._update());return this},e.prototype.setMinZoom=function(t){if(t=null===t||void 0===t?defaultMinZoom:t,t>=defaultMinZoom&&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\")},e.prototype.getMaxZoom=function(){return this.transform.maxZoom},e.prototype.project=function(t){return this.transform.locationPoint(LngLat.convert(t))},e.prototype.unproject=function(t){return this.transform.pointLocation(Point.convert(t))},e.prototype.queryRenderedFeatures=function(){function t(t){return t instanceof Point||Array.isArray(t)}var e,o={};return 2===arguments.length?(e=arguments[0],o=arguments[1]):1===arguments.length&&t(arguments[0])?e=arguments[0]:1===arguments.length&&(o=arguments[0]),this.style.queryRenderedFeatures(this._makeQueryGeometry(e),o,this.transform.zoom,this.transform.angle)},e.prototype._makeQueryGeometry=function(t){var e=this;void 0===t&&(t=[Point.convert([0,0]),Point.convert([this.transform.width,this.transform.height])]);var o,i=t instanceof Point||\"number\"==typeof t[0];if(i){var r=Point.convert(t);o=[r]}else{var s=[Point.convert(t[0]),Point.convert(t[1])];o=[s[0],new Point(s[1].x,s[0].y),s[1],new Point(s[0].x,s[1].y),s[0]]}return o=o.map(function(t){return e.transform.pointCoordinate(t)})},e.prototype.querySourceFeatures=function(t,e){return this.style.querySourceFeatures(t,e)},e.prototype.setStyle=function(t,e){var o=(!e||e.diff!==!1)&&this.style&&t&&!(t instanceof Style)&&\"string\"!=typeof t;if(o)try{return this.style.setState(t)&&this._update(!0),this}catch(t){util.warnOnce(\"Unable to perform style diff: \"+(t.message||t.error||t)+\". Rebuilding the style from scratch.\")}return this.style&&(this.style.setEventedParent(null),this.style._remove(),this.off(\"rotate\",this.style._redoPlacement),this.off(\"pitch\",this.style._redoPlacement)),t?(t instanceof Style?this.style=t:this.style=new Style(t,this),this.style.setEventedParent(this,{style:this.style}),this.on(\"rotate\",this.style._redoPlacement),this.on(\"pitch\",this.style._redoPlacement),this):(this.style=null,this)},e.prototype.getStyle=function(){if(this.style)return this.style.serialize()},e.prototype.addSource=function(t,e){return this.style.addSource(t,e),this._update(!0),this},e.prototype.isSourceLoaded=function(t){var e=this.style&&this.style.sourceCaches[t];return void 0===e?void this.fire(\"error\",{error:new Error(\"There is no source with ID '\"+t+\"'\")}):e.loaded()},e.prototype.addSourceType=function(t,e,o){return this.style.addSourceType(t,e,o)},e.prototype.removeSource=function(t){return this.style.removeSource(t),this._update(!0),this},e.prototype.getSource=function(t){return this.style.getSource(t)},e.prototype.addImage=function(t,e,o){this.style.spriteAtlas.addImage(t,e,o)},e.prototype.removeImage=function(t){this.style.spriteAtlas.removeImage(t)},e.prototype.addLayer=function(t,e){return this.style.addLayer(t,e),this._update(!0),this},e.prototype.moveLayer=function(t,e){return this.style.moveLayer(t,e),this._update(!0),this},e.prototype.removeLayer=function(t){return this.style.removeLayer(t),this._update(!0),this},e.prototype.getLayer=function(t){return this.style.getLayer(t)},e.prototype.setFilter=function(t,e){return this.style.setFilter(t,e),this._update(!0),this},e.prototype.setLayerZoomRange=function(t,e,o){return this.style.setLayerZoomRange(t,e,o),this._update(!0),this},e.prototype.getFilter=function(t){return this.style.getFilter(t)},e.prototype.setPaintProperty=function(t,e,o,i){return this.style.setPaintProperty(t,e,o,i),this._update(!0),this},e.prototype.getPaintProperty=function(t,e,o){return this.style.getPaintProperty(t,e,o)},e.prototype.setLayoutProperty=function(t,e,o){return this.style.setLayoutProperty(t,e,o),this._update(!0),this},e.prototype.getLayoutProperty=function(t,e){return this.style.getLayoutProperty(t,e)},e.prototype.setLight=function(t){return this.style.setLight(t),this._update(!0),this},e.prototype.getLight=function(){return this.style.getLight()},e.prototype.getContainer=function(){return this._container},e.prototype.getCanvasContainer=function(){return this._canvasContainer},e.prototype.getCanvas=function(){return this._canvas},e.prototype._containerDimensions=function(){var t=0,e=0;return this._container&&(t=this._container.offsetWidth||400,e=this._container.offsetHeight||300),[t,e]},e.prototype._setupContainer=function(){var t=this._container;t.classList.add(\"mapboxgl-map\");var e=this._canvasContainer=DOM.create(\"div\",\"mapboxgl-canvas-container\",t);this._interactive&&e.classList.add(\"mapboxgl-interactive\"),this._canvas=DOM.create(\"canvas\",\"mapboxgl-canvas\",e),this._canvas.style.position=\"absolute\",this._canvas.addEventListener(\"webglcontextlost\",this._contextLost,!1),this._canvas.addEventListener(\"webglcontextrestored\",this._contextRestored,!1),this._canvas.setAttribute(\"tabindex\",0),this._canvas.setAttribute(\"aria-label\",\"Map\");var o=this._containerDimensions();this._resizeCanvas(o[0],o[1]);var i=this._controlContainer=DOM.create(\"div\",\"mapboxgl-control-container\",t),r=this._controlPositions={};[\"top-left\",\"top-right\",\"bottom-left\",\"bottom-right\"].forEach(function(t){r[t]=DOM.create(\"div\",\"mapboxgl-ctrl-\"+t,i)})},e.prototype._resizeCanvas=function(t,e){var o=window.devicePixelRatio||1;this._canvas.width=o*t,this._canvas.height=o*e,this._canvas.style.width=t+\"px\",this._canvas.style.height=e+\"px\"},e.prototype._setupPainter=function(){var t=util.extend({failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer},isSupported.webGLContextAttributes),e=this._canvas.getContext(\"webgl\",t)||this._canvas.getContext(\"experimental-webgl\",t);return e?void(this.painter=new Painter(e,this.transform)):void this.fire(\"error\",{error:new Error(\"Failed to initialize WebGL\")})},e.prototype._contextLost=function(t){t.preventDefault(),this._frameId&&browser.cancelFrame(this._frameId),this.fire(\"webglcontextlost\",{originalEvent:t})},e.prototype._contextRestored=function(t){this._setupPainter(),this.resize(),this._update(),this.fire(\"webglcontextrestored\",{originalEvent:t})},e.prototype.loaded=function(){return!this._styleDirty&&!this._sourcesDirty&&!(!this.style||!this.style.loaded())},e.prototype._update=function(t){return this.style?(this._styleDirty=this._styleDirty||t,this._sourcesDirty=!0,this._rerender(),this):this},e.prototype._render=function(){return this.style&&this._styleDirty&&(this._styleDirty=!1,this.style.update(this._classes,this._classOptions),this._classOptions=null,this.style._recalculate(this.transform.zoom)),this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.rotating,zooming:this.zooming}),this.fire(\"render\"),this.loaded()&&!this._loaded&&(this._loaded=!0,this.fire(\"load\")),this._frameId=null,this.animationLoop.stopped()||(this._styleDirty=!0),(this._sourcesDirty||this._repaint||this._styleDirty)&&this._rerender(),this},e.prototype.remove=function(){this._hash&&this._hash.remove(),browser.cancelFrame(this._frameId),this.setStyle(null),\"undefined\"!=typeof window&&(window.removeEventListener(\"resize\",this._onWindowResize,!1),window.removeEventListener(\"online\",this._onWindowOnline,!1));var t=this.painter.gl.getExtension(\"WEBGL_lose_context\");t&&t.loseContext(),removeNode(this._canvasContainer),removeNode(this._controlContainer),this._container.classList.remove(\"mapboxgl-map\"),this.fire(\"remove\")},e.prototype._rerender=function(){this.style&&!this._frameId&&(this._frameId=browser.frame(this._render))},e.prototype._onWindowOnline=function(){this._update()},e.prototype._onWindowResize=function(){this._trackResize&&this.stop().resize()._update()},o.showTileBoundaries.get=function(){return!!this._showTileBoundaries},o.showTileBoundaries.set=function(t){this._showTileBoundaries!==t&&(this._showTileBoundaries=t,this._update())},o.showCollisionBoxes.get=function(){return!!this._showCollisionBoxes},o.showCollisionBoxes.set=function(t){this._showCollisionBoxes!==t&&(this._showCollisionBoxes=t,this.style._redoPlacement())},o.showOverdrawInspector.get=function(){return!!this._showOverdrawInspector},o.showOverdrawInspector.set=function(t){this._showOverdrawInspector!==t&&(this._showOverdrawInspector=t,this._update())},o.repaint.get=function(){return!!this._repaint},o.repaint.set=function(t){this._repaint=t,this._update()},o.vertices.get=function(){return!!this._vertices},o.vertices.set=function(t){this._vertices=t,this._update()},e.prototype._onData=function(t){this._update(\"style\"===t.dataType),this.fire(t.dataType+\"data\",t)},e.prototype._onDataLoading=function(t){this.fire(t.dataType+\"dataloading\",t)},Object.defineProperties(e.prototype,o),e}(Camera);module.exports=Map;\n},{\"../geo/lng_lat\":62,\"../geo/lng_lat_bounds\":63,\"../geo/transform\":64,\"../render/painter\":77,\"../style/animation_loop\":143,\"../style/style\":146,\"../util/browser\":192,\"../util/dom\":199,\"../util/util\":212,\"../util/window\":194,\"./bind_handlers\":171,\"./camera\":172,\"./control/attribution_control\":173,\"./control/logo_control\":176,\"./hash\":186,\"mapbox-gl-supported\":22,\"point-geometry\":26}],188:[function(require,module,exports){\n\"use strict\";var DOM=require(\"../util/dom\"),LngLat=require(\"../geo/lng_lat\"),Point=require(\"point-geometry\"),Marker=function(t,e){this._offset=Point.convert(e&&e.offset||[0,0]),this._update=this._update.bind(this),this._onMapClick=this._onMapClick.bind(this),t||(t=DOM.create(\"div\")),t.classList.add(\"mapboxgl-marker\"),this._element=t,this._popup=null};Marker.prototype.addTo=function(t){return this.remove(),this._map=t,t.getCanvasContainer().appendChild(this._element),t.on(\"move\",this._update),t.on(\"moveend\",this._update),this._update(),this._map.on(\"click\",this._onMapClick),this},Marker.prototype.remove=function(){return this._map&&(this._map.off(\"click\",this._onMapClick),this._map.off(\"move\",this._update),this._map.off(\"moveend\",this._update),this._map=null),DOM.remove(this._element),this._popup&&this._popup.remove(),this},Marker.prototype.getLngLat=function(){return this._lngLat},Marker.prototype.setLngLat=function(t){return this._lngLat=LngLat.convert(t),this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this},Marker.prototype.getElement=function(){return this._element},Marker.prototype.setPopup=function(t){return this._popup&&(this._popup.remove(),this._popup=null),t&&(this._popup=t,this._popup.setLngLat(this._lngLat)),this},Marker.prototype._onMapClick=function(t){var e=t.originalEvent.target,p=this._element;this._popup&&(e===p||p.contains(e))&&this.togglePopup()},Marker.prototype.getPopup=function(){return this._popup},Marker.prototype.togglePopup=function(){var t=this._popup;t&&(t.isOpen()?t.remove():t.addTo(this._map))},Marker.prototype._update=function(t){if(this._map){var e=this._map.project(this._lngLat)._add(this._offset);t&&\"moveend\"!==t.type||(e=e.round()),DOM.setTransform(this._element,\"translate(\"+e.x+\"px, \"+e.y+\"px)\")}},module.exports=Marker;\n},{\"../geo/lng_lat\":62,\"../util/dom\":199,\"point-geometry\":26}],189:[function(require,module,exports){\n\"use strict\";function normalizeOffset(t){if(t){if(\"number\"==typeof t){var o=Math.round(Math.sqrt(.5*Math.pow(t,2)));return{top:new Point(0,t),\"top-left\":new Point(o,o),\"top-right\":new Point(-o,o),bottom:new Point(0,-t),\"bottom-left\":new Point(o,-o),\"bottom-right\":new Point(-o,-o),left:new Point(t,0),right:new Point(-t,0)}}if(isPointLike(t)){var e=Point.convert(t);return{top:e,\"top-left\":e,\"top-right\":e,bottom:e,\"bottom-left\":e,\"bottom-right\":e,left:e,right:e}}return{top:Point.convert(t.top||[0,0]),\"top-left\":Point.convert(t[\"top-left\"]||[0,0]),\"top-right\":Point.convert(t[\"top-right\"]||[0,0]),bottom:Point.convert(t.bottom||[0,0]),\"bottom-left\":Point.convert(t[\"bottom-left\"]||[0,0]),\"bottom-right\":Point.convert(t[\"bottom-right\"]||[0,0]),left:Point.convert(t.left||[0,0]),right:Point.convert(t.right||[0,0])}}return normalizeOffset(new Point(0,0))}function isPointLike(t){return t instanceof Point||Array.isArray(t)}var util=require(\"../util/util\"),Evented=require(\"../util/evented\"),DOM=require(\"../util/dom\"),LngLat=require(\"../geo/lng_lat\"),Point=require(\"point-geometry\"),window=require(\"../util/window\"),defaultOptions={closeButton:!0,closeOnClick:!0},Popup=function(t){function o(o){t.call(this),this.options=util.extend(Object.create(defaultOptions),o),util.bindAll([\"_update\",\"_onClickClose\"],this)}return t&&(o.__proto__=t),o.prototype=Object.create(t&&t.prototype),o.prototype.constructor=o,o.prototype.addTo=function(t){return this._map=t,this._map.on(\"move\",this._update),this.options.closeOnClick&&this._map.on(\"click\",this._onClickClose),this._update(),this},o.prototype.isOpen=function(){return!!this._map},o.prototype.remove=function(){return this._content&&this._content.parentNode&&this._content.parentNode.removeChild(this._content),this._container&&(this._container.parentNode.removeChild(this._container),delete this._container),this._map&&(this._map.off(\"move\",this._update),this._map.off(\"click\",this._onClickClose),delete this._map),this.fire(\"close\"),this},o.prototype.getLngLat=function(){return this._lngLat},o.prototype.setLngLat=function(t){return this._lngLat=LngLat.convert(t),this._update(),this},o.prototype.setText=function(t){return this.setDOMContent(window.document.createTextNode(t))},o.prototype.setHTML=function(t){var o,e=window.document.createDocumentFragment(),n=window.document.createElement(\"body\");for(n.innerHTML=t;;){if(o=n.firstChild,!o)break;e.appendChild(o)}return this.setDOMContent(e)},o.prototype.setDOMContent=function(t){return this._createContent(),this._content.appendChild(t),this._update(),this},o.prototype._createContent=function(){this._content&&this._content.parentNode&&this._content.parentNode.removeChild(this._content),this._content=DOM.create(\"div\",\"mapboxgl-popup-content\",this._container),this.options.closeButton&&(this._closeButton=DOM.create(\"button\",\"mapboxgl-popup-close-button\",this._content),this._closeButton.type=\"button\",this._closeButton.innerHTML=\"×\",this._closeButton.addEventListener(\"click\",this._onClickClose))},o.prototype._update=function(){if(this._map&&this._lngLat&&this._content){this._container||(this._container=DOM.create(\"div\",\"mapboxgl-popup\",this._map.getContainer()),this._tip=DOM.create(\"div\",\"mapboxgl-popup-tip\",this._container),this._container.appendChild(this._content));var t=this.options.anchor,o=normalizeOffset(this.options.offset),e=this._map.project(this._lngLat).round();if(!t){var n=this._container.offsetWidth,i=this._container.offsetHeight;t=e.y+o.bottom.ythis._map.transform.height-i?[\"bottom\"]:[],e.xthis._map.transform.width-n/2&&t.push(\"right\"),t=0===t.length?\"bottom\":t.join(\"-\")}var r=e.add(o[t]),s={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%)\"},p=this._container.classList;for(var a in s)p.remove(\"mapboxgl-popup-anchor-\"+a);p.add(\"mapboxgl-popup-anchor-\"+t),DOM.setTransform(this._container,s[t]+\" translate(\"+r.x+\"px,\"+r.y+\"px)\")}},o.prototype._onClickClose=function(){this.remove()},o}(Evented);module.exports=Popup;\n},{\"../geo/lng_lat\":62,\"../util/dom\":199,\"../util/evented\":200,\"../util/util\":212,\"../util/window\":194,\"point-geometry\":26}],190:[function(require,module,exports){\n\"use strict\";var Actor=function(t,e,a){this.target=t,this.parent=e,this.mapId=a,this.callbacks={},this.callbackID=0,this.receive=this.receive.bind(this),this.target.addEventListener(\"message\",this.receive,!1)};Actor.prototype.send=function(t,e,a,r,s){var i=a?this.mapId+\":\"+this.callbackID++:null;a&&(this.callbacks[i]=a),this.target.postMessage({targetMapId:s,sourceMapId:this.mapId,type:t,id:String(i),data:e},r)},Actor.prototype.receive=function(t){var e,a=this,r=t.data,s=r.id;if(!r.targetMapId||this.mapId===r.targetMapId){var i=function(t,e,r){a.target.postMessage({sourceMapId:a.mapId,type:\"\",id:String(s),error:t?String(t):null,data:e},r)};if(\"\"===r.type)e=this.callbacks[r.id],delete this.callbacks[r.id],e&&e(r.error||null,r.data);else if(\"undefined\"!=typeof r.id&&this.parent[r.type])this.parent[r.type](r.sourceMapId,r.data,i);else if(\"undefined\"!=typeof r.id&&this.parent.getWorkerSource){var p=r.type.split(\".\"),d=this.parent.getWorkerSource(r.sourceMapId,p[0]);d[p[1]](r.data,i)}else this.parent[r.type](r.data)}},Actor.prototype.remove=function(){this.target.removeEventListener(\"message\",this.receive,!1)},module.exports=Actor;\n},{}],191:[function(require,module,exports){\n\"use strict\";function sameOrigin(e){var t=window.document.createElement(\"a\");return t.href=e,t.protocol===window.document.location.protocol&&t.host===window.document.location.host}var window=require(\"./window\");exports.getJSON=function(e,t){var n=new window.XMLHttpRequest;return n.open(\"GET\",e,!0),n.setRequestHeader(\"Accept\",\"application/json\"),n.onerror=function(e){t(e)},n.onload=function(){if(n.status>=200&&n.status<300&&n.response){var e;try{e=JSON.parse(n.response)}catch(e){return t(e)}t(null,e)}else t(new Error(n.statusText))},n.send(),n},exports.getArrayBuffer=function(e,t){var n=new window.XMLHttpRequest;return n.open(\"GET\",e,!0),n.responseType=\"arraybuffer\",n.onerror=function(e){t(e)},n.onload=function(){return 0===n.response.byteLength&&200===n.status?t(new Error(\"http status 200 returned without content.\")):void(n.status>=200&&n.status<300&&n.response?t(null,{data:n.response,cacheControl:n.getResponseHeader(\"Cache-Control\"),expires:n.getResponseHeader(\"Expires\")}):t(new Error(n.statusText)))},n.send(),n};var transparentPngUrl=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=\";exports.getImage=function(e,t){return exports.getArrayBuffer(e,function(e,n){if(e)return t(e);var r=new window.Image,o=window.URL||window.webkitURL;r.onload=function(){t(null,r),o.revokeObjectURL(r.src)};var a=new window.Blob([new Uint8Array(n.data)],{type:\"image/png\"});r.cacheControl=n.cacheControl,r.expires=n.expires,r.src=n.data.byteLength?o.createObjectURL(a):transparentPngUrl})},exports.getVideo=function(e,t){var n=window.document.createElement(\"video\");n.onloadstart=function(){t(null,n)};for(var r=0;r=a+n?e.call(t,1):(e.call(t,(i-a)/n),exports.frame(o)))}if(!n)return e.call(t,1),null;var r=!1,a=module.exports.now();return exports.frame(o),function(){r=!0}},exports.getImageData=function(e){var n=window.document.createElement(\"canvas\"),t=n.getContext(\"2d\");return n.width=e.width,n.height=e.height,t.drawImage(e,0,0),t.getImageData(0,0,e.width,e.height).data},exports.supported=require(\"mapbox-gl-supported\"),exports.hardwareConcurrency=window.navigator.hardwareConcurrency||4,Object.defineProperty(exports,\"devicePixelRatio\",{get:function(){return window.devicePixelRatio}}),exports.supportsWebp=!1;var webpImgTest=window.document.createElement(\"img\");webpImgTest.onload=function(){exports.supportsWebp=!0},webpImgTest.src=\"data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=\";\n},{\"./window\":194,\"mapbox-gl-supported\":22}],193:[function(require,module,exports){\n\"use strict\";var WebWorkify=require(\"webworkify\"),window=require(\"../window\"),workerURL=window.URL.createObjectURL(new WebWorkify(require(\"../../source/worker\"),{bare:!0}));module.exports=function(){return new window.Worker(workerURL)};\n},{\"../../source/worker\":98,\"../window\":194,\"webworkify\":41}],194:[function(require,module,exports){\n\"use strict\";module.exports=self;\n},{}],195:[function(require,module,exports){\n\"use strict\";function compareAreas(e,r){return r.area-e.area}var quickselect=require(\"quickselect\"),calculateSignedArea=require(\"./util\").calculateSignedArea;module.exports=function(e,r){var a=e.length;if(a<=1)return[e];for(var t,u,c=[],i=0;i1)for(var n=0;n0||this._oneTimeListeners&&this._oneTimeListeners[e]&&this._oneTimeListeners[e].length>0||this._eventedParent&&this._eventedParent.listens(e)},Evented.prototype.setEventedParent=function(e,t){return this._eventedParent=e,this._eventedParentData=t,this},module.exports=Evented;\n},{\"./util\":212}],201:[function(require,module,exports){\n\"use strict\";function compareMax(e,t){return t.max-e.max}function Cell(e,t,n,r){this.p=new Point(e,t),this.h=n,this.d=pointToPolygonDist(this.p,r),this.max=this.d+this.h*Math.SQRT2}function pointToPolygonDist(e,t){for(var n=!1,r=1/0,o=0;oe.y!=h.y>e.y&&e.x<(h.x-a.x)*(e.y-a.y)/(h.y-a.y)+a.x&&(n=!n),r=Math.min(r,distToSegmentSquared(e,a,h))}return(n?1:-1)*Math.sqrt(r)}function getCentroidCell(e){for(var t=0,n=0,r=0,o=e[0],i=0,l=o.length,u=l-1;ii)&&(i=a.x),(!s||a.y>l)&&(l=a.y)}var h=i-r,p=l-o,y=Math.min(h,p),x=y/2,d=new Queue(null,compareMax);if(0===y)return[r,o];for(var g=r;gm.d||!m.d)&&(m=v,n&&console.log(\"found best %d after %d probes\",Math.round(1e4*v.d)/1e4,c)),v.max-m.d<=t||(x=v.h/2,d.push(new Cell(v.p.x-x,v.p.y-x,x,e)),d.push(new Cell(v.p.x+x,v.p.y-x,x,e)),d.push(new Cell(v.p.x-x,v.p.y+x,x,e)),d.push(new Cell(v.p.x+x,v.p.y+x,x,e)),c+=4)}return n&&(console.log(\"num probes: \"+c),console.log(\"best distance: \"+m.d)),m.p};\n},{\"./intersection_tests\":205,\"point-geometry\":26,\"tinyqueue\":30}],202:[function(require,module,exports){\n\"use strict\";var WorkerPool=require(\"./worker_pool\"),globalWorkerPool;module.exports=function(){return globalWorkerPool||(globalWorkerPool=new WorkerPool),globalWorkerPool};\n},{\"./worker_pool\":215}],203:[function(require,module,exports){\n\"use strict\";function Glyphs(a,e){this.stacks=a.readFields(readFontstacks,[],e)}function readFontstacks(a,e,r){if(1===a){var t=r.readMessage(readFontstack,{glyphs:{}});e.push(t)}}function readFontstack(a,e,r){if(1===a)e.name=r.readString();else if(2===a)e.range=r.readString();else if(3===a){var t=r.readMessage(readGlyph,{});e.glyphs[t.id]=t}}function readGlyph(a,e,r){1===a?e.id=r.readVarint():2===a?e.bitmap=r.readBytes():3===a?e.width=r.readVarint():4===a?e.height=r.readVarint():5===a?e.left=r.readSVarint():6===a?e.top=r.readSVarint():7===a&&(e.advance=r.readVarint())}module.exports=Glyphs;\n},{}],204:[function(require,module,exports){\n\"use strict\";function interpolate(t,e,n){return t*(1-n)+e*n}module.exports=interpolate,interpolate.number=interpolate,interpolate.vec2=function(t,e,n){return[interpolate(t[0],e[0],n),interpolate(t[1],e[1],n)]},interpolate.color=function(t,e,n){return[interpolate(t[0],e[0],n),interpolate(t[1],e[1],n),interpolate(t[2],e[2],n),interpolate(t[3],e[3],n)]},interpolate.array=function(t,e,n){return t.map(function(t,r){return interpolate(t,e[r],n)})};\n},{}],205:[function(require,module,exports){\n\"use strict\";function polygonIntersectsPolygon(n,t){for(var e=0;e=3)for(var u=0;u1){if(lineIntersectsLine(n,t))return!0;for(var r=0;r1?n.distSqr(e):n.distSqr(e.sub(t)._mult(o)._add(t))}function multiPolygonContainsPoint(n,t){for(var e,r,o,i=!1,l=0;lt.y!=o.y>t.y&&t.x<(o.x-r.x)*(t.y-r.y)/(o.y-r.y)+r.x&&(i=!i)}return i}function polygonContainsPoint(n,t){for(var e=!1,r=0,o=n.length-1;rt.y!=l.y>t.y&&t.x<(l.x-i.x)*(t.y-i.y)/(l.y-i.y)+i.x&&(e=!e)}return e}var isCounterClockwise=require(\"./util\").isCounterClockwise;module.exports={multiPolygonIntersectsBufferedMultiPoint:multiPolygonIntersectsBufferedMultiPoint,multiPolygonIntersectsMultiPolygon:multiPolygonIntersectsMultiPolygon,multiPolygonIntersectsBufferedMultiLine:multiPolygonIntersectsBufferedMultiLine,polygonIntersectsPolygon:polygonIntersectsPolygon,distToSegmentSquared:distToSegmentSquared};\n},{\"./util\":212}],206:[function(require,module,exports){\n\"use strict\";var unicodeBlockLookup={\"Latin-1 Supplement\":function(n){return n>=128&&n<=255},\"Hangul Jamo\":function(n){return n>=4352&&n<=4607},\"Unified Canadian Aboriginal Syllabics\":function(n){return n>=5120&&n<=5759},\"Unified Canadian Aboriginal Syllabics Extended\":function(n){return n>=6320&&n<=6399},\"General Punctuation\":function(n){return n>=8192&&n<=8303},\"Letterlike Symbols\":function(n){return n>=8448&&n<=8527},\"Number Forms\":function(n){return n>=8528&&n<=8591},\"Miscellaneous Technical\":function(n){return n>=8960&&n<=9215},\"Control Pictures\":function(n){return n>=9216&&n<=9279},\"Optical Character Recognition\":function(n){return n>=9280&&n<=9311},\"Enclosed Alphanumerics\":function(n){return n>=9312&&n<=9471},\"Geometric Shapes\":function(n){return n>=9632&&n<=9727},\"Miscellaneous Symbols\":function(n){return n>=9728&&n<=9983},\"Miscellaneous Symbols and Arrows\":function(n){return n>=11008&&n<=11263},\"CJK Radicals Supplement\":function(n){return n>=11904&&n<=12031},\"Kangxi Radicals\":function(n){return n>=12032&&n<=12255},\"Ideographic Description Characters\":function(n){return n>=12272&&n<=12287},\"CJK Symbols and Punctuation\":function(n){return n>=12288&&n<=12351},Hiragana:function(n){return n>=12352&&n<=12447},Katakana:function(n){return n>=12448&&n<=12543},Bopomofo:function(n){return n>=12544&&n<=12591},\"Hangul Compatibility Jamo\":function(n){return n>=12592&&n<=12687},Kanbun:function(n){return n>=12688&&n<=12703},\"Bopomofo Extended\":function(n){return n>=12704&&n<=12735},\"CJK Strokes\":function(n){return n>=12736&&n<=12783},\"Katakana Phonetic Extensions\":function(n){return n>=12784&&n<=12799},\"Enclosed CJK Letters and Months\":function(n){return n>=12800&&n<=13055},\"CJK Compatibility\":function(n){return n>=13056&&n<=13311},\"CJK Unified Ideographs Extension A\":function(n){return n>=13312&&n<=19903},\"Yijing Hexagram Symbols\":function(n){return n>=19904&&n<=19967},\"CJK Unified Ideographs\":function(n){return n>=19968&&n<=40959},\"Yi Syllables\":function(n){return n>=40960&&n<=42127},\"Yi Radicals\":function(n){return n>=42128&&n<=42191},\"Hangul Jamo Extended-A\":function(n){return n>=43360&&n<=43391},\"Hangul Syllables\":function(n){return n>=44032&&n<=55215},\"Hangul Jamo Extended-B\":function(n){return n>=55216&&n<=55295},\"Private Use Area\":function(n){return n>=57344&&n<=63743},\"CJK Compatibility Ideographs\":function(n){return n>=63744&&n<=64255},\"Vertical Forms\":function(n){return n>=65040&&n<=65055},\"CJK Compatibility Forms\":function(n){return n>=65072&&n<=65103},\"Small Form Variants\":function(n){return n>=65104&&n<=65135},\"Halfwidth and Fullwidth Forms\":function(n){return n>=65280&&n<=65519}};module.exports=unicodeBlockLookup;\n},{}],207:[function(require,module,exports){\n\"use strict\";var LRUCache=function(t,e){this.max=t,this.onRemove=e,this.reset()};LRUCache.prototype.reset=function(){var t=this;for(var e in t.data)t.onRemove(t.data[e]);return this.data={},this.order=[],this},LRUCache.prototype.add=function(t,e){if(this.has(t))this.order.splice(this.order.indexOf(t),1),this.data[t]=e,this.order.push(t);else if(this.data[t]=e,this.order.push(t),this.order.length>this.max){var r=this.get(this.order[0]);r&&this.onRemove(r)}return this},LRUCache.prototype.has=function(t){return t in this.data},LRUCache.prototype.keys=function(){return this.order},LRUCache.prototype.get=function(t){if(!this.has(t))return null;var e=this.data[t];return delete this.data[t],this.order.splice(this.order.indexOf(t),1),e},LRUCache.prototype.getWithoutRemoving=function(t){if(!this.has(t))return null;var e=this.data[t];return e},LRUCache.prototype.remove=function(t){if(!this.has(t))return this;var e=this.data[t];return delete this.data[t],this.onRemove(e),this.order.splice(this.order.indexOf(t),1),this},LRUCache.prototype.setMaxSize=function(t){var e=this;for(this.max=t;this.order.length>this.max;){var r=e.get(e.order[0]);r&&e.onRemove(r)}return this},module.exports=LRUCache;\n},{}],208:[function(require,module,exports){\n\"use strict\";function makeAPIURL(r,e){var t=parseUrl(config.API_URL);if(r.protocol=t.protocol,r.authority=t.authority,!config.REQUIRE_ACCESS_TOKEN)return formatUrl(r);if(e=e||config.ACCESS_TOKEN,!e)throw new Error(\"An API access token is required to use Mapbox GL. \"+help);if(\"s\"===e[0])throw new Error(\"Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). \"+help);return r.params.push(\"access_token=\"+e),formatUrl(r)}function isMapboxURL(r){return 0===r.indexOf(\"mapbox:\")}function replaceTempAccessToken(r){for(var e=0;e=2||512===t?\"@2x\":\"\",s=browser.supportsWebp?\".webp\":\"$1\";return o.path=o.path.replace(imageExtensionRe,\"\"+a+s),replaceTempAccessToken(o.params),formatUrl(o)};var urlRe=/^(\\w+):\\/\\/([^\\/?]+)(\\/[^?]+)?\\??(.+)?/;\n},{\"./browser\":192,\"./config\":196}],209:[function(require,module,exports){\n\"use strict\";var isChar=require(\"./is_char_in_unicode_block\");module.exports.allowsIdeographicBreaking=function(a){for(var i=0,r=a;i=65097&&a<=65103)||(!!isChar[\"CJK Compatibility Ideographs\"](a)||(!!isChar[\"CJK Compatibility\"](a)||(!!isChar[\"CJK Radicals Supplement\"](a)||(!!isChar[\"CJK Strokes\"](a)||(!(!isChar[\"CJK Symbols and Punctuation\"](a)||a>=12296&&a<=12305||a>=12308&&a<=12319||12336===a)||(!!isChar[\"CJK Unified Ideographs Extension A\"](a)||(!!isChar[\"CJK Unified Ideographs\"](a)||(!!isChar[\"Enclosed CJK Letters and Months\"](a)||(!!isChar[\"Hangul Compatibility Jamo\"](a)||(!!isChar[\"Hangul Jamo Extended-A\"](a)||(!!isChar[\"Hangul Jamo Extended-B\"](a)||(!!isChar[\"Hangul Jamo\"](a)||(!!isChar[\"Hangul Syllables\"](a)||(!!isChar.Hiragana(a)||(!!isChar[\"Ideographic Description Characters\"](a)||(!!isChar.Kanbun(a)||(!!isChar[\"Kangxi Radicals\"](a)||(!!isChar[\"Katakana Phonetic Extensions\"](a)||(!(!isChar.Katakana(a)||12540===a)||(!(!isChar[\"Halfwidth and Fullwidth Forms\"](a)||65288===a||65289===a||65293===a||a>=65306&&a<=65310||65339===a||65341===a||65343===a||a>=65371&&a<=65503||65507===a||a>=65512&&a<=65519)||(!(!isChar[\"Small Form Variants\"](a)||a>=65112&&a<=65118||a>=65123&&a<=65126)||(!!isChar[\"Unified Canadian Aboriginal Syllabics\"](a)||(!!isChar[\"Unified Canadian Aboriginal Syllabics Extended\"](a)||(!!isChar[\"Vertical Forms\"](a)||(!!isChar[\"Yijing Hexagram Symbols\"](a)||(!!isChar[\"Yi Syllables\"](a)||!!isChar[\"Yi Radicals\"](a))))))))))))))))))))))))))))))},exports.charHasNeutralVerticalOrientation=function(a){return!(!isChar[\"Latin-1 Supplement\"](a)||167!==a&&169!==a&&174!==a&&177!==a&&188!==a&&189!==a&&190!==a&&215!==a&&247!==a)||(!(!isChar[\"General Punctuation\"](a)||8214!==a&&8224!==a&&8225!==a&&8240!==a&&8241!==a&&8251!==a&&8252!==a&&8258!==a&&8263!==a&&8264!==a&&8265!==a&&8273!==a)||(!!isChar[\"Letterlike Symbols\"](a)||(!!isChar[\"Number Forms\"](a)||(!(!isChar[\"Miscellaneous Technical\"](a)||!(a>=8960&&a<=8967||a>=8972&&a<=8991||a>=8996&&a<=9e3||9003===a||a>=9085&&a<=9114||a>=9150&&a<=9165||9167===a||a>=9169&&a<=9179||a>=9186&&a<=9215))||(!(!isChar[\"Control Pictures\"](a)||9251===a)||(!!isChar[\"Optical Character Recognition\"](a)||(!!isChar[\"Enclosed Alphanumerics\"](a)||(!!isChar[\"Geometric Shapes\"](a)||(!(!isChar[\"Miscellaneous Symbols\"](a)||a>=9754&&a<=9759)||(!(!isChar[\"Miscellaneous Symbols and Arrows\"](a)||!(a>=11026&&a<=11055||a>=11088&&a<=11097||a>=11192&&a<=11243))||(!!isChar[\"CJK Symbols and Punctuation\"](a)||(!!isChar.Katakana(a)||(!!isChar[\"Private Use Area\"](a)||(!!isChar[\"CJK Compatibility Forms\"](a)||(!!isChar[\"Small Form Variants\"](a)||(!!isChar[\"Halfwidth and Fullwidth Forms\"](a)||(8734===a||8756===a||8757===a||a>=9984&&a<=10087||a>=10102&&a<=10131||65532===a||65533===a)))))))))))))))))},exports.charHasRotatedVerticalOrientation=function(a){return!(exports.charHasUprightVerticalOrientation(a)||exports.charHasNeutralVerticalOrientation(a))};\n},{\"./is_char_in_unicode_block\":206}],210:[function(require,module,exports){\n\"use strict\";function createStructArrayType(t){var e=JSON.stringify(t);if(structArrayTypeCache[e])return structArrayTypeCache[e];var r=void 0===t.alignment?1:t.alignment,i=0,n=0,a=[\"Uint8\"],o=t.members.map(function(t){a.indexOf(t.type)<0&&a.push(t.type);var e=sizeOf(t.type),o=i=align(i,Math.max(r,e)),s=t.components||1;return n=Math.max(n,e),i+=e*s,{name:t.name,type:t.type,components:s,offset:o}}),s=align(i,Math.max(n,r)),p=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Struct);p.prototype.alignment=r,p.prototype.size=s;for(var y=0,c=o;ythis.capacity){this.capacity=Math.max(t,Math.floor(this.capacity*RESIZE_MULTIPLIER),DEFAULT_CAPACITY),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var e=this.uint8;this._refreshViews(),e&&this.uint8.set(e)}},StructArray.prototype._refreshViews=function(){for(var t=this,e=0,r=t._usedTypes;e=1)return 1;var e=r*r,t=e*r;return 4*(r<.5?t:3*(r-e)+t-.75)},exports.bezier=function(r,e,t,n){var o=new UnitBezier(r,e,t,n);return function(r){return o.solve(r)}},exports.ease=exports.bezier(.25,.1,.25,1),exports.clamp=function(r,e,t){return Math.min(t,Math.max(e,r))},exports.wrap=function(r,e,t){var n=t-e,o=((r-e)%n+n)%n+e;return o===e?t:o},exports.asyncAll=function(r,e,t){if(!r.length)return t(null,[]);var n=r.length,o=new Array(r.length),a=null;r.forEach(function(r,i){e(r,function(r,e){r&&(a=r),o[i]=e,0===--n&&t(a,o)})})},exports.values=function(r){var e=[];for(var t in r)e.push(r[t]);return e},exports.keysDifference=function(r,e){var t=[];for(var n in r)n in e||t.push(n);return t},exports.extend=function(r,e,t,n){for(var o=arguments,a=1;a=0)return!0;return!1};var warnOnceHistory={};exports.warnOnce=function(r){warnOnceHistory[r]||(\"undefined\"!=typeof console&&console.warn(r),warnOnceHistory[r]=!0)},exports.isCounterClockwise=function(r,e,t){return(t.y-r.y)*(e.x-r.x)>(e.y-r.y)*(t.x-r.x)},exports.calculateSignedArea=function(r){for(var e=0,t=0,n=r.length,o=n-1,a=void 0,i=void 0;t0||Math.abs(e.y-t.y)>0)&&Math.abs(exports.calculateSignedArea(r))>.01},exports.sphericalToCartesian=function(r){var e=r[0],t=r[1],n=r[2];return t+=90,t*=Math.PI/180,n*=Math.PI/180,[e*Math.cos(t)*Math.sin(n),e*Math.sin(t)*Math.sin(n),e*Math.cos(n)]},exports.parseCacheControl=function(r){var e=/(?:^|(?:\\s*\\,\\s*))([^\\x00-\\x20\\(\\)<>@\\,;\\:\\\\\"\\/\\[\\]\\?\\=\\{\\}\\x7F]+)(?:\\=(?:([^\\x00-\\x20\\(\\)<>@\\,;\\:\\\\\"\\/\\[\\]\\?\\=\\{\\}\\x7F]+)|(?:\\\"((?:[^\"\\\\]|\\\\.)*)\\\")))?/g,t={};if(r.replace(e,function(r,e,n,o){var a=n||o;return t[e]=!a||a.toLowerCase(),\"\"}),t[\"max-age\"]){var n=parseInt(t[\"max-age\"],10);isNaN(n)?delete t[\"max-age\"]:t[\"max-age\"]=n}return t};\n},{\"../geo/coordinate\":61,\"@mapbox/unitbezier\":3,\"point-geometry\":26}],213:[function(require,module,exports){\n\"use strict\";var Feature=function(e,t,r,o){this.type=\"Feature\",this._vectorTileFeature=e,e._z=t,e._x=r,e._y=o,this.properties=e.properties,null!=e.id&&(this.id=e.id)},prototypeAccessors={geometry:{}};prototypeAccessors.geometry.get=function(){return void 0===this._geometry&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry},prototypeAccessors.geometry.set=function(e){this._geometry=e},Feature.prototype.toJSON=function(){var e=this,t={geometry:this.geometry};for(var r in e)\"_geometry\"!==r&&\"_vectorTileFeature\"!==r&&(t[r]=e[r]);return t},Object.defineProperties(Feature.prototype,prototypeAccessors),module.exports=Feature;\n},{}],214:[function(require,module,exports){\n\"use strict\";var scriptDetection=require(\"./script_detection\");module.exports=function(t){for(var o=\"\",e=0;e\":\"﹀\",\"?\":\"︖\",\"@\":\"@\",\"[\":\"﹇\",\"\\\\\":\"\\",\"]\":\"﹈\",\"^\":\"^\",_:\"︳\",\"`\":\"`\",\"{\":\"︷\",\"|\":\"―\",\"}\":\"︸\",\"~\":\"~\",\"¢\":\"¢\",\"£\":\"£\",\"¥\":\"¥\",\"¦\":\"¦\",\"¬\":\"¬\",\"¯\":\" ̄\",\"–\":\"︲\",\"—\":\"︱\",\"‘\":\"﹃\",\"’\":\"﹄\",\"“\":\"﹁\",\"”\":\"﹂\",\"…\":\"︙\",\"‧\":\"・\",\"₩\":\"₩\",\"、\":\"︑\",\"。\":\"︒\",\"〈\":\"︿\",\"〉\":\"﹀\",\"《\":\"︽\",\"》\":\"︾\",\"「\":\"﹁\",\"」\":\"﹂\",\"『\":\"﹃\",\"』\":\"﹄\",\"【\":\"︻\",\"】\":\"︼\",\"〔\":\"︹\",\"〕\":\"︺\",\"〖\":\"︗\",\"〗\":\"︘\",\"!\":\"︕\",\"(\":\"︵\",\")\":\"︶\",\",\":\"︐\",\"-\":\"︲\",\".\":\"・\",\":\":\"︓\",\";\":\"︔\",\"<\":\"︿\",\">\":\"﹀\",\"?\":\"︖\",\"[\":\"﹇\",\"]\":\"﹈\",\"_\":\"︳\",\"{\":\"︷\",\"|\":\"―\",\"}\":\"︸\",\"⦅\":\"︵\",\"⦆\":\"︶\",\"。\":\"︒\",\"「\":\"﹁\",\"」\":\"﹂\"};\n},{\"./script_detection\":209}],215:[function(require,module,exports){\n\"use strict\";var WebWorker=require(\"./web_worker\"),WorkerPool=function(){this.active={}};WorkerPool.prototype.acquire=function(r){var e=this;if(!this.workers){var o=require(\"../\").workerCount;for(this.workers=[];this.workers.length","?","@","G","J","K","Y","[","\\","]","^","`","{","|","}","~","../data/buffer","../data/pos_array","./vertex_array_object","70","drawFill","drawFillTiles","drawFillTile","getPaintProperty","drawStrokeTile","setFillProgram","u_world","drawingBufferWidth","drawingBufferHeight","currentProgram","71","draw","DEPTH_TEST","ExtrusionTexture","bindFramebuffer","clearColor","COLOR_BUFFER_BIT","DEPTH_BUFFER_BIT","drawExtrusion","unbindFramebuffer","renderToMap","painter","texture","fbo","fbos","preFbos","u_height_factor","setLight","light","calculated","uniform3fv","u_lightpos","u_lightintensity","intensity","u_lightcolor","color","getViewportTexture","activeTexture","TEXTURE1","bindTexture","TEXTURE_2D","createTexture","texParameteri","TEXTURE_WRAP_S","CLAMP_TO_EDGE","TEXTURE_WRAP_T","TEXTURE_MIN_FILTER","LINEAR","TEXTURE_MAG_FILTER","texImage2D","RGBA","UNSIGNED_BYTE","FRAMEBUFFER","framebufferTexture2D","COLOR_ATTACHMENT0","createFramebuffer","createRenderbuffer","bindRenderbuffer","RENDERBUFFER","renderbufferStorage","DEPTH_COMPONENT16","framebufferRenderbuffer","DEPTH_ATTACHMENT","bindDefaultFramebuffer","saveViewportTexture","TEXTURE0","u_image","72","drawLineTile","pixelsToTileUnits","lineAtlas","getDash","from","to","fromScale","toScale","u_patternscale_a","u_patternscale_b","u_sdfgamma","spriteAtlas","getPosition","u_pattern_size_a","u_pattern_size_b","u_gl_units_to_pixels","u_tex_y_a","u_tex_y_b","u_mix","u_pattern_tl_a","u_pattern_br_a","u_pattern_tl_b","u_pattern_br_b","u_fade","u_width","u_ratio","../source/pixels_to_tile_units","73","drawRaster","depthFunc","LESS","drawRasterTile","LEQUAL","getSource","registerFadeDuration","animationLoop","u_brightness_low","u_brightness_high","u_saturation_factor","saturationFactor","u_contrast_factor","contrastFactor","u_spin_weights","spinWeights","sourceCache","findLoadedParent","getFadeValues","u_tl_parent","u_scale_parent","u_buffer_scale","u_fade_t","mix","opacity","u_image0","u_image1","boundsBuffer","rasterBoundsBuffer","boundsVAO","rasterBoundsVAO","timeAdded","refreshedUponExpiration","74","drawSymbols","drawLayerSymbols","showCollisionBoxes","sprite","loaded","setSymbolDrawState","drawTileSymbols","u_rotate_with_map","u_pitch_with_map","u_texture","u_is_text","glyphSource","getGlyphAtlas","updateTexture","u_texsize","rotating","zooming","frameHistory","u_fadetexture","u_pitch","u_bearing","u_aspect_ratio","u_is_size_zoom_constant","u_is_size_feature_constant","interpolationFactor","u_size","u_layout_size","u_size_t","u_gamma_scale","u_is_halo","drawSymbolElements","../style-spec/function","./draw_collision_debug","75","FrameHistory","changeTimes","changeOpacities","opacities","Uint8ClampedArray","previousZoom","firstFrame","record","changed","texSubImage2D","ALPHA","NEAREST","76","LineAtlas","nextRow","bytes","positions","setSprite","addDash","dirty","REPEAT","77","SourceCache","shaders","symbol","circle","line","fill-extrusion","raster","background","Painter","reusableTextures","viewport","setup","numSublayers","maxUnderzooming","maxOverzooming","depthEpsilon","lineWidthRange","getParameter","ALIASED_LINE_WIDTH_RANGE","emptyProgramConfiguration","verbose","BLEND","blendFunc","ONE","ONE_MINUS_SRC_ALPHA","_depthMask","extTextureFilterAnisotropic","getExtension","extTextureFilterAnisotropicMax","MAX_TEXTURE_MAX_ANISOTROPY_EXT","clearStencil","stencilMask","STENCIL_BUFFER_BIT","clearDepth","_renderTileClippingMasks","colorMask","stencilOp","KEEP","REPLACE","_tileClippingMaskIDs","stencilFunc","ALWAYS","EQUAL","prepareBuffers","render","getTransition","duration","showOverdrawInspector","depthRange","_order","renderPass","showTileBoundaries","sourceCaches","getVisibleCoordinates","currentLayer","_showOverdrawInspector","_layers","isTileClipped","renderLayer","isHidden","saveTileTexture","getTileTexture","deleteTexture","CONSTANT_COLOR","blendColor","createProgram","toFixed","prelude","fragmentSource","vertexSource","createShader","FRAGMENT_SHADER","shaderSource","compileShader","attachShader","VERTEX_SHADER","linkProgram","getProgramParameter","ACTIVE_ATTRIBUTES","program","numAttributes","getActiveAttrib","getAttribLocation","ACTIVE_UNIFORMS","getActiveUniform","getUniformLocation","_createProgramCached","../data/program_configuration","../data/raster_bounds_array","../source/source_cache","./draw_background","./draw_circle","./draw_debug","./draw_fill","./draw_fill_extrusion","./draw_line","./draw_raster","./draw_symbol","./frame_history","./shaders","78","u_scale_a","u_scale_b","u_tile_units_to_pixels","u_pixel_coord_upper","u_pixel_coord_lower","79","fillOutline","fillOutlinePattern","fillPattern","fillExtrusion","fillExtrusionPattern","extrusionTexture","linePattern","lineSDF","symbolIcon","symbolSDF","path","80","boundProgram","boundVertexBuffer","boundVertexBuffer2","boundElementBuffer","boundVertexOffset","vao","extVertexArrayObject","freshBind","bindVertexArrayOES","createVertexArrayOES","currentNumAttributes","disableVertexAttribArray","deleteVertexArrayOES","81","82","ImageSource","CanvasSource","animate","canvas","getElementById","_hasInvalidDimensions","fire","play","_rerender","pause","cancel","_finishLoading","getCanvas","onAdd","_prepareImage","../util/window","./image_source","83","resolveURL","href","GeoJSONSource","dispatcher","setEventedParent","_data","workerOptions","geojsonVtOptions","superclusterOptions","clusterMaxZoom","clusterRadius","dataType","_updateWorkerData","sourceDataType","setData","url","workerID","send","_loaded","loadTile","unloadVectorData","aborted","loadVectorData","redoWhenDone","redoPlacement","abortTile","unloadTile","onRemove","broadcast","../util/evented","84","ajax","vtpbf","GeoJSONWorkerSource","loadGeoJSON","_geoJSONIndexes","_geojsonTileLayer","byteOffset","rawData","loadData","_indexData","getJSON","parse","removeSource","../util/ajax","./geojson_wrapper","./vector_tile_worker_source","geojson-rewind","geojson-vt","vt-pbf","85","86","getImage","image","setCoordinates","centerCoord","getCoordinatesCenter","_tileCoords","_setTile","buckets","state","HTMLVideoElement","ImageData","HTMLCanvasElement","urls","../geo/lng_lat","./tile_coord","87","normalizeURL","normalizeSourceURL","pick","vector_layers","vectorLayers","vectorLayerIds","frame","../util/mapbox","88","89","sortTilesIn","mergeRenderedFeatureLayers","rendered","tilesIn","getRenderableIds","getTileByID","sourceMaxZoom","querySourceFeatures","90","loadTileJSON","normalizeTileURL","TileBounds","RasterTileSource","scheme","setBounds","tileBounds","hasTile","contains","_refreshExpiredTiles","setExpiryData","cacheControl","expires","LINEAR_MIPMAP_NEAREST","texParameterf","TEXTURE_MAX_ANISOTROPY_EXT","generateMipmap","abort","./load_tilejson","./tile_bounds","91","pluginRequested","pluginBlobURL","evented","registerForPluginAvailability","errorCallback","getArrayBuffer","92","sourceTypes","vector","geojson","video","bindAll","getType","setType","../source/canvas_source","../source/geojson_source","../source/image_source","../source/raster_tile_source","../source/vector_tile_source","../source/video_source","93","coordinateToTilePoint","compareKeyZoom","isRasterType","Source","Tile","Cache","_sourceLoaded","reload","update","_sourceErrored","_source","_tiles","_cache","_timers","_cacheTimers","_isIdRenderable","getIds","hasData","_coveredTiles","reset","reloadTile","_tileLoaded","status","getTime","_setTileReloadTimer","getZoom","findLoadedChildren","parent","has","getWithoutRemoving","updateCacheSize","setMaxSize","used","addTile","fromID","fadeEndTime","keysDifference","removeTile","wrapped","uses","getExpiryTimeout","_setCacheInvalidationTimer","remove","clearTiles","../geo/coordinate","../util/lru_cache","./source","94","CollisionTile","CollisionBoxArray","uniqueId","expirationTime","expiredRequestCount","reloadSymbolData","sourceLayer","parseCacheControl","../data/bucket","../data/feature_index","../symbol/collision_box","../symbol/collision_tile","95","validateBounds","minX","minY","maxX","maxY","../geo/lng_lat_bounds","96","edge","x0","y0","dx","dy","scanSpans","scanTriangle","getQuadkey","children","@mapbox/whoots-js","97","VectorTileSource","_options","reloadCallback","98","WorkerTile","VectorTileWorkerSource","actor","layerIndex","loading","vectorTile","result","transferables","./worker_tile","99","VideoSource","getVideo","loop","readyState","100","Actor","StyleLayerIndex","globalRTLTextPlugin","layerIndexes","workerSourceTypes","workerSources","registerWorkerSource","registerRTLTextPlugin","applyArabicShaping","processBidirectionalText","setLayers","getLayerIndex","updateLayers","removedIds","symbolOrder","getWorkerSource","loadWorkerSource","importScripts","loadRTLTextPlugin","../style/style_layer_index","../util/actor","./geojson_worker_source","./rtl_text_plugin","101","recalculateLayers","recalculate","serializeBuckets","familiesBySource","encode","visibility","symbolBuckets","stacks","icons","102","deref","refProperties","derefLayers","./util/ref_properties","103","diffSources","operations","args","isEqual","diffLayerPropertyChanges","pluckId","indexById","diffLayers","removeLayer","setLayoutProperty","setPaintProperty","setFilter","setLayerZoomRange","setLayerProperty","diffStyles","setCenter","setZoom","setBearing","setPitch","glyphs","setGlyphs","transition","setTransition","warn","lodash.isequal","104","ValidationError","message","__line__","105","createFilter","compile","compileComparisonOp","compileLogicalOp","compileNegation","compileInOp","compileHasOp","compilePropertyReference","106","xyz2lab","t3","t2","t0","lab2xyz","t1","xyz2rgb","rgb2xyz","rgbToLab","Xn","Yn","Zn","labToRgb","rgbToHcl","rad2deg","hclToRgb","deg2rad","lab","forward","hcl","107","identityFunction","createFunction","isFunctionDefinition","stops","function","parseColor","evaluateExponentialFunction","evaluateIntervalFunction","evaluateCategoricalFunction","evaluateIdentityFunction","colorSpace","colorSpaces","coalesce","findStopLessThanOrEqualTo","interpolate","../util/extend","../util/get_type","../util/interpolate","../util/parse_color","./color_spaces","108","groupByLayout","fast-stable-stringify","109","clamp_css_byte","clamp_css_float","parse_css_int","parseFloat","parse_css_float","css_hue_to_rgb","parseCSSColor","kCSSColorTable","transparent","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","blanchedalmond","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","teal","thistle","tomato","turquoise","violet","wheat","whitesmoke","yellowgreen","110","sss","objKeys","strReg","strReplace","stringSearch","stringReplace","111","isObjectLike","arraySome","baseIsEqual","baseIsEqualDeep","arrayTag","objToString","argsTag","objectTag","isTypedArray","equalByTag","equalArrays","equalObjects","boolTag","dateTag","errorTag","numberTag","regexpTag","stringTag","objectProto","lodash.isarray","lodash.istypedarray","lodash.keys","112","bindCallback","113","getNative","isNative","funcTag","reIsNative","fnToString","reIsHostCtor","114","isArguments","isArrayLikeObject","propertyIsEnumerable","isArrayLike","isLength","genTag","MAX_SAFE_INTEGER","115","116","lodash._baseisequal","lodash._bindcallback","117","typedArrayTags","118","getLength","isIndex","reIsUint","shimKeys","keysIn","nativeKeys","lodash._getnative","lodash.isarguments","119","./v8.json","120","$version","$root","required","metadata","period","units","source_tile","source_geojson","maximum","minimum","source_video","source_image","source_canvas","source-layer","paint.*","layout_background","visible","none","layout_fill","layout_circle","layout_fill-extrusion","layout_line","line-cap","zoom-function","butt","square","line-join","bevel","miter","line-miter-limit","requires","line-round-limit","layout_symbol","symbol-placement","symbol-spacing","symbol-avoid-edges","icon-allow-overlap","icon-ignore-placement","icon-optional","icon-rotation-alignment","auto","icon-size","property-function","icon-text-fit","both","icon-text-fit-padding","tokens","icon-rotate","icon-padding","icon-keep-upright","icon-offset","text-pitch-alignment","text-rotation-alignment","text-font","text-size","text-max-width","text-line-height","text-letter-spacing","text-justify","left","right","text-anchor","top","bottom","top-left","top-right","bottom-left","bottom-right","text-max-angle","text-rotate","text-padding","text-keep-upright","text-transform","uppercase","lowercase","text-allow-overlap","text-ignore-placement","text-optional","layout_raster","filter_operator","==","!=",">=","<=","in","!in","all","any","!has","geometry_type","exponential","interval","categorical","rgb","function_stop","paint_fill","fill-antialias","fill-opacity","fill-color","fill-outline-color","fill-translate","fill-translate-anchor","fill-pattern","paint_fill-extrusion","fill-extrusion-opacity","fill-extrusion-color","fill-extrusion-translate","fill-extrusion-translate-anchor","fill-extrusion-pattern","fill-extrusion-height","fill-extrusion-base","paint_line","line-opacity","line-color","line-translate","line-translate-anchor","line-width","line-gap-width","line-offset","line-blur","line-dasharray","line-pattern","paint_circle","circle-radius","circle-color","circle-blur","circle-opacity","circle-translate","circle-translate-anchor","circle-pitch-scale","circle-stroke-width","circle-stroke-color","circle-stroke-opacity","paint_symbol","icon-opacity","icon-color","icon-halo-color","icon-halo-width","icon-halo-blur","icon-translate","icon-translate-anchor","text-opacity","text-color","text-halo-color","text-halo-width","text-halo-blur","text-translate","text-translate-anchor","paint_raster","raster-opacity","raster-hue-rotate","raster-brightness-min","raster-brightness-max","raster-saturation","raster-contrast","raster-fade-duration","paint_background","background-color","background-pattern","background-opacity","delay","121","122","123","vec2","124","parseColorString","csscolorparser","125","126","valueOf","127","constants","enum","valueSpec","styleSpec","../error/validation_error","./validate_array","./validate_boolean","./validate_color","./validate_constants","./validate_enum","./validate_filter","./validate_function","./validate_layer","./validate_light","./validate_number","./validate_object","./validate_source","./validate_string","128","validate","arrayElementValidator","arrayIndex","./validate","129","130","131","132","unbundle","../util/unbundle_jsonlint","133","validateEnum","134","validateObject","validateArray","validateNumber","objectElementValidators","isFinite","135","validateString","136","validateFilter","validatePaintProperty","validateLayoutProperty","layerType","./validate_layout_property","./validate_paint_property","137","validateProperty","./validate_property","138","139","140","validateSpec","objectKey","141","142","143","144","145","validateStyleMin","latestStyleSpec","validateGlyphsURL","validateConstants","sortErrors","wrapCleanErrors","paintProperty","layoutProperty","./reference/latest","./validate/validate","./validate/validate_constants","./validate/validate_filter","./validate/validate_glyphs_url","./validate/validate_layer","./validate/validate_layout_property","./validate/validate_light","./validate/validate_paint_property","./validate/validate_source","146","AnimationLoop","times","stopped","147","normalizeSpriteURL","SpritePosition","ImageSprite","retina","imgData","getImageData","toJSON","getSpritePosition","148","validateStyle","StyleDeclaration","StyleTransition","Light","_specifications","_validate","_declarations","_transitions","_transitionOptions","getLight","getLightProperty","endsWith","getLightValue","calculate","sphericalToCartesian","_applyLightDeclaration","declaration","json","instant","loopID","endTime","updateLightTransitions","emitErrors","../style-spec/reference/latest","./style_declaration","./style_transition","./validate_style","149","StyleLayer","GlyphSource","SpriteAtlas","mapbox","Dispatcher","QueryFeatures","MapboxGLFunction","getWorkerPool","diff","supportedDiffOperations","ignoredDiffOperations","zoomHistory","_resetUpdates","isMapboxURL","_rtlTextPluginCallback","stylesheet","updateClasses","_resolve","normalizeStyleURL","sourceId","_validateLayer","_updatedSources","_serializeLayers","_applyClasses","_updatedAllPaintProps","_updatedPaintProps","updatePaintTransitions","updatePaintTransition","_recalculate","_updateZoomHistory","lastIntegerZoom","lastIntegerZoomTime","lastZoom","_checkLoaded","_changed","_updatedLayers","_removedLayers","_updatedSymbolOrder","_updateWorkerLayers","_reloadSource","_clearSource","setState","isSourceLoaded","_updateLayer","moveLayer","deepEqual","getFilter","filterObject","_flattenRenderedFeatures","addSourceType","workerSourceURL","_remove","_updateSources","_redoPlacement","getIcons","addIcons","getGlyphs","getSimpleGlyphs","../render/line_atlas","../source/query_features","../source/rtl_text_plugin","../source/source","../style-spec/deref","../style-spec/diff","../symbol/glyph_source","../symbol/sprite_atlas","../util/dispatcher","../util/global_worker_pool","./animation_loop","./image_sprite","./light","./style_layer","150","stopZoomLevels","_functionInterpolationT","calculateInterpolationT","151","getDeclarationValue","_layoutSpecifications","_paintTransitions","_paintTransitionOptions","_paintDeclarations","_layoutDeclarations","_layoutFunctions","_updateLayoutValue","getLayoutInterpolationT","_applyPaintDeclaration","subclasses","./../style-spec/util/parse_color","./style_layer/circle_style_layer","./style_layer/fill_extrusion_style_layer","./style_layer/fill_style_layer","./style_layer/line_style_layer","./style_layer/symbol_style_layer","152","CircleStyleLayer","../../data/bucket/circle_bucket","../style_layer","153","FillExtrusionStyleLayer","../../data/bucket/fill_extrusion_bucket","154","FillStyleLayer","oldTransition","../../data/bucket/fill_bucket","155","LineStyleLayer","../../data/bucket/line_bucket","156","SymbolStyleLayer","../../data/bucket/symbol_bucket","157","_layerConfigs","../style-spec/group_by_layout","158","interpZoomTransitioned","fakeZoomHistory","startTime","zoomTransitioned","_calculateTargetValue","easeCubicInOut","159","../style-spec/validate_style.min","160","segment","161","checkMaxAngle","angleDelta","shift","162","163","StructType","anchorPointX","anchorPointY","164","_addLineCollisionBoxes","boxes","165","intersectionTests","ignoredGrid","reverseRotationMatrix","tempCollisionBox","edges","bbox0","bbox1","bbox2","bbox3","getPlacementScale","polygonIntersectsPolygon","166","resample","../symbol/anchor","./check_max_angle","167","GlyphAtlas","atlas","getRects","addGlyph","bitmap","@mapbox/shelf-pack","168","glyphUrl","normalizeGlyphsURL","verticalizePunctuation","Glyphs","SimpleGlyph","advance","rect","atlases","lookup","loadRange","../symbol/glyph_atlas","../util/glyphs","../util/verticalize_punctuation","169","170","SymbolQuad","positionedGlyphs","getLineGlyphs","upsideDown","getSegmentEnd","end","getMinScaleForSegment","insertSegmentGlyph","getNextVirtualSegment","getVirtualSegmentAnchor","171","PositionedGlyph","codePoint","breakLines","substring","trim","determineLineBreaks","shapeLines","determineAverageLineWidth","calculateBadness","calculatePenalty","evaluateBreak","badness","priorBreak","leastBadBreaks","whitespace","breakable","charAllowsIdeographicBreaking","charHasUprightVerticalOrientation","justifyLine","align","PositionedIcon","173","183","8203","8208","8211","8231","../util/script_detection","172","copyBitmap","shelfPack","images","allocateImage","addImage","HTMLImageElement","isView","Uint32Array","removeImage","allocate","pixelStorei","UNPACK_PREMULTIPLY_ALPHA_WEBGL","toLocaleUpperCase","toLocaleLowerCase","174","DOM","handlers","boxZoom","dragRotate","dragPan","keyboard","doubleClickZoom","touchZoomRotate","stop","mousePos","isActive","toElement","target","parentNode","touches","preventDefault","lngLat","originalEvent","touchPos","lngLats","getCanvasContainer","../util/dom","./handler/box_zoom","./handler/dblclick_zoom","./handler/drag_pan","./handler/drag_rotate","./handler/keyboard","./handler/scroll_zoom","./handler/touch_zoom_rotate","175","Camera","moving","_bearingSnap","bearingSnap","jumpTo","panBy","panTo","easeTo","zoomIn","zoomOut","getBearing","rotateTo","resetNorth","snapToNorth","getPitch","linear","easing","ease","smoothEasing","_smoothOutEasing","_normalizeBearing","_normalizeCenter","around","pitching","_prepareEase","noMoveStart","_onEaseEnd","_ease","_fireMoveEvents","delayEndEvents","_easeToEnd","speed","curve","screenSpeed","isEasing","_abortFn","isMoving","_finishEase","_finishFn","timed","_prevEase","start","bezier","176","getDefaultPosition","compact","_map","_container","_updateAttributions","_updateEditLink","_updateData","_updateCompact","removeChild","_editLink","attribution","innerHTML","offsetWidth","../../util/dom","177","_fullscreen","_fullscreenchange","_fullscreenButton","_onClickFullscreen","_mapContainer","getContainer","_changeIcon","removeEventListener","_isFullscreen","fullscreenElement","mozFullScreenElement","webkitFullscreenElement","msFullscreenElement","toggle","exitFullscreen","mozCancelFullScreen","msExitFullscreen","webkitCancelFullScreen","requestFullscreen","mozRequestFullScreen","msRequestFullscreen","webkitRequestFullscreen","../../util/window","178","checkGeolocationSupport","supportsGeolocation","navigator","permissions","then","geolocation","defaultGeoPositionOptions","enableHighAccuracy","timeout","className","_setupUI","_onSuccess","_finish","_onError","_timeoutId","_geolocateButton","watchPosition","_onClickGeolocate","positionOptions","_geolocationWatchID","clearWatch","getCurrentPosition","../../util/evented","179","LogoControl","_updateLogo","childNodes","_logoRequired","mapbox_logo","180","copyMouseEvent","MouseEvent","button","buttons","bubbles","cancelable","detail","view","screenX","screenY","clientX","clientY","movementX","movementY","ctrlKey","shiftKey","altKey","metaKey","_rotateCompassArrow","_compassArrow","_onContextMenu","_zoomInButton","_createButton","_zoomOutButton","_compass","_onCompassDown","_onCompassMove","_onCompassUp","disableDrag","dispatchEvent","stopPropagation","enableDrag","181","updateScale","maxWidth","clientHeight","getDistance","setScale","getRoundNum","acos","_onMove","182","BoxZoomHandler","_el","isEnabled","_enabled","_active","_onMouseDown","_onMouseMove","_onKeyDown","_onMouseUp","_startPos","_box","_fireEvent","setTransform","boxZoomBounds","keyCode","../../geo/lng_lat_bounds","DoubleClickZoomHandler","_onDblClick","184","inertiaEasing","DragPanHandler","_onDown","_ignoreEvent","_onTouchEnd","_pos","_inertia","_drainInertiaBuffer","_onUp","185","DragRotateHandler","_pitchWithRotate","pitchWithRotate","InstallTrigger","platform","186","easeOut","KeyboardHandler","187","ua","userAgent","firefox","safari","ScrollZoomHandler","_onWheel","_aroundCenter","deltaY","deltaMode","WheelEvent","DOM_DELTA_PIXEL","DOM_DELTA_LINE","wheelDeltaY","_time","_type","_lastValue","_timeout","_onTimeout","../../util/browser","188","TouchZoomRotateHandler","_onStart","disableRotation","_rotationDisabled","enableRotation","_startVec","_startScale","_startBearing","_gestureIntent","_onEnd","189","Hash","addTo","_onHashChange","_updateHash","hash","history","replaceState","190","bindHandlers","defaultOptions","attributionControl","preserveDrawingBuffer","trackResize","refreshExpiredTiles","_interactive","_failIfMajorPerformanceCaveat","_preserveDrawingBuffer","_trackResize","maxBounds","setMaxBounds","_setupContainer","_setupPainter","_update","_onWindowOnline","_onWindowResize","_hash","_classes","classes","setClasses","logoPosition","_onData","_onDataLoading","repaint","_controlPositions","insertBefore","firstChild","removeControl","addClass","_classOptions","removeClass","hasClass","getClasses","_containerDimensions","_resizeCanvas","getBounds","setMinZoom","getMinZoom","setMaxZoom","getMaxZoom","listener","delegates","mousemove","mouseout","_delegatedListeners","_makeQueryGeometry","getStyle","isStyleLoaded","areTilesLoaded","loadImage","_canvasContainer","_canvas","offsetHeight","_contextLost","_contextRestored","_controlContainer","_frameId","cancelFrame","_styleDirty","_sourcesDirty","_render","_repaint","loseContext","_showTileBoundaries","_showCollisionBoxes","_vertices","../geo/transform","../render/painter","../style/animation_loop","../style/style","./bind_handlers","./camera","./control/attribution_control","./control/logo_control","./hash","mapbox-gl-supported","191","smartWrap","_offset","_onMapClick","_element","_popup","getLngLat","_lngLat","setLngLat","getElement","setPopup","togglePopup","getPopup","isOpen","../util/smart_wrap","192","normalizeOffset","isPointLike","closeButton","closeOnClick","_onClickClose","_content","setText","setDOMContent","setHTML","createDocumentFragment","_createContent","_closeButton","_tip","193","mapId","callbacks","callbackID","receive","postMessage","targetMapId","sourceMapId","194","sameOrigin","protocol","host","AJAXError","XMLHttpRequest","open","setRequestHeader","onerror","onload","response","statusText","responseType","getResponseHeader","Image","revokeObjectURL","src","onloadstart","crossOrigin","./window","195","performance","requestAnimationFrame","mozRequestAnimationFrame","webkitRequestAnimationFrame","msRequestAnimationFrame","cancelAnimationFrame","mozCancelAnimationFrame","webkitCancelAnimationFrame","msCancelAnimationFrame","drawImage","supportsWebp","webpImgTest","196","WebWorkify","workerURL","../../source/worker","../window","webworkify","197","198","compareAreas","quickselect","calculateSignedArea","./util","199","API_URL","REQUIRE_ACCESS_TOKEN","200","_stringToNumber","_numberToString","201","workerPool","actors","currentActor","acquire","asyncAll","release","./actor","202","testProp","docStyle","suppressClick","userSelect","documentElement","selectProp","transformProp","getBoundingClientRect","clientLeft","clientTop","changedTouches","203","_addEventListener","_removeEventListener","_listeners","_oneTimeListeners","listens","_eventedParent","_eventedParentData","204","compareMax","Cell","pointToPolygonDist","SQRT2","distToSegmentSquared","getCentroidCell","Queue","./intersection_tests","tinyqueue","205","globalWorkerPool","WorkerPool","./worker_pool","206","readFontstacks","readFontstack","readGlyph","207","polygonContainsPoint","lineIntersectsLine","pointIntersectsBufferedLine","multiPolygonContainsPoint","lineIntersectsBufferedLine","lineSegmentIntersectsLineSegment","isCounterClockwise","208","unicodeBlockLookup","Latin-1 Supplement","Hangul Jamo","Unified Canadian Aboriginal Syllabics","Unified Canadian Aboriginal Syllabics Extended","General Punctuation","Letterlike Symbols","Number Forms","Miscellaneous Technical","Control Pictures","Optical Character Recognition","Enclosed Alphanumerics","Geometric Shapes","Miscellaneous Symbols","Miscellaneous Symbols and Arrows","CJK Radicals Supplement","Kangxi Radicals","Ideographic Description Characters","CJK Symbols and Punctuation","Hiragana","Katakana","Bopomofo","Hangul Compatibility Jamo","Kanbun","Bopomofo Extended","CJK Strokes","Katakana Phonetic Extensions","Enclosed CJK Letters and Months","CJK Compatibility","CJK Unified Ideographs Extension A","Yijing Hexagram Symbols","CJK Unified Ideographs","Yi Syllables","Yi Radicals","Hangul Jamo Extended-A","Hangul Syllables","Hangul Jamo Extended-B","Private Use Area","CJK Compatibility Ideographs","Vertical Forms","CJK Compatibility Forms","Small Form Variants","Halfwidth and Fullwidth Forms","209","LRUCache","order","210","makeAPIURL","parseUrl","authority","formatUrl","help","replaceTempAccessToken","urlRe","imageExtensionRe","./browser","./config","211","isChar","allowsIdeographicBreaking","charHasNeutralVerticalOrientation","charHasRotatedVerticalOrientation","./is_char_in_unicode_block","212","213","structArrayTypeCache","sizeOf","Struct","createGetter","createSetter","StructArray","createEmplaceBack","_usedTypes","viewTypes","BYTES_PER_ELEMENT","getArrayViewName","createMemberComponentString","Int8Array","Uint8Clamped","Int16Array","Uint16Array","Int32","Uint32","Float32","Float64","_structArray","_pos1","_pos2","_pos4","_pos8","isTransferred","capacity","_refreshViews","_trim","uint8","214","215","warnOnceHistory","isClosedPolygon","@mapbox/unitbezier","216","Feature","_vectorTileFeature","_z","_x","_y","217","¢","£","¥","¦","¬","¯","–","—","‘","’","“","”","…","‧","₩","、","。","〈","〉","《","》","「","」","『","』","【","】","〔","〕","〖","〗","!","(",")",",","-",".",":",";","<",">","?","[","]","_","{","|","}","⦅","⦆","。","「","」","./script_detection","218","WebWorker","active","workers","terminate","../","./web_worker","eval","mapDivs","querySelectorAll","_mapboxUtils2"],"mappings":"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EAAA,GAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,GAAA,GAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAAC,KAAA,IAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,KAAAC,KAAA,IAAA,GAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,EAAA,EAAA,EAAA,GAAA,EAAA,GAAA,EAAA,IAAA,IAAAC,KAAA,IAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,GAAA,GAAA,GAAA,EAAA,EAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAAC,KAAA,IAAA,EAAA,GAAA,EAAA,GAAA,GAAA,EAAA,EAAA,GAAA,GAAA,IAAA,GAAA,EAAA,GAAA,GAAA,EAAA,KAAAC,KAAA,IAAA,GAAA,GAAA,GAAA,GAAA,GAAA,EAAA,EAAA,EAAA,GAAA,IAAAC,KAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAAC,KAAA,IAAA,EAAA,EAAA,GAAA,IAAAC,KAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,IAAAC,KAAA,IAAA,GAAA,GAAA,GAAA,IAAAC,GAAA,IAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,EAAA,KAAA5uC,GAAA,IAAA,EAAA,GAAA,EAAA,GAAA,GAAA,GAAA,GAAA,IAAA4C,GAAA,IAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,EAAA,EAAA,GAAA,IAAA+B,GAAA,IAAA,EAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,IAAAkB,GAAA,IAAA,GAAA,GAAA,EAAA,EAAA,GAAA,GAAA,GAAA,EAAA,GAAA,GAAA,GAAA,IAAAY,GAAA,IAAA,GAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,IAAAyC,GAAA,IAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,IAAAO,GAAA,IAAA,GAAA,GAAA,EAAA,GAAA,GAAA,EAAA,EAAA,GAAA,GAAA,KAAAU,GAAA,IAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,GAAA,EAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,EAAA,KAAAY,GAAA,IAAA,GAAA,GAAA,GAAA,GAAA,GAAA,EAAA,GAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,IAAA8jC,KAAA,IAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,IAAA,GAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,IAAAC,KAAu8D,IAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,IAAA,GAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAAC,KAAA,IAAA,GAAA,GAAA,EAAA,EAAA,GAAA,IAAAC,KAAA,IAAA,EAAA,GAAA,GAAA,IAAA,GAAA,EAAA,EAAA,EAAA,GAAA,IAAAC,KAAA,IAAA,EAAA,GAAA,GAAA,EAAA,EAAA,IAAAC,KAAA,IAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,EAAA,GAAA,EAAA,GAAA,GAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,GAAA,EAAA,EAAA,IAAAC,KAAA,IAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,EAAA,EAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,GAAA,GAAA,EAAA,GAAA,GAAA,GAAA,GAAA,EAAA,GAAA,EAAA,EAAA,GAAA,EAAA,GAAA,GAAA,GAAA,EAAA,GAAA,GAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA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","file":"public/assets/js/maps.js.map","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// identity function for calling harmony imports with the correct context\n \t__webpack_require__.i = function(value) { return value; };\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 9);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap bec323e585cc25500ca1","//parse-location.js\n\n//text = `POINT(lon lat)`\nexport default function parseLocation(text) {\n let coords = /POINT\\((.*)\\)/.exec(text);\n let parsedLongitude = coords[1].split(' ')[0];\n let parsedLatitude = coords[1].split(' ')[1];\n\n return {'latitude': parsedLatitude, 'longitude': parsedLongitude};\n}\n\n\n\n// WEBPACK FOOTER //\n// ./parse-location.js","//mapbox-utils.js\nimport mapboxgl from 'mapbox-gl/dist/mapbox-gl.js';\nimport parseLocation from './parse-location';\nimport selectPlaceInForm from './select-place';\n\nmapboxgl.accessToken = 'pk.eyJ1Ijoiam9ubnliYXJuZXMiLCJhIjoiY2l2cDhjYW04MDAwcjJ0cG1uZnhqcm82ayJ9.qA2zeVA-nsoMh9IFrd5KQw';\n\n//define some functions to be used in the default function.\nconst titlecase = (string) => {\n return string.split('-').map(([first,...rest]) => first.toUpperCase() + rest.join('').toLowerCase()).join(' ');\n};\n\nconst addMapTypeOption = (map, menu, option, checked = false) => {\n let input = document.createElement('input');\n input.setAttribute('id', option);\n input.setAttribute('type', 'radio');\n input.setAttribute('name', 'toggle');\n input.setAttribute('value', option);\n if (checked == true) {\n input.setAttribute('checked', 'checked');\n }\n input.addEventListener('click', function () {\n map.setStyle('mapbox://styles/mapbox/' + option + '-v9');\n });\n let label = document.createElement('label');\n label.setAttribute('for', option);\n label.appendChild(document.createTextNode(titlecase(option)));\n menu.appendChild(input);\n menu.appendChild(label);\n};\n\nconst makeMapMenu = (map) => {\n let mapMenu = document.createElement('div');\n mapMenu.classList.add('map-menu');\n addMapTypeOption(map, mapMenu, 'streets', true);\n addMapTypeOption(map, mapMenu, 'satellite-streets');\n return mapMenu;\n};\n\n//the main function\nexport default function addMap(div, position = null, places = null) {\n let dataLatitude = div.dataset.latitude;\n let dataLongitude = div.dataset.longitude;\n let dataId = div.dataset.id;\n let data = window['geojson'+dataId];\n if (data == null) {\n data = {\n 'type': 'FeatureCollection',\n 'features': [{\n 'type': 'Feature',\n 'geometry': {\n 'type': 'Point',\n 'coordinates': [dataLongitude, dataLatitude]\n },\n 'properties': {\n 'title': 'Current Location',\n 'icon': 'circle-stroked',\n 'uri': 'current-location'\n }\n }]\n };\n }\n if (places != null) {\n for (let place of places) {\n let placeLongitude = parseLocation(place.location).longitude;\n let placeLatitude = parseLocation(place.location).latitude;\n data.features.push({\n 'type': 'Feature',\n 'geometry': {\n 'type': 'Point',\n 'coordinates': [placeLongitude, placeLatitude]\n },\n 'properties': {\n 'title': place.name,\n 'icon': 'circle',\n 'uri': place.slug\n }\n });\n }\n }\n if (position != null) {\n dataLongitude = position.coords.longitude;\n dataLatitude = position.coords.latitude;\n }\n let map = new mapboxgl.Map({\n container: div,\n style: 'mapbox://styles/mapbox/streets-v9',\n center: [dataLongitude, dataLatitude],\n zoom: 15\n });\n if (position == null) {\n map.scrollZoom.disable();\n }\n map.addControl(new mapboxgl.NavigationControl());\n div.appendChild(makeMapMenu(map));\n map.on('load', function () {\n map.addSource('points', {\n 'type': 'geojson',\n 'data': data\n });\n map.addLayer({\n 'id': 'points',\n 'interactive': true,\n 'type': 'symbol',\n 'source': 'points',\n 'layout': {\n 'icon-image': '{icon}-15',\n 'text-field': '{title}',\n 'text-offset': [0, 1]\n }\n });\n });\n if (position != null) {\n map.on('click', function (e) {\n let features = map.queryRenderedFeatures(e.point, {\n layer: ['points']\n });\n // if there are features within the given radius of the click event,\n // fly to the location of the click event\n if (features.length) {\n // Get coordinates from the symbol and center the map on those coordinates\n map.flyTo({center: features[0].geometry.coordinates});\n selectPlaceInForm(features[0].properties.uri);\n }\n });\n }\n if (data.features && data.features.length > 1) {\n let bounds = new mapboxgl.LngLatBounds();\n for (let feature of data.features) {\n bounds.extend(feature.geometry.coordinates);\n }\n map.fitBounds(bounds, { padding: 65});\n }\n\n return map;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./mapbox-utils.js","//select-place.js\n\nexport default function selectPlaceInForm(uri) {\n if (document.querySelector('select')) {\n if (uri == 'current-location') {\n document.querySelector('select [id=\"option-coords\"]').selected = true;\n } else {\n document.querySelector('select [value=\"' + uri + '\"]').selected = true;\n }\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./select-place.js","(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.mapboxgl = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o0){for(var o=0,a=0,u=0;uh.maxh||t>h.maxw||i<=h.maxh&&t<=h.maxw&&(r=h.maxw*h.maxh-t*i,rn.free)){if(i===n.h)return this.allocShelf(f,t,i,s);i>n.h||ic)&&(p=2*Math.max(t,c)),(uu)&&(l=2*Math.max(i,u)),this.resize(p,l),this.packOne(t,i,s)}return null},t.prototype.allocFreebin=function(t,e,i,s){var h=this.freebins.splice(t,1)[0];return h.id=s,h.w=e,h.h=i,h.refcount=0,this.bins[s]=h,this.ref(h),h},t.prototype.allocShelf=function(t,e,i,s){var h=this.shelves[t],n=h.alloc(e,i,s);return this.bins[s]=n,this.ref(n),n},t.prototype.getBin=function(t){return this.bins[t]},t.prototype.ref=function(t){if(1===++t.refcount){var e=t.h;this.stats[e]=(0|this.stats[e])+1}return t.refcount},t.prototype.unref=function(t){return 0===t.refcount?0:(0===--t.refcount&&(this.stats[t.h]--,delete this.bins[t.id],this.freebins.push(t)),t.refcount)},t.prototype.clear=function(){this.shelves=[],this.freebins=[],this.stats={},this.bins={},this.maxId=0},t.prototype.resize=function(t,e){this.w=t,this.h=e;for(var i=0;ithis.free||e>this.h)return null;var h=this.x;return this.x+=t,this.free-=t,new i(s,h,this.y,t,e,t,this.h)},e.prototype.resize=function(t){return this.free+=t-this.w,this.w=t,!0},t});\n},{}],3:[function(_dereq_,module,exports){\nfunction UnitBezier(t,i,e,r){this.cx=3*t,this.bx=3*(e-t)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*i,this.by=3*(r-i)-this.cy,this.ay=1-this.cy-this.by,this.p1x=t,this.p1y=r,this.p2x=e,this.p2y=r}module.exports=UnitBezier,UnitBezier.prototype.sampleCurveX=function(t){return((this.ax*t+this.bx)*t+this.cx)*t},UnitBezier.prototype.sampleCurveY=function(t){return((this.ay*t+this.by)*t+this.cy)*t},UnitBezier.prototype.sampleCurveDerivativeX=function(t){return(3*this.ax*t+2*this.bx)*t+this.cx},UnitBezier.prototype.solveCurveX=function(t,i){\"undefined\"==typeof i&&(i=1e-6);var e,r,s,h,n;for(s=t,n=0;n<8;n++){if(h=this.sampleCurveX(s)-t,Math.abs(h)r)return r;for(;eh?e=s:r=s,s=.5*(r-e)+e}return s},UnitBezier.prototype.solve=function(t,i){return this.sampleCurveY(this.solveCurveX(t,i))};\n},{}],4:[function(_dereq_,module,exports){\n!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?t(exports):\"function\"==typeof define&&define.amd?define([\"exports\"],t):t(e.WhooTS=e.WhooTS||{})}(this,function(e){function t(e,t,r,n,i,s){s=s||{};var f=e+\"?\"+[\"bbox=\"+o(r,n,i),\"format=\"+(s.format||\"image/png\"),\"service=\"+(s.service||\"WMS\"),\"version=\"+(s.version||\"1.1.1\"),\"request=\"+(s.request||\"GetMap\"),\"srs=\"+(s.srs||\"EPSG:3857\"),\"width=\"+(s.width||256),\"height=\"+(s.height||256),\"layers=\"+t].join(\"&\");return f}function o(e,t,o){t=Math.pow(2,o)-t-1;var n=r(256*e,256*t,o),i=r(256*(e+1),256*(t+1),o);return n[0]+\",\"+n[1]+\",\"+i[0]+\",\"+i[1]}function r(e,t,o){var r=2*Math.PI*6378137/256/Math.pow(2,o),n=e*r-2*Math.PI*6378137/2,i=t*r-2*Math.PI*6378137/2;return[n,i]}e.getURL=t,e.getTileBBox=o,e.getMercCoords=r,Object.defineProperty(e,\"__esModule\",{value:!0})});\n},{}],5:[function(_dereq_,module,exports){\n\"use strict\";function earcut(e,n,r){r=r||2;var t=n&&n.length,i=t?n[0]*r:e.length,x=linkedList(e,0,i,r,!0),a=[];if(!x)return a;var o,l,u,s,v,f,y;if(t&&(x=eliminateHoles(e,n,x,r)),e.length>80*r){o=u=e[0],l=s=e[1];for(var d=r;du&&(u=v),f>s&&(s=f);y=Math.max(u-o,s-l)}return earcutLinked(x,a,r,o,l,y),a}function linkedList(e,n,r,t,i){var x,a;if(i===signedArea(e,n,r,t)>0)for(x=n;x=n;x-=t)a=insertNode(x,e[x],e[x+1],a);return a&&equals(a,a.next)&&(removeNode(a),a=a.next),a}function filterPoints(e,n){if(!e)return e;n||(n=e);var r,t=e;do if(r=!1,t.steiner||!equals(t,t.next)&&0!==area(t.prev,t,t.next))t=t.next;else{if(removeNode(t),t=n=t.prev,t===t.next)return null;r=!0}while(r||t!==n);return n}function earcutLinked(e,n,r,t,i,x,a){if(e){!a&&x&&indexCurve(e,t,i,x);for(var o,l,u=e;e.prev!==e.next;)if(o=e.prev,l=e.next,x?isEarHashed(e,t,i,x):isEar(e))n.push(o.i/r),n.push(e.i/r),n.push(l.i/r),removeNode(e),e=l.next,u=l.next;else if(e=l,e===u){a?1===a?(e=cureLocalIntersections(e,n,r),earcutLinked(e,n,r,t,i,x,2)):2===a&&splitEarcut(e,n,r,t,i,x):earcutLinked(filterPoints(e),n,r,t,i,x,1);break}}}function isEar(e){var n=e.prev,r=e,t=e.next;if(area(n,r,t)>=0)return!1;for(var i=e.next.next;i!==e.prev;){if(pointInTriangle(n.x,n.y,r.x,r.y,t.x,t.y,i.x,i.y)&&area(i.prev,i,i.next)>=0)return!1;i=i.next}return!0}function isEarHashed(e,n,r,t){var i=e.prev,x=e,a=e.next;if(area(i,x,a)>=0)return!1;for(var o=i.xx.x?i.x>a.x?i.x:a.x:x.x>a.x?x.x:a.x,s=i.y>x.y?i.y>a.y?i.y:a.y:x.y>a.y?x.y:a.y,v=zOrder(o,l,n,r,t),f=zOrder(u,s,n,r,t),y=e.nextZ;y&&y.z<=f;){if(y!==e.prev&&y!==e.next&&pointInTriangle(i.x,i.y,x.x,x.y,a.x,a.y,y.x,y.y)&&area(y.prev,y,y.next)>=0)return!1;y=y.nextZ}for(y=e.prevZ;y&&y.z>=v;){if(y!==e.prev&&y!==e.next&&pointInTriangle(i.x,i.y,x.x,x.y,a.x,a.y,y.x,y.y)&&area(y.prev,y,y.next)>=0)return!1;y=y.prevZ}return!0}function cureLocalIntersections(e,n,r){var t=e;do{var i=t.prev,x=t.next.next;!equals(i,x)&&intersects(i,t,t.next,x)&&locallyInside(i,x)&&locallyInside(x,i)&&(n.push(i.i/r),n.push(t.i/r),n.push(x.i/r),removeNode(t),removeNode(t.next),t=e=x),t=t.next}while(t!==e);return t}function splitEarcut(e,n,r,t,i,x){var a=e;do{for(var o=a.next.next;o!==a.prev;){if(a.i!==o.i&&isValidDiagonal(a,o)){var l=splitPolygon(a,o);return a=filterPoints(a,a.next),l=filterPoints(l,l.next),earcutLinked(a,n,r,t,i,x),void earcutLinked(l,n,r,t,i,x)}o=o.next}a=a.next}while(a!==e)}function eliminateHoles(e,n,r,t){var i,x,a,o,l,u=[];for(i=0,x=n.length;i=t.next.y){var o=t.x+(x-t.y)*(t.next.x-t.x)/(t.next.y-t.y);if(o<=i&&o>a){if(a=o,o===i){if(x===t.y)return t;if(x===t.next.y)return t.next}r=t.x=t.x&&t.x>=s&&pointInTriangle(xr.x)&&locallyInside(t,e)&&(r=t,f=l)),t=t.next;return r}function indexCurve(e,n,r,t){var i=e;do null===i.z&&(i.z=zOrder(i.x,i.y,n,r,t)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next;while(i!==e);i.prevZ.nextZ=null,i.prevZ=null,sortLinked(i)}function sortLinked(e){var n,r,t,i,x,a,o,l,u=1;do{for(r=e,e=null,x=null,a=0;r;){for(a++,t=r,o=0,n=0;n0||l>0&&t;)0===o?(i=t,t=t.nextZ,l--):0!==l&&t?r.z<=t.z?(i=r,r=r.nextZ,o--):(i=t,t=t.nextZ,l--):(i=r,r=r.nextZ,o--),x?x.nextZ=i:e=i,i.prevZ=x,x=i;r=t}x.nextZ=null,u*=2}while(a>1);return e}function zOrder(e,n,r,t,i){return e=32767*(e-r)/i,n=32767*(n-t)/i,e=16711935&(e|e<<8),e=252645135&(e|e<<4),e=858993459&(e|e<<2),e=1431655765&(e|e<<1),n=16711935&(n|n<<8),n=252645135&(n|n<<4),n=858993459&(n|n<<2),n=1431655765&(n|n<<1),e|n<<1}function getLeftmost(e){var n=e,r=e;do n.x=0&&(e-a)*(t-o)-(r-a)*(n-o)>=0&&(r-a)*(x-o)-(i-a)*(t-o)>=0}function isValidDiagonal(e,n){return e.next.i!==n.i&&e.prev.i!==n.i&&!intersectsPolygon(e,n)&&locallyInside(e,n)&&locallyInside(n,e)&&middleInside(e,n)}function area(e,n,r){return(n.y-e.y)*(r.x-n.x)-(n.x-e.x)*(r.y-n.y)}function equals(e,n){return e.x===n.x&&e.y===n.y}function intersects(e,n,r,t){return!!(equals(e,n)&&equals(r,t)||equals(e,t)&&equals(r,n))||area(e,n,r)>0!=area(e,n,t)>0&&area(r,t,e)>0!=area(r,t,n)>0}function intersectsPolygon(e,n){var r=e;do{if(r.i!==e.i&&r.next.i!==e.i&&r.i!==n.i&&r.next.i!==n.i&&intersects(r,r.next,e,n))return!0;r=r.next}while(r!==e);return!1}function locallyInside(e,n){return area(e.prev,e,e.next)<0?area(e,n,e.next)>=0&&area(e,e.prev,n)>=0:area(e,n,e.prev)<0||area(e,e.next,n)<0}function middleInside(e,n){var r=e,t=!1,i=(e.x+n.x)/2,x=(e.y+n.y)/2;do r.y>x!=r.next.y>x&&i<(r.next.x-r.x)*(x-r.y)/(r.next.y-r.y)+r.x&&(t=!t),r=r.next;while(r!==e);return t}function splitPolygon(e,n){var r=new Node(e.i,e.x,e.y),t=new Node(n.i,n.x,n.y),i=e.next,x=n.prev;return e.next=n,n.prev=e,r.next=i,i.prev=r,t.next=r,r.prev=t,x.next=t,t.prev=x,t}function insertNode(e,n,r,t){var i=new Node(e,n,r);return t?(i.next=t.next,i.prev=t,t.next.prev=i,t.next=i):(i.prev=i,i.next=i),i}function removeNode(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function Node(e,n,r){this.i=e,this.x=n,this.y=r,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function signedArea(e,n,r,t){for(var i=0,x=n,a=r-t;x0&&(t+=e[i-1].length,r.holes.push(t))}return r};\n},{}],6:[function(_dereq_,module,exports){\nfunction geometry(r){if(\"Polygon\"===r.type)return polygonArea(r.coordinates);if(\"MultiPolygon\"===r.type){for(var e=0,n=0;n0){e+=Math.abs(ringArea(r[0]));for(var n=1;n2){for(var n,t,o=0;o=0}var geojsonArea=_dereq_(\"geojson-area\");module.exports=rewind;\n},{\"geojson-area\":6}],8:[function(_dereq_,module,exports){\n\"use strict\";function clip(e,r,t,n,u,i,l,s){if(t/=r,n/=r,l>=t&&s<=n)return e;if(l>n||s=t&&c<=n)h.push(o);else if(!(a>n||c=r&&s<=t&&u.push(l)}return u}function clipGeometry(e,r,t,n,u,i){for(var l=[],s=0;st?(d.push(u(h,f,r),u(h,f,t)),i||(d=newSlice(l,d,v,m,w))):o>=r&&d.push(u(h,f,r)):c>t?ot&&(d.push(u(h,f,t)),i||(d=newSlice(l,d,v,m,w))));h=g[S-1],c=h[n],c>=r&&c<=t&&d.push(h),a=d[d.length-1],i&&a&&(d[0][0]!==a[0]||d[0][1]!==a[1])&&d.push(d[0]),newSlice(l,d,v,m,w)}return l}function newSlice(e,r,t,n,u){return r.length&&(r.area=t,r.dist=n,void 0!==u&&(r.outer=u),e.push(r)),[]}module.exports=clip;var createFeature=_dereq_(\"./feature\");\n},{\"./feature\":10}],9:[function(_dereq_,module,exports){\n\"use strict\";function convert(e,t){var r=[];if(\"FeatureCollection\"===e.type)for(var o=0;o1?1:o,[r,o,0]}function calcSize(e){for(var t,r,o=0,a=0,i=0;i1)return!1;var r=n.geometry[0].length;if(5!==r)return!1;for(var s=0;s1&&console.time(\"creation\"),m=this.tiles[d]=createTile(e,p,i,o,f,t===a.maxZoom),this.tileCoords.push({z:t,x:i,y:o}),u)){u>1&&(console.log(\"tile z%d-%d-%d (features: %d, points: %d, simplified: %d)\",t,i,o,m.numFeatures,m.numPoints,m.numSimplified),console.timeEnd(\"creation\"));var h=\"z\"+t;this.stats[h]=(this.stats[h]||0)+1,this.total++}if(m.source=e,n){if(t===a.maxZoom||t===n)continue;var x=1<1&&console.time(\"clipping\");var g,v,M,T,b,y,S=.5*a.buffer/a.extent,Z=.5-S,q=.5+S,w=1+S;g=v=M=T=null,b=clip(e,p,i-S,i+q,0,intersectX,m.min[0],m.max[0]),y=clip(e,p,i+Z,i+w,0,intersectX,m.min[0],m.max[0]),b&&(g=clip(b,p,o-S,o+q,1,intersectY,m.min[1],m.max[1]),v=clip(b,p,o+Z,o+w,1,intersectY,m.min[1],m.max[1])),y&&(M=clip(y,p,o-S,o+q,1,intersectY,m.min[1],m.max[1]),T=clip(y,p,o+Z,o+w,1,intersectY,m.min[1],m.max[1])),u>1&&console.timeEnd(\"clipping\"),e.length&&(l.push(g||[],t+1,2*i,2*o),l.push(v||[],t+1,2*i,2*o+1),l.push(M||[],t+1,2*i+1,2*o),l.push(T||[],t+1,2*i+1,2*o+1))}else n&&(c=t)}return c},GeoJSONVT.prototype.getTile=function(e,t,i){var o=this.options,n=o.extent,r=o.debug,s=1<1&&console.log(\"drilling down to z%d-%d-%d\",e,t,i);for(var a,u=e,c=t,p=i;!a&&u>0;)u--,c=Math.floor(c/2),p=Math.floor(p/2),a=this.tiles[toID(u,c,p)];if(!a||!a.source)return null;if(r>1&&console.log(\"found parent tile z%d-%d-%d\",u,c,p),isClippedSquare(a,n,o.buffer))return transform.tile(a,n);r>1&&console.time(\"drilling down\");var d=this.splitTile(a.source,u,c,p,e,t,i);if(r>1&&console.timeEnd(\"drilling down\"),null!==d){var m=1<p&&(s=e,p=r);p>o?(t[s][2]=p,g.push(u),g.push(s),u=s):(n=g.pop(),u=g.pop())}}function getSqSegDist(t,i,e){var p=i[0],r=i[1],s=e[0],o=e[1],f=t[0],u=t[1],n=s-p,g=o-r;if(0!==n||0!==g){var l=((f-p)*n+(u-r)*g)/(n*n+g*g);l>1?(p=s,r=o):l>0&&(p+=n*l,r+=g*l)}return n=f-p,g=u-r,n*n+g*g}module.exports=simplify;\n},{}],13:[function(_dereq_,module,exports){\n\"use strict\";function createTile(e,n,r,i,t,u){for(var a={features:[],numPoints:0,numSimplified:0,numFeatures:0,source:null,x:r,y:i,z2:n,transformed:!1,min:[2,1],max:[-1,0]},m=0;ma.max[0]&&(a.max[0]=l[0]),l[1]>a.max[1]&&(a.max[1]=l[1])}return a}function addFeature(e,n,r,i){var t,u,a,m,s=n.geometry,l=n.type,o=[],f=r*r;if(1===l)for(t=0;tf)&&(d.push(m),e.numSimplified++),e.numPoints++;3===l&&rewind(d,a.outer),o.push(d)}else e.numPoints+=a.length;if(o.length){var g={geometry:o,type:l,tags:n.tags||null};null!==n.id&&(g.id=n.id),e.features.push(g)}}function rewind(e,n){var r=signedArea(e);r<0===n&&e.reverse()}function signedArea(e){for(var n,r,i=0,t=0,u=e.length,a=u-1;t=a[u+0]&&s>=a[u+1]?(n[f]=!0,h.push(l[f])):n[f]=!1}}},GridIndex.prototype._forEachCell=function(t,r,e,s,i,h,n){for(var o=this._convertToCellCoord(t),l=this._convertToCellCoord(r),a=this._convertToCellCoord(e),d=this._convertToCellCoord(s),f=o;f<=a;f++)for(var u=l;u<=d;u++){var y=this.d*u+f;if(i.call(this,t,r,e,s,y,h,n))return}},GridIndex.prototype._convertToCellCoord=function(t){return Math.max(0,Math.min(this.d-1,Math.floor(t*this.scale)+this.padding))},GridIndex.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var t=this.cells,r=NUM_PARAMS+this.cells.length+1+1,e=0,s=0;s>1,i=-7,N=t?h-1:0,n=t?-1:1,s=a[o+N];for(N+=n,M=s&(1<<-i)-1,s>>=-i,i+=w;i>0;M=256*M+a[o+N],N+=n,i-=8);for(p=M&(1<<-i)-1,M>>=-i,i+=r;i>0;p=256*p+a[o+N],N+=n,i-=8);if(0===M)M=1-e;else{if(M===f)return p?NaN:(s?-1:1)*(1/0);p+=Math.pow(2,r),M-=e}return(s?-1:1)*p*Math.pow(2,M-r)},exports.write=function(a,o,t,r,h,M){var p,w,f,e=8*M-h-1,i=(1<>1,n=23===h?Math.pow(2,-24)-Math.pow(2,-77):0,s=r?0:M-1,u=r?1:-1,l=o<0||0===o&&1/o<0?1:0;for(o=Math.abs(o),isNaN(o)||o===1/0?(w=isNaN(o)?1:0,p=i):(p=Math.floor(Math.log(o)/Math.LN2),o*(f=Math.pow(2,-p))<1&&(p--,f*=2),o+=p+N>=1?n/f:n*Math.pow(2,1-N),o*f>=2&&(p++,f/=2),p+N>=i?(w=0,p=i):p+N>=1?(w=(o*f-1)*Math.pow(2,h),p+=N):(w=o*Math.pow(2,N-1)*Math.pow(2,h),p=0));h>=8;a[t+s]=255&w,s+=u,w/=256,h-=8);for(p=p<0;a[t+s]=255&p,s+=u,p/=256,e-=8);a[t+s-u]|=128*l};\n},{}],18:[function(_dereq_,module,exports){\n\"use strict\";function kdbush(t,i,e,s,n){return new KDBush(t,i,e,s,n)}function KDBush(t,i,e,s,n){i=i||defaultGetX,e=e||defaultGetY,n=n||Array,this.nodeSize=s||64,this.points=t,this.ids=new n(t.length),this.coords=new n(2*t.length);for(var r=0;r=s&&a<=h&&t>=u&&t<=e&&f.push(p[i]);else{var c=Math.floor((g+v)/2);a=r[2*c],t=r[2*c+1],a>=s&&a<=h&&t>=u&&t<=e&&f.push(p[c]);var d=(l+1)%2;(0===l?s<=a:u<=t)&&(n.push(g),n.push(c-1),n.push(d)),(0===l?h>=a:e>=t)&&(n.push(c+1),n.push(v),n.push(d))}}return f}module.exports=range;\n},{}],20:[function(_dereq_,module,exports){\n\"use strict\";function sortKD(t,a,o,s,r,e){if(!(r-s<=o)){var f=Math.floor((s+r)/2);select(t,a,f,s,r,e%2),sortKD(t,a,o,s,f-1,e+1),sortKD(t,a,o,f+1,r,e+1)}}function select(t,a,o,s,r,e){for(;r>s;){if(r-s>600){var f=r-s+1,p=o-s+1,w=Math.log(f),m=.5*Math.exp(2*w/3),n=.5*Math.sqrt(w*m*(f-m)/f)*(p-f/2<0?-1:1),c=Math.max(s,Math.floor(o-p*m/f+n)),h=Math.min(r,Math.floor(o+(f-p)*m/f+n));select(t,a,o,c,h,e)}var i=a[2*o+e],l=s,M=r;for(swapItem(t,a,s,o),a[2*r+e]>i&&swapItem(t,a,s,r);li;)M--}a[2*s+e]===i?swapItem(t,a,s,M):(M++,swapItem(t,a,M,r)),M<=o&&(s=M+1),o<=M&&(r=M-1)}}function swapItem(t,a,o,s){swap(t,o,s),swap(a,2*o,2*s),swap(a,2*o+1,2*s+1)}function swap(t,a,o){var s=t[a];t[a]=t[o],t[o]=s}module.exports=sortKD;\n},{}],21:[function(_dereq_,module,exports){\n\"use strict\";function within(s,p,r,t,u,h){for(var i=[0,s.length-1,0],o=[],n=u*u;i.length;){var e=i.pop(),a=i.pop(),f=i.pop();if(a-f<=h)for(var v=f;v<=a;v++)sqDist(p[2*v],p[2*v+1],r,t)<=n&&o.push(s[v]);else{var l=Math.floor((f+a)/2),c=p[2*l],q=p[2*l+1];sqDist(c,q,r,t)<=n&&o.push(s[l]);var D=(e+1)%2;(0===e?r-u<=c:t-u<=q)&&(i.push(f),i.push(l-1),i.push(D)),(0===e?r+u>=c:t+u>=q)&&(i.push(l+1),i.push(a),i.push(D))}}return o}function sqDist(s,p,r,t){var u=s-r,h=p-t;return u*u+h*h}module.exports=within;\n},{}],22:[function(_dereq_,module,exports){\n\"use strict\";function isSupported(e){return!!(isBrowser()&&isArraySupported()&&isFunctionSupported()&&isObjectSupported()&&isJSONSupported()&&isWorkerSupported()&&isUint8ClampedArraySupported()&&isWebGLSupportedCached(e&&e.failIfMajorPerformanceCaveat))}function isBrowser(){return\"undefined\"!=typeof window&&\"undefined\"!=typeof document}function isArraySupported(){return Array.prototype&&Array.prototype.every&&Array.prototype.filter&&Array.prototype.forEach&&Array.prototype.indexOf&&Array.prototype.lastIndexOf&&Array.prototype.map&&Array.prototype.some&&Array.prototype.reduce&&Array.prototype.reduceRight&&Array.isArray}function isFunctionSupported(){return Function.prototype&&Function.prototype.bind}function isObjectSupported(){return Object.keys&&Object.create&&Object.getPrototypeOf&&Object.getOwnPropertyNames&&Object.isSealed&&Object.isFrozen&&Object.isExtensible&&Object.getOwnPropertyDescriptor&&Object.defineProperty&&Object.defineProperties&&Object.seal&&Object.freeze&&Object.preventExtensions}function isJSONSupported(){return\"JSON\"in window&&\"parse\"in JSON&&\"stringify\"in JSON}function isWorkerSupported(){return\"Worker\"in window}function isUint8ClampedArraySupported(){return\"Uint8ClampedArray\"in window}function isWebGLSupportedCached(e){return void 0===isWebGLSupportedCache[e]&&(isWebGLSupportedCache[e]=isWebGLSupported(e)),isWebGLSupportedCache[e]}function isWebGLSupported(e){var t=document.createElement(\"canvas\"),r=Object.create(isSupported.webGLContextAttributes);return r.failIfMajorPerformanceCaveat=e,t.probablySupportsContext?t.probablySupportsContext(\"webgl\",r)||t.probablySupportsContext(\"experimental-webgl\",r):t.supportsContext?t.supportsContext(\"webgl\",r)||t.supportsContext(\"experimental-webgl\",r):t.getContext(\"webgl\",r)||t.getContext(\"experimental-webgl\",r)}\"undefined\"!=typeof module&&module.exports?module.exports=isSupported:window&&(window.mapboxgl=window.mapboxgl||{},window.mapboxgl.supported=isSupported);var isWebGLSupportedCache={};isSupported.webGLContextAttributes={antialias:!1,alpha:!0,stencil:!0,depth:!0};\n},{}],23:[function(_dereq_,module,exports){\n(function (process){\nfunction normalizeArray(r,t){for(var e=0,n=r.length-1;n>=0;n--){var s=r[n];\".\"===s?r.splice(n,1):\"..\"===s?(r.splice(n,1),e++):e&&(r.splice(n,1),e--)}if(t)for(;e--;e)r.unshift(\"..\");return r}function filter(r,t){if(r.filter)return r.filter(t);for(var e=[],n=0;n=-1&&!t;e--){var n=e>=0?arguments[e]:process.cwd();if(\"string\"!=typeof n)throw new TypeError(\"Arguments to path.resolve must be strings\");n&&(r=n+\"/\"+r,t=\"/\"===n.charAt(0))}return r=normalizeArray(filter(r.split(\"/\"),function(r){return!!r}),!t).join(\"/\"),(t?\"/\":\"\")+r||\".\"},exports.normalize=function(r){var t=exports.isAbsolute(r),e=\"/\"===substr(r,-1);return r=normalizeArray(filter(r.split(\"/\"),function(r){return!!r}),!t).join(\"/\"),r||t||(r=\".\"),r&&e&&(r+=\"/\"),(t?\"/\":\"\")+r},exports.isAbsolute=function(r){return\"/\"===r.charAt(0)},exports.join=function(){var r=Array.prototype.slice.call(arguments,0);return exports.normalize(filter(r,function(r,t){if(\"string\"!=typeof r)throw new TypeError(\"Arguments to path.join must be strings\");return r}).join(\"/\"))},exports.relative=function(r,t){function e(r){for(var t=0;t=0&&\"\"===r[e];e--);return t>e?[]:r.slice(t,e-t+1)}r=exports.resolve(r).substr(1),t=exports.resolve(t).substr(1);for(var n=e(r.split(\"/\")),s=e(t.split(\"/\")),i=Math.min(n.length,s.length),o=i,u=0;u55295&&e<57344){if(!r){e>56319||o+1===n?i.push(239,191,189):r=e;continue}if(e<56320){i.push(239,191,189),r=e;continue}e=r-55296<<10|e-56320|65536,r=null}else r&&(i.push(239,191,189),r=null);e<128?i.push(e):e<2048?i.push(e>>6|192,63&e|128):e<65536?i.push(e>>12|224,e>>6&63|128,63&e|128):i.push(e>>18|240,e>>12&63|128,e>>6&63|128,63&e|128)}return i}module.exports=Buffer;var ieee754=_dereq_(\"ieee754\"),BufferMethods,lastStr,lastStrEncoded;BufferMethods={readUInt32LE:function(t){return(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},writeUInt32LE:function(t,e){this[e]=t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24},readInt32LE:function(t){return(this[t]|this[t+1]<<8|this[t+2]<<16)+(this[t+3]<<24)},readFloatLE:function(t){return ieee754.read(this,t,!0,23,4)},readDoubleLE:function(t){return ieee754.read(this,t,!0,52,8)},writeFloatLE:function(t,e){return ieee754.write(this,t,e,!0,23,4)},writeDoubleLE:function(t,e){return ieee754.write(this,t,e,!0,52,8)},toString:function(t,e,r){var n=\"\",i=\"\";e=e||0,r=Math.min(this.length,r||this.length);for(var o=e;o=1;){if(i.pos>=e)throw new Error(\"Given varint doesn't fit into 10 bytes\");var r=255&t;i.buf[i.pos++]=r|(t>=128?128:0),t/=128}}function reallocForRawMessage(t,i,e){var r=i<=16383?1:i<=2097151?2:i<=268435455?3:Math.ceil(Math.log(i)/(7*Math.LN2));e.realloc(r);for(var s=e.pos-1;s>=t;s--)e.buf[s+r]=e.buf[s]}function writePackedVarint(t,i){for(var e=0;e>3,n=this.pos;t(s,i,this),this.pos===n&&this.skip(r)}return i},readMessage:function(t,i){return this.readFields(t,i,this.readVarint()+this.pos)},readFixed32:function(){var t=this.buf.readUInt32LE(this.pos);return this.pos+=4,t},readSFixed32:function(){var t=this.buf.readInt32LE(this.pos);return this.pos+=4,t},readFixed64:function(){var t=this.buf.readUInt32LE(this.pos)+this.buf.readUInt32LE(this.pos+4)*SHIFT_LEFT_32;return this.pos+=8,t},readSFixed64:function(){var t=this.buf.readUInt32LE(this.pos)+this.buf.readInt32LE(this.pos+4)*SHIFT_LEFT_32;return this.pos+=8,t},readFloat:function(){var t=this.buf.readFloatLE(this.pos);return this.pos+=4,t},readDouble:function(){var t=this.buf.readDoubleLE(this.pos);return this.pos+=8,t},readVarint:function(){var t,i,e=this.buf;return i=e[this.pos++],t=127&i,i<128?t:(i=e[this.pos++],t|=(127&i)<<7,i<128?t:(i=e[this.pos++],t|=(127&i)<<14,i<128?t:(i=e[this.pos++],t|=(127&i)<<21,i<128?t:readVarintRemainder(t,this))))},readVarint64:function(){var t=this.pos,i=this.readVarint();if(i127;);else if(i===Pbf.Bytes)this.pos=this.readVarint()+this.pos;else if(i===Pbf.Fixed32)this.pos+=4;else{if(i!==Pbf.Fixed64)throw new Error(\"Unimplemented type: \"+i);this.pos+=8}},writeTag:function(t,i){this.writeVarint(t<<3|i)},realloc:function(t){for(var i=this.length||16;i268435455?void writeBigVarint(t,this):(this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),void(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);var i=Buffer.byteLength(t);this.writeVarint(i),this.realloc(i),this.buf.write(t,this.pos),this.pos+=i},writeFloat:function(t){this.realloc(4),this.buf.writeFloatLE(t,this.pos),this.pos+=4},writeDouble:function(t){this.realloc(8),this.buf.writeDoubleLE(t,this.pos),this.pos+=8},writeBytes:function(t){var i=t.length;this.writeVarint(i),this.realloc(i);for(var e=0;e=128&&reallocForRawMessage(e,r,this),this.pos=e-1,this.writeVarint(r),this.pos+=r},writeMessage:function(t,i,e){this.writeTag(t,Pbf.Bytes),this.writeRawMessage(i,e)},writePackedVarint:function(t,i){this.writeMessage(t,writePackedVarint,i)},writePackedSVarint:function(t,i){this.writeMessage(t,writePackedSVarint,i)},writePackedBoolean:function(t,i){this.writeMessage(t,writePackedBoolean,i)},writePackedFloat:function(t,i){this.writeMessage(t,writePackedFloat,i)},writePackedDouble:function(t,i){this.writeMessage(t,writePackedDouble,i)},writePackedFixed32:function(t,i){this.writeMessage(t,writePackedFixed32,i)},writePackedSFixed32:function(t,i){this.writeMessage(t,writePackedSFixed32,i)},writePackedFixed64:function(t,i){this.writeMessage(t,writePackedFixed64,i)},writePackedSFixed64:function(t,i){this.writeMessage(t,writePackedSFixed64,i)},writeBytesField:function(t,i){this.writeTag(t,Pbf.Bytes),this.writeBytes(i)},writeFixed32Field:function(t,i){this.writeTag(t,Pbf.Fixed32),this.writeFixed32(i)},writeSFixed32Field:function(t,i){this.writeTag(t,Pbf.Fixed32),this.writeSFixed32(i)},writeFixed64Field:function(t,i){this.writeTag(t,Pbf.Fixed64),this.writeFixed64(i)},writeSFixed64Field:function(t,i){this.writeTag(t,Pbf.Fixed64),this.writeSFixed64(i)},writeVarintField:function(t,i){this.writeTag(t,Pbf.Varint),this.writeVarint(i)},writeSVarintField:function(t,i){this.writeTag(t,Pbf.Varint),this.writeSVarint(i)},writeStringField:function(t,i){this.writeTag(t,Pbf.Bytes),this.writeString(i)},writeFloatField:function(t,i){this.writeTag(t,Pbf.Fixed32),this.writeFloat(i)},writeDoubleField:function(t,i){this.writeTag(t,Pbf.Fixed64),this.writeDouble(i)},writeBooleanField:function(t,i){this.writeVarintField(t,Boolean(i))}};\n}).call(this,typeof global !== \"undefined\" ? global : typeof self !== \"undefined\" ? self : typeof window !== \"undefined\" ? window : {})\n\n},{\"./buffer\":24}],26:[function(_dereq_,module,exports){\n\"use strict\";function Point(t,n){this.x=t,this.y=n}module.exports=Point,Point.prototype={clone:function(){return new Point(this.x,this.y)},add:function(t){return this.clone()._add(t)},sub:function(t){return this.clone()._sub(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)},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 n=t.x-this.x,i=t.y-this.y;return n*n+i*i},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,n){return Math.atan2(this.x*n-this.y*t,this.x*t+this.y*n)},_matMult:function(t){var n=t[0]*this.x+t[1]*this.y,i=t[2]*this.x+t[3]*this.y;return this.x=n,this.y=i,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},_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 n=Math.cos(t),i=Math.sin(t),s=n*this.x-i*this.y,r=i*this.x+n*this.y;return this.x=s,this.y=r,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},Point.convert=function(t){return t instanceof Point?t:Array.isArray(t)?new Point(t[0],t[1]):t};\n},{}],27:[function(_dereq_,module,exports){\nfunction defaultSetTimout(){throw new Error(\"setTimeout has not been defined\")}function defaultClearTimeout(){throw new Error(\"clearTimeout has not been defined\")}function runTimeout(e){if(cachedSetTimeout===setTimeout)return setTimeout(e,0);if((cachedSetTimeout===defaultSetTimout||!cachedSetTimeout)&&setTimeout)return cachedSetTimeout=setTimeout,setTimeout(e,0);try{return cachedSetTimeout(e,0)}catch(t){try{return cachedSetTimeout.call(null,e,0)}catch(t){return cachedSetTimeout.call(this,e,0)}}}function runClearTimeout(e){if(cachedClearTimeout===clearTimeout)return clearTimeout(e);if((cachedClearTimeout===defaultClearTimeout||!cachedClearTimeout)&&clearTimeout)return cachedClearTimeout=clearTimeout,clearTimeout(e);try{return cachedClearTimeout(e)}catch(t){try{return cachedClearTimeout.call(null,e)}catch(t){return cachedClearTimeout.call(this,e)}}}function cleanUpNextTick(){draining&¤tQueue&&(draining=!1,currentQueue.length?queue=currentQueue.concat(queue):queueIndex=-1,queue.length&&drainQueue())}function drainQueue(){if(!draining){var e=runTimeout(cleanUpNextTick);draining=!0;for(var t=queue.length;t;){for(currentQueue=queue,queue=[];++queueIndex1)for(var u=1;ur;){if(o-r>600){var f=o-r+1,e=t-r+1,l=Math.log(f),s=.5*Math.exp(2*l/3),i=.5*Math.sqrt(l*s*(f-s)/f)*(e-f/2<0?-1:1),n=Math.max(r,Math.floor(t-e*s/f+i)),h=Math.min(o,Math.floor(t+(f-e)*s/f+i));partialSort(a,t,n,h,p)}var u=a[t],M=r,w=o;for(swap(a,r,t),p(a[o],u)>0&&swap(a,r,o);M0;)w--}0===p(a[r],u)?swap(a,r,w):(w++,swap(a,w,o)),w<=t&&(r=w+1),t<=w&&(o=w-1)}}function swap(a,t,r){var o=a[t];a[t]=a[r],a[r]=o}function defaultCompare(a,t){return at?1:0}module.exports=partialSort;\n},{}],29:[function(_dereq_,module,exports){\n\"use strict\";function supercluster(t){return new SuperCluster(t)}function SuperCluster(t){this.options=extend(Object.create(this.options),t),this.trees=new Array(this.options.maxZoom+1)}function createCluster(t,e,o,n){return{x:t,y:e,zoom:1/0,id:n,numPoints:o}}function createPointCluster(t,e){var o=t.geometry.coordinates;return createCluster(lngX(o[0]),latY(o[1]),1,e)}function getClusterJSON(t){return{type:\"Feature\",properties:getClusterProperties(t),geometry:{type:\"Point\",coordinates:[xLng(t.x),yLat(t.y)]}}}function getClusterProperties(t){var e=t.numPoints,o=e>=1e4?Math.round(e/1e3)+\"k\":e>=1e3?Math.round(e/100)/10+\"k\":e;return{cluster:!0,point_count:e,point_count_abbreviated:o}}function lngX(t){return t/360+.5}function latY(t){var e=Math.sin(t*Math.PI/180),o=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return o<0?0:o>1?1:o}function xLng(t){return 360*(t-.5)}function yLat(t){var e=(180-360*t)*Math.PI/180;return 360*Math.atan(Math.exp(e))/Math.PI-90}function extend(t,e){for(var o in e)t[o]=e[o];return t}function getX(t){return t.x}function getY(t){return t.y}var kdbush=_dereq_(\"kdbush\");module.exports=supercluster,SuperCluster.prototype={options:{minZoom:0,maxZoom:16,radius:40,extent:512,nodeSize:64,log:!1},load:function(t){var e=this.options.log;e&&console.time(\"total time\");var o=\"prepare \"+t.length+\" points\";e&&console.time(o),this.points=t;var n=t.map(createPointCluster);e&&console.timeEnd(o);for(var r=this.options.maxZoom;r>=this.options.minZoom;r--){var i=+Date.now();this.trees[r+1]=kdbush(n,getX,getY,this.options.nodeSize,Float32Array),n=this._cluster(n,r),e&&console.log(\"z%d: %d clusters in %dms\",r,n.length,+Date.now()-i)}return this.trees[this.options.minZoom]=kdbush(n,getX,getY,this.options.nodeSize,Float32Array),e&&console.timeEnd(\"total time\"),this},getClusters:function(t,e){for(var o=this.trees[this._limitZoom(e)],n=o.range(lngX(t[0]),latY(t[3]),lngX(t[2]),latY(t[1])),r=[],i=0;i=0;a--)this._down(a)}function defaultCompare(t,i){return ti?1:0}function swap(t,i,a){var n=t[i];t[i]=t[a],t[a]=n}module.exports=TinyQueue,TinyQueue.prototype={push:function(t){this.data.push(t),this.length++,this._up(this.length-1)},pop:function(){var t=this.data[0];return this.data[0]=this.data[this.length-1],this.length--,this.data.pop(),this._down(0),t},peek:function(){return this.data[0]},_up:function(t){for(var i=this.data,a=this.compare;t>0;){var n=Math.floor((t-1)/2);if(!(a(i[t],i[n])<0))break;swap(i,n,t),t=n}},_down:function(t){for(var i=this.data,a=this.compare,n=this.length;;){var e=2*t+1,h=e+1,s=t;if(e=3&&(t.depth=arguments[2]),arguments.length>=4&&(t.colors=arguments[3]),isBoolean(r)?t.showHidden=r:r&&exports._extend(t,r),isUndefined(t.showHidden)&&(t.showHidden=!1),isUndefined(t.depth)&&(t.depth=2),isUndefined(t.colors)&&(t.colors=!1),isUndefined(t.customInspect)&&(t.customInspect=!0),t.colors&&(t.stylize=stylizeWithColor),formatValue(t,e,t.depth)}function stylizeWithColor(e,r){var t=inspect.styles[r];return t?\"\u001b[\"+inspect.colors[t][0]+\"m\"+e+\"\u001b[\"+inspect.colors[t][1]+\"m\":e}function stylizeNoColor(e,r){return e}function arrayToHash(e){var r={};return e.forEach(function(e,t){r[e]=!0}),r}function formatValue(e,r,t){if(e.customInspect&&r&&isFunction(r.inspect)&&r.inspect!==exports.inspect&&(!r.constructor||r.constructor.prototype!==r)){var n=r.inspect(t,e);return isString(n)||(n=formatValue(e,n,t)),n}var i=formatPrimitive(e,r);if(i)return i;var o=Object.keys(r),s=arrayToHash(o);if(e.showHidden&&(o=Object.getOwnPropertyNames(r)),isError(r)&&(o.indexOf(\"message\")>=0||o.indexOf(\"description\")>=0))return formatError(r);if(0===o.length){if(isFunction(r)){var u=r.name?\": \"+r.name:\"\";return e.stylize(\"[Function\"+u+\"]\",\"special\")}if(isRegExp(r))return e.stylize(RegExp.prototype.toString.call(r),\"regexp\");if(isDate(r))return e.stylize(Date.prototype.toString.call(r),\"date\");if(isError(r))return formatError(r)}var c=\"\",a=!1,l=[\"{\",\"}\"];if(isArray(r)&&(a=!0,l=[\"[\",\"]\"]),isFunction(r)){var p=r.name?\": \"+r.name:\"\";c=\" [Function\"+p+\"]\"}if(isRegExp(r)&&(c=\" \"+RegExp.prototype.toString.call(r)),isDate(r)&&(c=\" \"+Date.prototype.toUTCString.call(r)),isError(r)&&(c=\" \"+formatError(r)),0===o.length&&(!a||0==r.length))return l[0]+c+l[1];if(t<0)return isRegExp(r)?e.stylize(RegExp.prototype.toString.call(r),\"regexp\"):e.stylize(\"[Object]\",\"special\");e.seen.push(r);var f;return f=a?formatArray(e,r,t,s,o):o.map(function(n){return formatProperty(e,r,t,s,n,a)}),e.seen.pop(),reduceToSingleString(f,c,l)}function formatPrimitive(e,r){if(isUndefined(r))return e.stylize(\"undefined\",\"undefined\");if(isString(r)){var t=\"'\"+JSON.stringify(r).replace(/^\"|\"$/g,\"\").replace(/'/g,\"\\\\'\").replace(/\\\\\"/g,'\"')+\"'\";return e.stylize(t,\"string\")}return isNumber(r)?e.stylize(\"\"+r,\"number\"):isBoolean(r)?e.stylize(\"\"+r,\"boolean\"):isNull(r)?e.stylize(\"null\",\"null\"):void 0}function formatError(e){return\"[\"+Error.prototype.toString.call(e)+\"]\"}function formatArray(e,r,t,n,i){for(var o=[],s=0,u=r.length;s-1&&(u=o?u.split(\"\\n\").map(function(e){return\" \"+e}).join(\"\\n\").substr(2):\"\\n\"+u.split(\"\\n\").map(function(e){return\" \"+e}).join(\"\\n\"))):u=e.stylize(\"[Circular]\",\"special\")),isUndefined(s)){if(o&&i.match(/^\\d+$/))return u;s=JSON.stringify(\"\"+i),s.match(/^\"([a-zA-Z_][a-zA-Z_0-9]*)\"$/)?(s=s.substr(1,s.length-2),s=e.stylize(s,\"name\")):(s=s.replace(/'/g,\"\\\\'\").replace(/\\\\\"/g,'\"').replace(/(^\"|\"$)/g,\"'\"),s=e.stylize(s,\"string\"))}return s+\": \"+u}function reduceToSingleString(e,r,t){var n=0,i=e.reduce(function(e,r){return n++,r.indexOf(\"\\n\")>=0&&n++,e+r.replace(/\\u001b\\[\\d\\d?m/g,\"\").length+1},0);return i>60?t[0]+(\"\"===r?\"\":r+\"\\n \")+\" \"+e.join(\",\\n \")+\" \"+t[1]:t[0]+r+\" \"+e.join(\", \")+\" \"+t[1]}function isArray(e){return Array.isArray(e)}function isBoolean(e){return\"boolean\"==typeof e}function isNull(e){return null===e}function isNullOrUndefined(e){return null==e}function isNumber(e){return\"number\"==typeof e}function isString(e){return\"string\"==typeof e}function isSymbol(e){return\"symbol\"==typeof e}function isUndefined(e){return void 0===e}function isRegExp(e){return isObject(e)&&\"[object RegExp]\"===objectToString(e)}function isObject(e){return\"object\"==typeof e&&null!==e}function isDate(e){return isObject(e)&&\"[object Date]\"===objectToString(e)}function isError(e){return isObject(e)&&(\"[object Error]\"===objectToString(e)||e instanceof Error)}function isFunction(e){return\"function\"==typeof e}function isPrimitive(e){return null===e||\"boolean\"==typeof e||\"number\"==typeof e||\"string\"==typeof e||\"symbol\"==typeof e||\"undefined\"==typeof e}function objectToString(e){return Object.prototype.toString.call(e)}function pad(e){return e<10?\"0\"+e.toString(10):e.toString(10)}function timestamp(){var e=new Date,r=[pad(e.getHours()),pad(e.getMinutes()),pad(e.getSeconds())].join(\":\");return[e.getDate(),months[e.getMonth()],r].join(\" \")}function hasOwnProperty(e,r){return Object.prototype.hasOwnProperty.call(e,r)}var formatRegExp=/%[sdj%]/g;exports.format=function(e){if(!isString(e)){for(var r=[],t=0;t=i)return e;switch(e){case\"%s\":return String(n[t++]);case\"%d\":return Number(n[t++]);case\"%j\":try{return JSON.stringify(n[t++])}catch(e){return\"[Circular]\"}default:return e}}),s=n[t];t>3}if(a--,1===i||2===i)o+=e.readSVarint(),n+=e.readSVarint(),1===i&&(t&&s.push(t),t=[]),t.push(new Point(o,n));else{if(7!==i)throw new Error(\"unknown command \"+i);t&&t.push(t[0].clone())}}return t&&s.push(t),s},VectorTileFeature.prototype.bbox=function(){var e=this._pbf;e.pos=this._geometry;for(var t=e.readVarint()+e.pos,r=1,i=0,a=0,o=0,n=1/0,s=-(1/0),p=1/0,h=-(1/0);e.pos>3}if(i--,1===r||2===r)a+=e.readSVarint(),o+=e.readSVarint(),as&&(s=a),oh&&(h=o);else if(7!==r)throw new Error(\"unknown command \"+r)}return[n,p,s,h]},VectorTileFeature.prototype.toGeoJSON=function(e,t,r){function i(e){for(var t=0;t>3;t=1===a?e.readString():2===a?e.readFloat():3===a?e.readDouble():4===a?e.readVarint64():5===a?e.readVarint():6===a?e.readSVarint():7===a?e.readBoolean():null}return t}var VectorTileFeature=_dereq_(\"./vectortilefeature.js\");module.exports=VectorTileLayer,VectorTileLayer.prototype.feature=function(e){if(e<0||e>=this._features.length)throw new Error(\"feature index out of bounds\");this._pbf.pos=this._features[e];var t=this._pbf.readVarint()+this._pbf.pos;return new VectorTileFeature(this._pbf,t,this.extent,this._keys,this._values)};\n},{\"./vectortilefeature.js\":36}],38:[function(_dereq_,module,exports){\nfunction fromVectorTileJs(e){var r=[];for(var o in e.layers)r.push(prepareLayer(e.layers[o]));var t=new Pbf;return vtpb.tile.write({layers:r},t),t.finish()}function fromGeojsonVt(e){var r={};for(var o in e)r[o]=new GeoJSONWrapper(e[o].features),r[o].name=o;return fromVectorTileJs({layers:r})}function prepareLayer(e){for(var r={name:e.name||\"\",version:e.version||1,extent:e.extent||4096,keys:[],values:[],features:[]},o={},t={},n=0;n>31}function encodeGeometry(e){for(var r=[],o=0,t=0,n=e.length,a=0;aArrayGroup.MAX_VERTEX_ARRAY_LENGTH)&&(e=new Segment(this.layoutVertexArray.length,this.elementArray.length),this.segments.push(e)),e},ArrayGroup.prototype.prepareSegment2=function(r){var e=this.segments2[this.segments2.length-1];return(!e||e.vertexLength+r>ArrayGroup.MAX_VERTEX_ARRAY_LENGTH)&&(e=new Segment(this.layoutVertexArray.length,this.elementArray2.length),this.segments2.push(e)),e},ArrayGroup.prototype.populatePaintArrays=function(r){var e=this;for(var t in e.layerData){var a=e.layerData[t];0!==a.paintVertexArray.bytesPerElement&&a.programConfiguration.populatePaintArray(a.layer,a.paintVertexArray,a.paintPropertyStatistics,e.layoutVertexArray.length,e.globalProperties,r)}},ArrayGroup.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},ArrayGroup.prototype.serialize=function(r){return{layoutVertexArray:this.layoutVertexArray.serialize(r),elementArray:this.elementArray&&this.elementArray.serialize(r),elementArray2:this.elementArray2&&this.elementArray2.serialize(r),paintVertexArrays:serializePaintVertexArrays(this.layerData,r),segments:this.segments,segments2:this.segments2}},ArrayGroup.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,module.exports=ArrayGroup;\n},{\"./program_configuration\":58,\"./vertex_array_type\":60}],45:[function(_dereq_,module,exports){\n\"use strict\";var ArrayGroup=_dereq_(\"./array_group\"),BufferGroup=_dereq_(\"./buffer_group\"),util=_dereq_(\"../util/util\"),Bucket=function(r,t){this.zoom=r.zoom,this.overscaling=r.overscaling,this.layers=r.layers,this.index=r.index,r.arrays?this.buffers=new BufferGroup(t,r.layers,r.zoom,r.arrays):this.arrays=new ArrayGroup(t,r.layers,r.zoom)};Bucket.prototype.populate=function(r,t){for(var e=this,i=0,a=r;i=EXTENT||y<0||y>=EXTENT)){var n=r.prepareSegment(4),u=n.vertexLength;addCircleVertex(r.layoutVertexArray,o,y,-1,-1),addCircleVertex(r.layoutVertexArray,o,y,1,-1),addCircleVertex(r.layoutVertexArray,o,y,1,1),addCircleVertex(r.layoutVertexArray,o,y,-1,1),r.elementArray.emplaceBack(u,u+1,u+2),r.elementArray.emplaceBack(u,u+3,u+2),n.vertexLength+=4,n.primitiveLength+=2}}r.populatePaintArrays(e.properties)},r}(Bucket);CircleBucket.programInterface=circleInterface,module.exports=CircleBucket;\n},{\"../bucket\":45,\"../element_array_type\":53,\"../extent\":54,\"../load_geometry\":56}],47:[function(_dereq_,module,exports){\n\"use strict\";var Bucket=_dereq_(\"../bucket\"),createElementArrayType=_dereq_(\"../element_array_type\"),loadGeometry=_dereq_(\"../load_geometry\"),earcut=_dereq_(\"earcut\"),classifyRings=_dereq_(\"../../util/classify_rings\"),EARCUT_MAX_RINGS=500,fillInterface={layoutAttributes:[{name:\"a_pos\",components:2,type:\"Int16\"}],elementArrayType:createElementArrayType(3),elementArrayType2:createElementArrayType(2),paintAttributes:[{property:\"fill-color\",type:\"Uint8\"},{property:\"fill-outline-color\",type:\"Uint8\"},{property:\"fill-opacity\",type:\"Uint8\",multiplier:255}]},FillBucket=function(e){function t(t){e.call(this,t,fillInterface)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.addFeature=function(e){for(var t=this.arrays,r=0,a=classifyRings(loadGeometry(e),EARCUT_MAX_RINGS);rEXTENT)||e.y===t.y&&(e.y<0||e.y>EXTENT)}var Bucket=_dereq_(\"../bucket\"),createElementArrayType=_dereq_(\"../element_array_type\"),loadGeometry=_dereq_(\"../load_geometry\"),EXTENT=_dereq_(\"../extent\"),earcut=_dereq_(\"earcut\"),classifyRings=_dereq_(\"../../util/classify_rings\"),EARCUT_MAX_RINGS=500,fillExtrusionInterface={layoutAttributes:[{name:\"a_pos\",components:2,type:\"Int16\"},{name:\"a_normal\",components:3,type:\"Int16\"},{name:\"a_edgedistance\",components:1,type:\"Int16\"}],elementArrayType:createElementArrayType(3),paintAttributes:[{property:\"fill-extrusion-base\",type:\"Uint16\"},{property:\"fill-extrusion-height\",type:\"Uint16\"},{property:\"fill-extrusion-color\",type:\"Uint8\"}]},FACTOR=Math.pow(2,13),FillExtrusionBucket=function(e){function t(t){e.call(this,t,fillExtrusionInterface)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.addFeature=function(e){for(var t=this.arrays,r=0,a=classifyRings(loadGeometry(e),EARCUT_MAX_RINGS);r=1){var A=d[h-1];if(!isBoundaryEdge(g,A)){var E=g.sub(A)._perp()._unit();addVertex(t.layoutVertexArray,g.x,g.y,E.x,E.y,0,0,m),addVertex(t.layoutVertexArray,g.x,g.y,E.x,E.y,0,1,m),m+=A.dist(g),addVertex(t.layoutVertexArray,A.x,A.y,E.x,E.y,0,0,m),addVertex(t.layoutVertexArray,A.x,A.y,E.x,E.y,0,1,m);var v=u.vertexLength;t.elementArray.emplaceBack(v,v+1,v+2),t.elementArray.emplaceBack(v+1,v+2,v+3),u.vertexLength+=4,u.primitiveLength+=2}}p.push(g.x),p.push(g.y)}}}for(var _=earcut(p,s),T=0;T<_.length;T+=3)t.elementArray.emplaceBack(c[_[T]],c[_[T+1]],c[_[T+2]]);u.primitiveLength+=_.length/3}t.populatePaintArrays(e.properties)},t}(Bucket);FillExtrusionBucket.programInterface=fillExtrusionInterface,module.exports=FillExtrusionBucket;\n},{\"../../util/classify_rings\":198,\"../bucket\":45,\"../element_array_type\":53,\"../extent\":54,\"../load_geometry\":56,\"earcut\":5}],49:[function(_dereq_,module,exports){\n\"use strict\";function addLineVertex(e,t,r,i,a,n,d){e.emplaceBack(t.x<<1|i,t.y<<1|a,Math.round(EXTRUDE_SCALE*r.x)+128,Math.round(EXTRUDE_SCALE*r.y)+128,(0===n?0:n<0?-1:1)+1|(d*LINE_DISTANCE_SCALE&63)<<2,d*LINE_DISTANCE_SCALE>>6)}var Bucket=_dereq_(\"../bucket\"),createElementArrayType=_dereq_(\"../element_array_type\"),loadGeometry=_dereq_(\"../load_geometry\"),EXTENT=_dereq_(\"../extent\"),VectorTileFeature=_dereq_(\"vector-tile\").VectorTileFeature,EXTRUDE_SCALE=63,COS_HALF_SHARP_CORNER=Math.cos(37.5*(Math.PI/180)),SHARP_CORNER_OFFSET=15,LINE_DISTANCE_BUFFER_BITS=15,LINE_DISTANCE_SCALE=.5,MAX_LINE_DISTANCE=Math.pow(2,LINE_DISTANCE_BUFFER_BITS-1)/LINE_DISTANCE_SCALE,lineInterface={layoutAttributes:[{name:\"a_pos\",components:2,type:\"Int16\"},{name:\"a_data\",components:4,type:\"Uint8\"}],paintAttributes:[{property:\"line-color\",type:\"Uint8\"},{property:\"line-blur\",multiplier:10,type:\"Uint8\"},{property:\"line-opacity\",multiplier:10,type:\"Uint8\"},{property:\"line-gap-width\",multiplier:10,type:\"Uint8\",name:\"a_gapwidth\"},{property:\"line-offset\",multiplier:1,type:\"Int8\"}],elementArrayType:createElementArrayType()},LineBucket=function(e){function t(t){e.call(this,t,lineInterface)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.addFeature=function(e){for(var t=this,r=this.layers[0].layout,i=r[\"line-join\"],a=r[\"line-cap\"],n=r[\"line-miter-limit\"],d=r[\"line-round-limit\"],s=0,u=loadGeometry(e,LINE_DISTANCE_BUFFER_BITS);s=2&&e[l-1].equals(e[l-2]);)l--;for(var o=0;oo){var R=y.dist(m);if(R>2*p){var g=y.sub(y.sub(m)._mult(p/R)._round());d.distance+=g.dist(m),d.addCurrentVertex(g,d.distance,x.mult(1),0,0,!1,h),m=g}}var F=m&&E,B=F?r:E?A:L;if(F&&\"round\"===B&&(Na&&(B=\"bevel\"),\"bevel\"===B&&(N>2&&(B=\"flipbevel\"),N100)I=C.clone().mult(-1);else{var k=x.x*C.y-x.y*C.x>0?-1:1,D=N*x.add(C).mag()/x.sub(C).mag();I._perp()._mult(D*k)}d.addCurrentVertex(y,d.distance,I,0,0,!1,h),d.addCurrentVertex(y,d.distance,I.mult(-1),0,0,!1,h)}else if(\"bevel\"===B||\"fakeround\"===B){var P=x.x*C.y-x.y*C.x>0,U=-Math.sqrt(N*N-1);if(P?(f=0,v=U):(v=0,f=U),S||d.addCurrentVertex(y,d.distance,x,v,f,!1,h),\"fakeround\"===B){for(var q=Math.floor(8*(.5-(T-.5))),M=void 0,O=0;O=0;X--)M=x.mult((X+1)/(q+1))._add(C)._unit(),d.addPieSliceVertex(y,d.distance,M,P,h)}E&&d.addCurrentVertex(y,d.distance,C,-v,-f,!1,h)}else\"butt\"===B?(S||d.addCurrentVertex(y,d.distance,x,0,0,!1,h),E&&d.addCurrentVertex(y,d.distance,C,0,0,!1,h)):\"square\"===B?(S||(d.addCurrentVertex(y,d.distance,x,1,1,!1,h),d.e1=d.e2=-1),E&&d.addCurrentVertex(y,d.distance,C,-1,-1,!1,h)):\"round\"===B&&(S||(d.addCurrentVertex(y,d.distance,x,0,0,!1,h),d.addCurrentVertex(y,d.distance,x,1,1,!0,h),d.e1=d.e2=-1),E&&(d.addCurrentVertex(y,d.distance,C,-1,-1,!0,h),d.addCurrentVertex(y,d.distance,C,0,0,!1,h)));if(b&&V2*p){var w=y.add(E.sub(y)._mult(p/H)._round());d.distance+=w.dist(y),d.addCurrentVertex(w,d.distance,C.mult(1),0,0,!1,h),y=w}}S=!1}_.populatePaintArrays(s)}},t.prototype.addCurrentVertex=function(e,t,r,i,a,n,d){var s,u=n?1:0,l=this.arrays,o=l.layoutVertexArray,p=l.elementArray;s=r.clone(),i&&s._sub(r.perp()._mult(i)),addLineVertex(o,e,s,u,0,i,t),this.e3=d.vertexLength++,this.e1>=0&&this.e2>=0&&(p.emplaceBack(this.e1,this.e2,this.e3),d.primitiveLength++),this.e1=this.e2,this.e2=this.e3,s=r.mult(-1),a&&s._sub(r.perp()._mult(a)),addLineVertex(o,e,s,u,1,-a,t),this.e3=d.vertexLength++,this.e1>=0&&this.e2>=0&&(p.emplaceBack(this.e1,this.e2,this.e3),d.primitiveLength++),this.e1=this.e2,this.e2=this.e3,t>MAX_LINE_DISTANCE/2&&(this.distance=0,this.addCurrentVertex(e,this.distance,r,i,a,n,d))},t.prototype.addPieSliceVertex=function(e,t,r,i,a){var n=i?1:0;r=r.mult(i?-1:1);var d=this.arrays,s=d.layoutVertexArray,u=d.elementArray;addLineVertex(s,e,r,0,n,0,t),this.e3=a.vertexLength++,this.e1>=0&&this.e2>=0&&(u.emplaceBack(this.e1,this.e2,this.e3),a.primitiveLength++),i?this.e2=this.e3:this.e1=this.e3},t}(Bucket);LineBucket.programInterface=lineInterface,module.exports=LineBucket;\n},{\"../bucket\":45,\"../element_array_type\":53,\"../extent\":54,\"../load_geometry\":56,\"vector-tile\":34}],50:[function(_dereq_,module,exports){\n\"use strict\";function addVertex(e,t,o,a,i,r,n,s,l,c,u,y){e.emplaceBack(t,o,Math.round(64*a),Math.round(64*i),r/4,n/4,packUint8ToFloat(10*(u||0),y%256),packUint8ToFloat(10*(l||0),10*Math.min(c||25,25)),s?s[0]:void 0,s?s[1]:void 0,s?s[2]:void 0)}function addCollisionBoxVertex(e,t,o,a,i){return e.emplaceBack(t.x,t.y,Math.round(o.x),Math.round(o.y),10*a,10*i)}function getSizeData(e,t,o){var a={isFeatureConstant:t.isLayoutValueFeatureConstant(o),isZoomConstant:t.isLayoutValueZoomConstant(o)};if(a.isFeatureConstant&&(a.layoutSize=t.getLayoutValue(o,{zoom:e+1})),!a.isZoomConstant){for(var i=t.getLayoutValueStopZoomLevels(o),r=0;rEXTENT||r.y<0||r.y>EXTENT);if(!h||n){var s=n||v;a.addSymbolInstance(r,i,t,o,a.layers[0],s,a.collisionBoxArray,e.index,e.sourceLayerIndex,a.index,u,x,f,p,d,b,{zoom:a.zoom},e.properties)}};if(\"line\"===S)for(var B=0,M=clipLine(e.geometry,0,0,EXTENT,EXTENT);B=0;r--)if(o.dist(i[r])7*Math.PI/4)continue}else if(i&&r&&d<=3*Math.PI/4||d>5*Math.PI/4)continue}else if(i&&r&&(d<=Math.PI/2||d>3*Math.PI/2))continue;var g=x.tl,f=x.tr,b=x.bl,v=x.br,S=x.tex,I=x.anchorPoint,z=Math.max(y+Math.log(x.minScale)/Math.LN2,p),B=Math.min(y+Math.log(x.maxScale)/Math.LN2,25);if(!(B<=z)){z===p&&(z=0);var M=Math.round(x.glyphAngle/(2*Math.PI)*256),L=e.prepareSegment(4),A=L.vertexLength;addVertex(u,I.x,I.y,g.x,g.y,S.x,S.y,a,z,B,p,M),addVertex(u,I.x,I.y,f.x,f.y,S.x+S.w,S.y,a,z,B,p,M),addVertex(u,I.x,I.y,b.x,b.y,S.x,S.y+S.h,a,z,B,p,M),addVertex(u,I.x,I.y,v.x,v.y,S.x+S.w,S.y+S.h,a,z,B,p,M),c.emplaceBack(A,A+1,A+2),c.emplaceBack(A+1,A+2,A+3),L.vertexLength+=4,L.primitiveLength+=2}}e.populatePaintArrays(s)},SymbolBucket.prototype.addToDebugBuffers=function(e){for(var t=this,o=this.arrays.collisionBox,a=o.layoutVertexArray,i=o.elementArray,r=-e.angle,n=e.yStretch,s=0,l=t.symbolInstances;sSymbolBucket.MAX_INSTANCES&&util.warnOnce(\"Too many symbols being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907\"),A>SymbolBucket.MAX_INSTANCES&&util.warnOnce(\"Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907\");var T=(o[WritingMode.vertical]?WritingMode.vertical:0)|(o[WritingMode.horizontal]?WritingMode.horizontal:0);this.symbolInstances.push({textBoxStartIndex:B,textBoxEndIndex:M,iconBoxStartIndex:L,iconBoxEndIndex:A,glyphQuads:S,iconQuads:v,anchor:e,featureIndex:s,featureProperties:g,writingModes:T})},SymbolBucket.programInterfaces=symbolInterfaces,SymbolBucket.MAX_INSTANCES=65535,module.exports=SymbolBucket;\n},{\"../../shaders/encode_attribute\":81,\"../../symbol/anchor\":160,\"../../symbol/clip_line\":162,\"../../symbol/collision_feature\":164,\"../../symbol/get_anchors\":166,\"../../symbol/mergelines\":169,\"../../symbol/quads\":170,\"../../symbol/shaping\":171,\"../../symbol/transform_text\":173,\"../../util/classify_rings\":198,\"../../util/find_pole_of_inaccessibility\":204,\"../../util/script_detection\":211,\"../../util/token\":214,\"../../util/util\":215,\"../array_group\":44,\"../buffer_group\":52,\"../element_array_type\":53,\"../extent\":54,\"../load_geometry\":56,\"point-geometry\":26,\"vector-tile\":34}],51:[function(_dereq_,module,exports){\n\"use strict\";var AttributeType={Int8:\"BYTE\",Uint8:\"UNSIGNED_BYTE\",Int16:\"SHORT\",Uint16:\"UNSIGNED_SHORT\"},Buffer=function(t,e,r){this.arrayBuffer=t.arrayBuffer,this.length=t.length,this.attributes=e.members,this.itemSize=e.bytesPerElement,this.type=r,this.arrayType=e};Buffer.fromStructArray=function(t,e){return new Buffer(t.serialize(),t.constructor.serialize(),e)},Buffer.prototype.bind=function(t){var e=t[this.type];this.buffer?t.bindBuffer(e,this.buffer):(this.gl=t,this.buffer=t.createBuffer(),t.bindBuffer(e,this.buffer),t.bufferData(e,this.arrayBuffer,t.STATIC_DRAW),this.arrayBuffer=null)},Buffer.prototype.enableAttributes=function(t,e){for(var r=this,f=0;f0?t+2*e:e}function translate(e,t,r,i,a){if(!t[0]&&!t[1])return e;t=Point.convert(t),\"viewport\"===r&&t._rotate(-i);for(var n=[],s=0;sr.max||d.yr.max)&&util.warnOnce(\"Geometry exceeds allowed extent, reduce your vector tile buffer size\")}return u};\n},{\"../util/util\":215,\"./extent\":54}],57:[function(_dereq_,module,exports){\n\"use strict\";var createStructArrayType=_dereq_(\"../util/struct_array\"),PosArray=createStructArrayType({members:[{name:\"a_pos\",type:\"Int16\",components:2}]});module.exports=PosArray;\n},{\"../util/struct_array\":213}],58:[function(_dereq_,module,exports){\n\"use strict\";function getPaintAttributeValue(t,r,e,i){if(!t.zoomStops)return r.getPaintValue(t.property,e,i);var a=t.zoomStops.map(function(a){return r.getPaintValue(t.property,util.extend({},e,{zoom:a}),i)});return 1===a.length?a[0]:a}function normalizePaintAttribute(t,r){var e=t.name;e||(e=t.property.replace(r.type+\"-\",\"\").replace(/-/g,\"_\"));var i=\"color\"===r._paintSpecifications[t.property].type;return util.extend({name:\"a_\"+e,components:i?4:1,multiplier:i?255:1,dimensions:i?4:1},t)}var createVertexArrayType=_dereq_(\"./vertex_array_type\"),util=_dereq_(\"../util/util\"),ProgramConfiguration=function(){this.attributes=[],this.uniforms=[],this.interpolationUniforms=[],this.pragmas={vertex:{},fragment:{}},this.cacheKey=\"\"};ProgramConfiguration.createDynamic=function(t,r,e){for(var i=new ProgramConfiguration,a=0,n=t;a4)for(;p90||this.lat<-90)throw new Error(\"Invalid LngLat latitude value: must be between -90 and 90\")};LngLat.prototype.wrap=function(){return new LngLat(wrap(this.lng,-180,180),this.lat)},LngLat.prototype.toArray=function(){return[this.lng,this.lat]},LngLat.prototype.toString=function(){return\"LngLat(\"+this.lng+\", \"+this.lat+\")\"},LngLat.convert=function(t){if(t instanceof LngLat)return t;if(Array.isArray(t)&&2===t.length)return new LngLat(Number(t[0]),Number(t[1]));if(!Array.isArray(t)&&\"object\"==typeof t&&null!==t)return new LngLat(Number(t.lng),Number(t.lat));throw new Error(\"`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, or an array of [, ]\")},module.exports=LngLat;\n},{\"../util/util\":215}],63:[function(_dereq_,module,exports){\n\"use strict\";var LngLat=_dereq_(\"./lng_lat\"),LngLatBounds=function(t,n){t&&(n?this.setSouthWest(t).setNorthEast(n):4===t.length?this.setSouthWest([t[0],t[1]]).setNorthEast([t[2],t[3]]):this.setSouthWest(t[0]).setNorthEast(t[1]))};LngLatBounds.prototype.setNorthEast=function(t){return this._ne=LngLat.convert(t),this},LngLatBounds.prototype.setSouthWest=function(t){return this._sw=LngLat.convert(t),this},LngLatBounds.prototype.extend=function(t){var n,e,s=this._sw,o=this._ne;if(t instanceof LngLat)n=t,e=t;else{if(!(t instanceof LngLatBounds))return Array.isArray(t)?t.every(Array.isArray)?this.extend(LngLatBounds.convert(t)):this.extend(LngLat.convert(t)):this;if(n=t._sw,e=t._ne,!n||!e)return this}return s||o?(s.lng=Math.min(n.lng,s.lng),s.lat=Math.min(n.lat,s.lat),o.lng=Math.max(e.lng,o.lng),o.lat=Math.max(e.lat,o.lat)):(this._sw=new LngLat(n.lng,n.lat),this._ne=new LngLat(e.lng,e.lat)),this},LngLatBounds.prototype.getCenter=function(){return new LngLat((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},LngLatBounds.prototype.getSouthWest=function(){return this._sw},LngLatBounds.prototype.getNorthEast=function(){return this._ne},LngLatBounds.prototype.getNorthWest=function(){return new LngLat(this.getWest(),this.getNorth())},LngLatBounds.prototype.getSouthEast=function(){return new LngLat(this.getEast(),this.getSouth())},LngLatBounds.prototype.getWest=function(){return this._sw.lng},LngLatBounds.prototype.getSouth=function(){return this._sw.lat},LngLatBounds.prototype.getEast=function(){return this._ne.lng},LngLatBounds.prototype.getNorth=function(){return this._ne.lat},LngLatBounds.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},LngLatBounds.prototype.toString=function(){return\"LngLatBounds(\"+this._sw.toString()+\", \"+this._ne.toString()+\")\"},LngLatBounds.convert=function(t){return!t||t instanceof LngLatBounds?t:new LngLatBounds(t)},module.exports=LngLatBounds;\n},{\"./lng_lat\":62}],64:[function(_dereq_,module,exports){\n\"use strict\";var LngLat=_dereq_(\"./lng_lat\"),Point=_dereq_(\"point-geometry\"),Coordinate=_dereq_(\"./coordinate\"),util=_dereq_(\"../util/util\"),interp=_dereq_(\"../style-spec/util/interpolate\"),TileCoord=_dereq_(\"../source/tile_coord\"),EXTENT=_dereq_(\"../data/extent\"),glmatrix=_dereq_(\"@mapbox/gl-matrix\"),vec4=glmatrix.vec4,mat4=glmatrix.mat4,mat2=glmatrix.mat2,Transform=function(t,i,o){this.tileSize=512,this._renderWorldCopies=void 0===o||o,this._minZoom=t||0,this._maxZoom=i||22,this.latRange=[-85.05113,85.05113],this.width=0,this.height=0,this._center=new LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0},prototypeAccessors={minZoom:{},maxZoom:{},renderWorldCopies:{},worldSize:{},centerPoint:{},size:{},bearing:{},pitch:{},fov:{},zoom:{},center:{},unmodified:{},x:{},y:{},point:{}};prototypeAccessors.minZoom.get=function(){return this._minZoom},prototypeAccessors.minZoom.set=function(t){this._minZoom!==t&&(this._minZoom=t,this.zoom=Math.max(this.zoom,t))},prototypeAccessors.maxZoom.get=function(){return this._maxZoom},prototypeAccessors.maxZoom.set=function(t){this._maxZoom!==t&&(this._maxZoom=t,this.zoom=Math.min(this.zoom,t))},prototypeAccessors.renderWorldCopies.get=function(){return this._renderWorldCopies},prototypeAccessors.worldSize.get=function(){return this.tileSize*this.scale},prototypeAccessors.centerPoint.get=function(){return this.size._div(2)},prototypeAccessors.size.get=function(){return new Point(this.width,this.height)},prototypeAccessors.bearing.get=function(){return-this.angle/Math.PI*180},prototypeAccessors.bearing.set=function(t){var i=-util.wrap(t,-180,180)*Math.PI/180;this.angle!==i&&(this._unmodified=!1,this.angle=i,this._calcMatrices(),this.rotationMatrix=mat2.create(),mat2.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},prototypeAccessors.pitch.get=function(){return this._pitch/Math.PI*180},prototypeAccessors.pitch.set=function(t){var i=util.clamp(t,0,60)/180*Math.PI;this._pitch!==i&&(this._unmodified=!1,this._pitch=i,this._calcMatrices())},prototypeAccessors.fov.get=function(){return this._fov/Math.PI*180},prototypeAccessors.fov.set=function(t){t=Math.max(.01,Math.min(60,t)),this._fov!==t&&(this._unmodified=!1,this._fov=t/180*Math.PI,this._calcMatrices())},prototypeAccessors.zoom.get=function(){return this._zoom},prototypeAccessors.zoom.set=function(t){var i=Math.min(Math.max(t,this.minZoom),this.maxZoom);this._zoom!==i&&(this._unmodified=!1,this._zoom=i,this.scale=this.zoomScale(i),this.tileZoom=Math.floor(i),this.zoomFraction=i-this.tileZoom,this._constrain(),this._calcMatrices())},prototypeAccessors.center.get=function(){return this._center},prototypeAccessors.center.set=function(t){t.lat===this._center.lat&&t.lng===this._center.lng||(this._unmodified=!1,this._center=t,this._constrain(),this._calcMatrices())},Transform.prototype.coveringZoomLevel=function(t){return(t.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/t.tileSize))},Transform.prototype.getVisibleWrappedCoordinates=function(t){for(var i=this.pointCoordinate(new Point(0,0),0),o=this.pointCoordinate(new Point(this.width,0),0),e=Math.floor(i.column),r=Math.floor(o.column),n=[t],s=e;s<=r;s++)0!==s&&n.push(new TileCoord(t.z,t.x,t.y,s));return n},Transform.prototype.coveringTiles=function(t){var i=this.coveringZoomLevel(t),o=i;if(it.maxzoom&&(i=t.maxzoom);var e=this.pointCoordinate(this.centerPoint,i),r=new Point(e.column-.5,e.row-.5),n=[this.pointCoordinate(new Point(0,0),i),this.pointCoordinate(new Point(this.width,0),i),this.pointCoordinate(new Point(this.width,this.height),i),this.pointCoordinate(new Point(0,this.height),i)];return TileCoord.cover(i,n,t.reparseOverscaled?o:i,this._renderWorldCopies).sort(function(t,i){return r.dist(t)-r.dist(i)})},Transform.prototype.resize=function(t,i){this.width=t,this.height=i,this.pixelsToGLUnits=[2/t,-2/i],this._constrain(),this._calcMatrices()},prototypeAccessors.unmodified.get=function(){return this._unmodified},Transform.prototype.zoomScale=function(t){return Math.pow(2,t)},Transform.prototype.scaleZoom=function(t){return Math.log(t)/Math.LN2},Transform.prototype.project=function(t){return new Point(this.lngX(t.lng),this.latY(t.lat))},Transform.prototype.unproject=function(t){return new LngLat(this.xLng(t.x),this.yLat(t.y))},prototypeAccessors.x.get=function(){return this.lngX(this.center.lng)},prototypeAccessors.y.get=function(){return this.latY(this.center.lat)},prototypeAccessors.point.get=function(){return new Point(this.x,this.y)},Transform.prototype.lngX=function(t){return(180+t)*this.worldSize/360},Transform.prototype.latY=function(t){var i=180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360));return(180-i)*this.worldSize/360},Transform.prototype.xLng=function(t){return 360*t/this.worldSize-180},Transform.prototype.yLat=function(t){var i=180-360*t/this.worldSize;return 360/Math.PI*Math.atan(Math.exp(i*Math.PI/180))-90},Transform.prototype.setLocationAtPoint=function(t,i){var o=this.pointCoordinate(i)._sub(this.pointCoordinate(this.centerPoint));this.center=this.coordinateLocation(this.locationCoordinate(t)._sub(o)),this._renderWorldCopies&&(this.center=this.center.wrap())},Transform.prototype.locationPoint=function(t){return this.coordinatePoint(this.locationCoordinate(t))},Transform.prototype.pointLocation=function(t){return this.coordinateLocation(this.pointCoordinate(t))},Transform.prototype.locationCoordinate=function(t){return new Coordinate(this.lngX(t.lng)/this.tileSize,this.latY(t.lat)/this.tileSize,this.zoom).zoomTo(this.tileZoom)},Transform.prototype.coordinateLocation=function(t){var i=t.zoomTo(this.zoom);return new LngLat(this.xLng(i.column*this.tileSize),this.yLat(i.row*this.tileSize))},Transform.prototype.pointCoordinate=function(t,i){void 0===i&&(i=this.tileZoom);var o=0,e=[t.x,t.y,0,1],r=[t.x,t.y,1,1];vec4.transformMat4(e,e,this.pixelMatrixInverse),vec4.transformMat4(r,r,this.pixelMatrixInverse);var n=e[3],s=r[3],a=e[0]/n,h=r[0]/s,c=e[1]/n,m=r[1]/s,p=e[2]/n,l=r[2]/s,u=p===l?0:(o-p)/(l-p);return new Coordinate(interp(a,h,u)/this.tileSize,interp(c,m,u)/this.tileSize,this.zoom)._zoomTo(i)},Transform.prototype.coordinatePoint=function(t){var i=t.zoomTo(this.zoom),o=[i.column*this.tileSize,i.row*this.tileSize,0,1];return vec4.transformMat4(o,o,this.pixelMatrix),new Point(o[0]/o[3],o[1]/o[3])},Transform.prototype.calculatePosMatrix=function(t,i){var o=t.toCoordinate(i),e=this.worldSize/this.zoomScale(o.zoom),r=mat4.identity(new Float64Array(16));return mat4.translate(r,r,[o.column*e,o.row*e,0]),mat4.scale(r,r,[e/EXTENT,e/EXTENT,1]),mat4.multiply(r,this.projMatrix,r),new Float32Array(r)},Transform.prototype._constrain=function(){if(this.center&&this.width&&this.height&&!this._constraining){this._constraining=!0;var t,i,o,e,r=-90,n=90,s=-180,a=180,h=this.size,c=this._unmodified;if(this.latRange){var m=this.latRange;r=this.latY(m[1]),n=this.latY(m[0]),t=n-rn&&(e=n-f)}if(this.lngRange){var d=this.x,g=h.x/2;d-ga&&(o=a-g)}void 0===o&&void 0===e||(this.center=this.unproject(new Point(void 0!==o?o:this.x,void 0!==e?e:this.y))),this._unmodified=c,this._constraining=!1}},Transform.prototype._calcMatrices=function(){if(this.height){this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height;var t=this._fov/2,i=Math.PI/2+this._pitch,o=Math.sin(t)*this.cameraToCenterDistance/Math.sin(Math.PI-i-t),e=Math.cos(Math.PI/2-this._pitch)*o+this.cameraToCenterDistance,r=1.01*e,n=new Float64Array(16);mat4.perspective(n,this._fov,this.width/this.height,1,r),mat4.scale(n,n,[1,-1,1]),mat4.translate(n,n,[0,0,-this.cameraToCenterDistance]),mat4.rotateX(n,n,this._pitch),mat4.rotateZ(n,n,this.angle),mat4.translate(n,n,[-this.x,-this.y,0]);var s=this.worldSize/(2*Math.PI*6378137*Math.abs(Math.cos(this.center.lat*(Math.PI/180))));if(mat4.scale(n,n,[1,1,s,1]),this.projMatrix=n,n=mat4.create(),mat4.scale(n,n,[this.width/2,-this.height/2,1]),mat4.translate(n,n,[1,-1,0]),this.pixelMatrix=mat4.multiply(new Float64Array(16),n,this.projMatrix),n=mat4.invert(new Float64Array(16),this.pixelMatrix),!n)throw new Error(\"failed to invert matrix\");this.pixelMatrixInverse=n}},Object.defineProperties(Transform.prototype,prototypeAccessors),module.exports=Transform;\n},{\"../data/extent\":54,\"../source/tile_coord\":96,\"../style-spec/util/interpolate\":123,\"../util/util\":215,\"./coordinate\":61,\"./lng_lat\":62,\"@mapbox/gl-matrix\":1,\"point-geometry\":26}],65:[function(_dereq_,module,exports){\n\"use strict\";var browser=_dereq_(\"./util/browser\"),mapboxgl=module.exports={};mapboxgl.version=_dereq_(\"../package.json\").version,mapboxgl.workerCount=Math.max(Math.floor(browser.hardwareConcurrency/2),1),mapboxgl.Map=_dereq_(\"./ui/map\"),mapboxgl.NavigationControl=_dereq_(\"./ui/control/navigation_control\"),mapboxgl.GeolocateControl=_dereq_(\"./ui/control/geolocate_control\"),mapboxgl.AttributionControl=_dereq_(\"./ui/control/attribution_control\"),mapboxgl.ScaleControl=_dereq_(\"./ui/control/scale_control\"),mapboxgl.FullscreenControl=_dereq_(\"./ui/control/fullscreen_control\"),mapboxgl.Popup=_dereq_(\"./ui/popup\"),mapboxgl.Marker=_dereq_(\"./ui/marker\"),mapboxgl.Style=_dereq_(\"./style/style\"),mapboxgl.LngLat=_dereq_(\"./geo/lng_lat\"),mapboxgl.LngLatBounds=_dereq_(\"./geo/lng_lat_bounds\"),mapboxgl.Point=_dereq_(\"point-geometry\"),mapboxgl.Evented=_dereq_(\"./util/evented\"),mapboxgl.supported=_dereq_(\"./util/browser\").supported;var config=_dereq_(\"./util/config\");mapboxgl.config=config;var rtlTextPlugin=_dereq_(\"./source/rtl_text_plugin\");mapboxgl.setRTLTextPlugin=rtlTextPlugin.setRTLTextPlugin,Object.defineProperty(mapboxgl,\"accessToken\",{get:function(){return config.ACCESS_TOKEN},set:function(o){config.ACCESS_TOKEN=o}});\n},{\"../package.json\":43,\"./geo/lng_lat\":62,\"./geo/lng_lat_bounds\":63,\"./source/rtl_text_plugin\":91,\"./style/style\":149,\"./ui/control/attribution_control\":176,\"./ui/control/fullscreen_control\":177,\"./ui/control/geolocate_control\":178,\"./ui/control/navigation_control\":180,\"./ui/control/scale_control\":181,\"./ui/map\":190,\"./ui/marker\":191,\"./ui/popup\":192,\"./util/browser\":195,\"./util/config\":199,\"./util/evented\":203,\"point-geometry\":26}],66:[function(_dereq_,module,exports){\n\"use strict\";function drawBackground(r,t,e){var a=r.gl,i=r.transform,n=i.tileSize,o=e.paint[\"background-color\"],l=e.paint[\"background-pattern\"],u=e.paint[\"background-opacity\"],f=!l&&1===o[3]&&1===u;if(r.isOpaquePass===f){a.disable(a.STENCIL_TEST),r.setDepthSublayer(0);var s;l?(s=r.useProgram(\"fillPattern\",r.basicFillProgramConfiguration),pattern.prepare(l,r,s),r.tileExtentPatternVAO.bind(a,s,r.tileExtentBuffer)):(s=r.useProgram(\"fill\",r.basicFillProgramConfiguration),a.uniform4fv(s.u_color,o),r.tileExtentVAO.bind(a,s,r.tileExtentBuffer)),a.uniform1f(s.u_opacity,u);for(var c=i.coveringTiles({tileSize:n}),g=0,p=c;g\":[24,[4,18,20,9,4,0]],\"?\":[18,[3,16,3,17,4,19,5,20,7,21,11,21,13,20,14,19,15,17,15,15,14,13,13,12,9,10,9,7,-1,-1,9,2,8,1,9,0,10,1,9,2]],\"@\":[27,[18,13,17,15,15,16,12,16,10,15,9,14,8,11,8,8,9,6,11,5,14,5,16,6,17,8,-1,-1,12,16,10,14,9,11,9,8,10,6,11,5,-1,-1,18,16,17,8,17,6,19,5,21,5,23,7,24,10,24,12,23,15,22,17,20,19,18,20,15,21,12,21,9,20,7,19,5,17,4,15,3,12,3,9,4,6,5,4,7,2,9,1,12,0,15,0,18,1,20,2,21,3,-1,-1,19,16,18,8,18,6,19,5]],A:[18,[9,21,1,0,-1,-1,9,21,17,0,-1,-1,4,7,14,7]],B:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,15,17,13,16,12,13,11,-1,-1,4,11,13,11,16,10,17,9,18,7,18,4,17,2,16,1,13,0,4,0]],C:[21,[18,16,17,18,15,20,13,21,9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5]],D:[21,[4,21,4,0,-1,-1,4,21,11,21,14,20,16,18,17,16,18,13,18,8,17,5,16,3,14,1,11,0,4,0]],E:[19,[4,21,4,0,-1,-1,4,21,17,21,-1,-1,4,11,12,11,-1,-1,4,0,17,0]],F:[18,[4,21,4,0,-1,-1,4,21,17,21,-1,-1,4,11,12,11]],G:[21,[18,16,17,18,15,20,13,21,9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,18,8,-1,-1,13,8,18,8]],H:[22,[4,21,4,0,-1,-1,18,21,18,0,-1,-1,4,11,18,11]],I:[8,[4,21,4,0]],J:[16,[12,21,12,5,11,2,10,1,8,0,6,0,4,1,3,2,2,5,2,7]],K:[21,[4,21,4,0,-1,-1,18,21,4,7,-1,-1,9,12,18,0]],L:[17,[4,21,4,0,-1,-1,4,0,16,0]],M:[24,[4,21,4,0,-1,-1,4,21,12,0,-1,-1,20,21,12,0,-1,-1,20,21,20,0]],N:[22,[4,21,4,0,-1,-1,4,21,18,0,-1,-1,18,21,18,0]],O:[22,[9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,19,8,19,13,18,16,17,18,15,20,13,21,9,21]],P:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,14,17,12,16,11,13,10,4,10]],Q:[22,[9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,19,8,19,13,18,16,17,18,15,20,13,21,9,21,-1,-1,12,4,18,-2]],R:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,15,17,13,16,12,13,11,4,11,-1,-1,11,11,18,0]],S:[20,[17,18,15,20,12,21,8,21,5,20,3,18,3,16,4,14,5,13,7,12,13,10,15,9,16,8,17,6,17,3,15,1,12,0,8,0,5,1,3,3]],T:[16,[8,21,8,0,-1,-1,1,21,15,21]],U:[22,[4,21,4,6,5,3,7,1,10,0,12,0,15,1,17,3,18,6,18,21]],V:[18,[1,21,9,0,-1,-1,17,21,9,0]],W:[24,[2,21,7,0,-1,-1,12,21,7,0,-1,-1,12,21,17,0,-1,-1,22,21,17,0]],X:[20,[3,21,17,0,-1,-1,17,21,3,0]],Y:[18,[1,21,9,11,9,0,-1,-1,17,21,9,11]],Z:[20,[17,21,3,0,-1,-1,3,21,17,21,-1,-1,3,0,17,0]],\"[\":[14,[4,25,4,-7,-1,-1,5,25,5,-7,-1,-1,4,25,11,25,-1,-1,4,-7,11,-7]],\"\\\\\":[14,[0,21,14,-3]],\"]\":[14,[9,25,9,-7,-1,-1,10,25,10,-7,-1,-1,3,25,10,25,-1,-1,3,-7,10,-7]],\"^\":[16,[6,15,8,18,10,15,-1,-1,3,12,8,17,13,12,-1,-1,8,17,8,0]],_:[16,[0,-2,16,-2]],\"`\":[10,[6,21,5,20,4,18,4,16,5,15,6,16,5,17]],a:[19,[15,14,15,0,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],b:[19,[4,21,4,0,-1,-1,4,11,6,13,8,14,11,14,13,13,15,11,16,8,16,6,15,3,13,1,11,0,8,0,6,1,4,3]],c:[18,[15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],d:[19,[15,21,15,0,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],e:[18,[3,8,15,8,15,10,14,12,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],f:[12,[10,21,8,21,6,20,5,17,5,0,-1,-1,2,14,9,14]],g:[19,[15,14,15,-2,14,-5,13,-6,11,-7,8,-7,6,-6,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],h:[19,[4,21,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0]],i:[8,[3,21,4,20,5,21,4,22,3,21,-1,-1,4,14,4,0]],j:[10,[5,21,6,20,7,21,6,22,5,21,-1,-1,6,14,6,-3,5,-6,3,-7,1,-7]],k:[17,[4,21,4,0,-1,-1,14,14,4,4,-1,-1,8,8,15,0]],l:[8,[4,21,4,0]],m:[30,[4,14,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0,-1,-1,15,10,18,13,20,14,23,14,25,13,26,10,26,0]],n:[19,[4,14,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0]],o:[19,[8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3,16,6,16,8,15,11,13,13,11,14,8,14]],p:[19,[4,14,4,-7,-1,-1,4,11,6,13,8,14,11,14,13,13,15,11,16,8,16,6,15,3,13,1,11,0,8,0,6,1,4,3]],q:[19,[15,14,15,-7,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],r:[13,[4,14,4,0,-1,-1,4,8,5,11,7,13,9,14,12,14]],s:[17,[14,11,13,13,10,14,7,14,4,13,3,11,4,9,6,8,11,7,13,6,14,4,14,3,13,1,10,0,7,0,4,1,3,3]],t:[12,[5,21,5,4,6,1,8,0,10,0,-1,-1,2,14,9,14]],u:[19,[4,14,4,4,5,1,7,0,10,0,12,1,15,4,-1,-1,15,14,15,0]],v:[16,[2,14,8,0,-1,-1,14,14,8,0]],w:[22,[3,14,7,0,-1,-1,11,14,7,0,-1,-1,11,14,15,0,-1,-1,19,14,15,0]],x:[17,[3,14,14,0,-1,-1,14,14,3,0]],y:[16,[2,14,8,0,-1,-1,14,14,8,0,6,-4,4,-6,2,-7,1,-7]],z:[17,[14,14,3,0,-1,-1,3,14,14,14,-1,-1,3,0,14,0]],\"{\":[14,[9,25,7,24,6,23,5,21,5,19,6,17,7,16,8,14,8,12,6,10,-1,-1,7,24,6,22,6,20,7,18,8,17,9,15,9,13,8,11,4,9,8,7,9,5,9,3,8,1,7,0,6,-2,6,-4,7,-6,-1,-1,6,8,8,6,8,4,7,2,6,1,5,-1,5,-3,6,-5,7,-6,9,-7]],\"|\":[8,[4,25,4,-7]],\"}\":[14,[5,25,7,24,8,23,9,21,9,19,8,17,7,16,6,14,6,12,8,10,-1,-1,7,24,8,22,8,20,7,18,6,17,5,15,5,13,6,11,10,9,6,7,5,5,5,3,6,1,7,0,8,-2,8,-4,7,-6,-1,-1,8,8,6,6,6,4,7,2,8,1,9,-1,9,-3,8,-5,7,-6,5,-7]],\"~\":[24,[3,6,3,8,4,11,6,12,8,12,10,11,14,8,16,7,18,7,20,8,21,10,-1,-1,3,8,4,10,6,11,8,11,10,10,14,7,16,6,18,6,20,7,21,10,21,12]]};\n},{\"../data/buffer\":51,\"../data/extent\":54,\"../data/pos_array\":57,\"../util/browser\":195,\"./vertex_array_object\":80,\"@mapbox/gl-matrix\":1}],70:[function(_dereq_,module,exports){\n\"use strict\";function drawFill(t,e,r,i){var a=t.gl;a.enable(a.STENCIL_TEST);var l=!r.paint[\"fill-pattern\"]&&r.isPaintValueFeatureConstant(\"fill-color\")&&r.isPaintValueFeatureConstant(\"fill-opacity\")&&1===r.paint[\"fill-color\"][3]&&1===r.paint[\"fill-opacity\"];t.isOpaquePass===l&&(t.setDepthSublayer(1),drawFillTiles(t,e,r,i,drawFillTile)),!t.isOpaquePass&&r.paint[\"fill-antialias\"]&&(t.lineWidth(2),t.depthMask(!1),t.setDepthSublayer(r.getPaintProperty(\"fill-outline-color\")?2:0),drawFillTiles(t,e,r,i,drawStrokeTile))}function drawFillTiles(t,e,r,i,a){for(var l=!0,n=0,o=i;n0?1/(1-r):1+r}function saturationFactor(r){return r>0?1-1/(1.001-r):-r}function getFadeValues(r,t,e,a){var i=e.paint[\"raster-fade-duration\"];if(r.sourceCache&&i>0){var o=Date.now(),n=(o-r.timeAdded)/i,u=t?(o-t.timeAdded)/i:-1,s=r.sourceCache.getSource(),c=a.coveringZoomLevel({tileSize:s.tileSize,roundZoom:s.roundZoom}),f=!t||Math.abs(t.coord.z-c)>Math.abs(r.coord.z-c),d=f&&r.refreshedUponExpiration?1:util.clamp(f?n:1-u,0,1);return r.refreshedUponExpiration&&n>=1&&(r.refreshedUponExpiration=!1),t?{opacity:1,mix:1-d}:{opacity:d,mix:0}}return{opacity:1,mix:0}}var util=_dereq_(\"../util/util\");module.exports=drawRaster;\n},{\"../util/util\":215}],74:[function(_dereq_,module,exports){\n\"use strict\";function drawSymbols(t,e,i,o){if(!t.isOpaquePass){var a=!(i.layout[\"text-allow-overlap\"]||i.layout[\"icon-allow-overlap\"]||i.layout[\"text-ignore-placement\"]||i.layout[\"icon-ignore-placement\"]),n=t.gl;a?n.disable(n.STENCIL_TEST):n.enable(n.STENCIL_TEST),t.setDepthSublayer(0),t.depthMask(!1),drawLayerSymbols(t,e,i,o,!1,i.paint[\"icon-translate\"],i.paint[\"icon-translate-anchor\"],i.layout[\"icon-rotation-alignment\"],i.layout[\"icon-rotation-alignment\"]),drawLayerSymbols(t,e,i,o,!0,i.paint[\"text-translate\"],i.paint[\"text-translate-anchor\"],i.layout[\"text-rotation-alignment\"],i.layout[\"text-pitch-alignment\"]),e.map.showCollisionBoxes&&drawCollisionDebug(t,e,i,o)}}function drawLayerSymbols(t,e,i,o,a,n,r,s,l){if(a||!t.style.sprite||t.style.sprite.loaded()){var u=t.gl,m=\"map\"===s,f=\"map\"===l,c=f;c?u.enable(u.DEPTH_TEST):u.disable(u.DEPTH_TEST);for(var p,_,g=0,y=o;gthis.previousZoom;a--)r.changeTimes[a]=e,r.changeOpacities[a]=r.opacities[a];for(a=0;a<256;a++){var s=e-r.changeTimes[a],o=255*(i?s/i:1);a<=t?r.opacities[a]=r.changeOpacities[a]+o:r.opacities[a]=r.changeOpacities[a]-o}this.changed=!0,this.previousZoom=t},FrameHistory.prototype.bind=function(e){this.texture?(e.bindTexture(e.TEXTURE_2D,this.texture),this.changed&&(e.texSubImage2D(e.TEXTURE_2D,0,0,0,256,1,e.ALPHA,e.UNSIGNED_BYTE,this.array),this.changed=!1)):(this.texture=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.texture),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.NEAREST),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.NEAREST),e.texImage2D(e.TEXTURE_2D,0,e.ALPHA,256,1,0,e.ALPHA,e.UNSIGNED_BYTE,this.array))},module.exports=FrameHistory;\n},{}],76:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),LineAtlas=function(t,i){this.width=t,this.height=i,this.nextRow=0,this.bytes=4,this.data=new Uint8Array(this.width*this.height*this.bytes),this.positions={}};LineAtlas.prototype.setSprite=function(t){this.sprite=t},LineAtlas.prototype.getDash=function(t,i){var e=t.join(\",\")+i;return this.positions[e]||(this.positions[e]=this.addDash(t,i)),this.positions[e]},LineAtlas.prototype.addDash=function(t,i){var e=this,h=i?7:0,s=2*h+1,a=128;if(this.nextRow+s>this.height)return util.warnOnce(\"LineAtlas out of space\"),null;for(var r=0,n=0;n0?r.pop():null},Painter.prototype.getViewportTexture=function(e,r){var t=this.reusableTextures.viewport;if(t)return t.width===e&&t.height===r?t:(this.gl.deleteTexture(t),void(this.reusableTextures.viewport=null))},Painter.prototype.lineWidth=function(e){this.gl.lineWidth(util.clamp(e,this.lineWidthRange[0],this.lineWidthRange[1]))},Painter.prototype.showOverdrawInspector=function(e){if(e||this._showOverdrawInspector){this._showOverdrawInspector=e;var r=this.gl;if(e){r.blendFunc(r.CONSTANT_COLOR,r.ONE);var t=8,i=1/t;r.blendColor(i,i,i,0),r.clearColor(0,0,0,1),r.clear(r.COLOR_BUFFER_BIT)}else r.blendFunc(r.ONE,r.ONE_MINUS_SRC_ALPHA)}},Painter.prototype.createProgram=function(e,r){var t=this.gl,i=t.createProgram(),a=shaders[e],s=\"#define MAPBOX_GL_JS\\n#define DEVICE_PIXEL_RATIO \"+browser.devicePixelRatio.toFixed(1)+\"\\n\";this._showOverdrawInspector&&(s+=\"#define OVERDRAW_INSPECTOR;\\n\");var o=r.applyPragmas(s+shaders.prelude.fragmentSource+a.fragmentSource,\"fragment\"),n=r.applyPragmas(s+shaders.prelude.vertexSource+a.vertexSource,\"vertex\"),l=t.createShader(t.FRAGMENT_SHADER);t.shaderSource(l,o),t.compileShader(l),t.attachShader(i,l);var h=t.createShader(t.VERTEX_SHADER);t.shaderSource(h,n),t.compileShader(h),t.attachShader(i,h),t.linkProgram(i);for(var u=t.getProgramParameter(i,t.ACTIVE_ATTRIBUTES),c={program:i,numAttributes:u},p=0;p>16,n>>16),o.uniform2f(i.u_pixel_coord_lower,65535&u,65535&n)};\n},{\"../source/pixels_to_tile_units\":88}],79:[function(_dereq_,module,exports){\n\"use strict\";var path=_dereq_(\"path\");module.exports={prelude:{fragmentSource:\"#ifdef GL_ES\\nprecision mediump float;\\n#else\\n\\n#if !defined(lowp)\\n#define lowp\\n#endif\\n\\n#if !defined(mediump)\\n#define mediump\\n#endif\\n\\n#if !defined(highp)\\n#define highp\\n#endif\\n\\n#endif\\n\",vertexSource:\"#ifdef GL_ES\\nprecision highp float;\\n#else\\n\\n#if !defined(lowp)\\n#define lowp\\n#endif\\n\\n#if !defined(mediump)\\n#define mediump\\n#endif\\n\\n#if !defined(highp)\\n#define highp\\n#endif\\n\\n#endif\\n\\nfloat evaluate_zoom_function_1(const vec4 values, const float t) {\\n if (t < 1.0) {\\n return mix(values[0], values[1], t);\\n } else if (t < 2.0) {\\n return mix(values[1], values[2], t - 1.0);\\n } else {\\n return mix(values[2], values[3], t - 2.0);\\n }\\n}\\nvec4 evaluate_zoom_function_4(const vec4 value0, const vec4 value1, const vec4 value2, const vec4 value3, const float t) {\\n if (t < 1.0) {\\n return mix(value0, value1, t);\\n } else if (t < 2.0) {\\n return mix(value1, value2, t - 1.0);\\n } else {\\n return mix(value2, value3, t - 2.0);\\n }\\n}\\n\\n// Unpack a pair of values that have been packed into a single float.\\n// The packed values are assumed to be 8-bit unsigned integers, and are\\n// packed like so:\\n// packedValue = floor(input[0]) * 256 + input[1],\\nvec2 unpack_float(const float packedValue) {\\n int packedIntValue = int(packedValue);\\n int v0 = packedIntValue / 256;\\n return vec2(v0, packedIntValue - v0 * 256);\\n}\\n\\n\\n// To minimize the number of attributes needed in the mapbox-gl-native shaders,\\n// we encode a 4-component color into a pair of floats (i.e. a vec2) as follows:\\n// [ floor(color.r * 255) * 256 + color.g * 255,\\n// floor(color.b * 255) * 256 + color.g * 255 ]\\nvec4 decode_color(const vec2 encodedColor) {\\n return vec4(\\n unpack_float(encodedColor[0]) / 255.0,\\n unpack_float(encodedColor[1]) / 255.0\\n );\\n}\\n\\n// Unpack a pair of paint values and interpolate between them.\\nfloat unpack_mix_vec2(const vec2 packedValue, const float t) {\\n return mix(packedValue[0], packedValue[1], t);\\n}\\n\\n// Unpack a pair of paint values and interpolate between them.\\nvec4 unpack_mix_vec4(const vec4 packedColors, const float t) {\\n vec4 minColor = decode_color(vec2(packedColors[0], packedColors[1]));\\n vec4 maxColor = decode_color(vec2(packedColors[2], packedColors[3]));\\n return mix(minColor, maxColor, t);\\n}\\n\\n// The offset depends on how many pixels are between the world origin and the edge of the tile:\\n// vec2 offset = mod(pixel_coord, size)\\n//\\n// At high zoom levels there are a ton of pixels between the world origin and the edge of the tile.\\n// The glsl spec only guarantees 16 bits of precision for highp floats. We need more than that.\\n//\\n// The pixel_coord is passed in as two 16 bit values:\\n// pixel_coord_upper = floor(pixel_coord / 2^16)\\n// pixel_coord_lower = mod(pixel_coord, 2^16)\\n//\\n// The offset is calculated in a series of steps that should preserve this precision:\\nvec2 get_pattern_pos(const vec2 pixel_coord_upper, const vec2 pixel_coord_lower,\\n const vec2 pattern_size, const float tile_units_to_pixels, const vec2 pos) {\\n\\n vec2 offset = mod(mod(mod(pixel_coord_upper, pattern_size) * 256.0, pattern_size) * 256.0 + pixel_coord_lower, pattern_size);\\n return (tile_units_to_pixels * pos + offset) / pattern_size;\\n}\\n\"},circle:{fragmentSource:\"#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\\n\\nvarying vec2 v_extrude;\\nvarying lowp float v_antialiasblur;\\n\\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\\n\\n float extrude_length = length(v_extrude);\\n float antialiased_blur = -max(blur, v_antialiasblur);\\n\\n float opacity_t = smoothstep(0.0, antialiased_blur, extrude_length - 1.0);\\n\\n float color_t = stroke_width < 0.01 ? 0.0 : smoothstep(\\n antialiased_blur,\\n 0.0,\\n extrude_length - radius / (radius + stroke_width)\\n );\\n\\n gl_FragColor = opacity_t * mix(color * opacity, stroke_color * stroke_opacity, color_t);\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform bool u_scale_with_map;\\nuniform vec2 u_extrude_scale;\\n\\nattribute vec2 a_pos;\\n\\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\\n\\nvarying vec2 v_extrude;\\nvarying lowp float v_antialiasblur;\\n\\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\\n\\n // unencode the extrusion vector that we snuck into the a_pos vector\\n v_extrude = vec2(mod(a_pos, 2.0) * 2.0 - 1.0);\\n\\n vec2 extrude = v_extrude * (radius + stroke_width) * u_extrude_scale;\\n // multiply a_pos by 0.5, since we had it * 2 in order to sneak\\n // in extrusion data\\n gl_Position = u_matrix * vec4(floor(a_pos * 0.5), 0, 1);\\n\\n if (u_scale_with_map) {\\n gl_Position.xy += extrude;\\n } else {\\n gl_Position.xy += extrude * gl_Position.w;\\n }\\n\\n // This is a minimum blur distance that serves as a faux-antialiasing for\\n // the circle. since blur is a ratio of the circle's size and the intent is\\n // to keep the blur at roughly 1px, the two are inversely related.\\n v_antialiasblur = 1.0 / DEVICE_PIXEL_RATIO / (radius + stroke_width);\\n}\\n\"},collisionBox:{fragmentSource:\"uniform float u_zoom;\\nuniform float u_maxzoom;\\n\\nvarying float v_max_zoom;\\nvarying float v_placement_zoom;\\n\\nvoid main() {\\n\\n float alpha = 0.5;\\n\\n gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0) * alpha;\\n\\n if (v_placement_zoom > u_zoom) {\\n gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0) * alpha;\\n }\\n\\n if (u_zoom >= v_max_zoom) {\\n gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0) * alpha * 0.25;\\n }\\n\\n if (v_placement_zoom >= u_maxzoom) {\\n gl_FragColor = vec4(0.0, 0.0, 1.0, 1.0) * alpha * 0.2;\\n }\\n}\\n\",vertexSource:\"attribute vec2 a_pos;\\nattribute vec2 a_extrude;\\nattribute vec2 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform float u_scale;\\n\\nvarying float v_max_zoom;\\nvarying float v_placement_zoom;\\n\\nvoid main() {\\n gl_Position = u_matrix * vec4(a_pos + a_extrude / u_scale, 0.0, 1.0);\\n\\n v_max_zoom = a_data.x;\\n v_placement_zoom = a_data.y;\\n}\\n\"},debug:{fragmentSource:\"uniform highp vec4 u_color;\\n\\nvoid main() {\\n gl_FragColor = u_color;\\n}\\n\",vertexSource:\"attribute vec2 a_pos;\\n\\nuniform mat4 u_matrix;\\n\\nvoid main() {\\n gl_Position = u_matrix * vec4(a_pos, step(32767.0, a_pos.x), 1);\\n}\\n\"},fill:{fragmentSource:\"#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize highp vec4 color\\n #pragma mapbox: initialize lowp float opacity\\n\\n gl_FragColor = color * opacity;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"attribute vec2 a_pos;\\n\\nuniform mat4 u_matrix;\\n\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize highp vec4 color\\n #pragma mapbox: initialize lowp float opacity\\n\\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\\n}\\n\"},fillOutline:{fragmentSource:\"#pragma mapbox: define highp vec4 outline_color\\n#pragma mapbox: define lowp float opacity\\n\\nvarying vec2 v_pos;\\n\\nvoid main() {\\n #pragma mapbox: initialize highp vec4 outline_color\\n #pragma mapbox: initialize lowp float opacity\\n\\n float dist = length(v_pos - gl_FragCoord.xy);\\n float alpha = 1.0 - smoothstep(0.0, 1.0, dist);\\n gl_FragColor = outline_color * (alpha * opacity);\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"attribute vec2 a_pos;\\n\\nuniform mat4 u_matrix;\\nuniform vec2 u_world;\\n\\nvarying vec2 v_pos;\\n\\n#pragma mapbox: define highp vec4 outline_color\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize highp vec4 outline_color\\n #pragma mapbox: initialize lowp float opacity\\n\\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\\n v_pos = (gl_Position.xy / gl_Position.w + 1.0) / 2.0 * u_world;\\n}\\n\"},fillOutlinePattern:{fragmentSource:\"uniform vec2 u_pattern_tl_a;\\nuniform vec2 u_pattern_br_a;\\nuniform vec2 u_pattern_tl_b;\\nuniform vec2 u_pattern_br_b;\\nuniform float u_mix;\\n\\nuniform sampler2D u_image;\\n\\nvarying vec2 v_pos_a;\\nvarying vec2 v_pos_b;\\nvarying vec2 v_pos;\\n\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float opacity\\n\\n vec2 imagecoord = mod(v_pos_a, 1.0);\\n vec2 pos = mix(u_pattern_tl_a, u_pattern_br_a, imagecoord);\\n vec4 color1 = texture2D(u_image, pos);\\n\\n vec2 imagecoord_b = mod(v_pos_b, 1.0);\\n vec2 pos2 = mix(u_pattern_tl_b, u_pattern_br_b, imagecoord_b);\\n vec4 color2 = texture2D(u_image, pos2);\\n\\n // find distance to outline for alpha interpolation\\n\\n float dist = length(v_pos - gl_FragCoord.xy);\\n float alpha = 1.0 - smoothstep(0.0, 1.0, dist);\\n\\n\\n gl_FragColor = mix(color1, color2, u_mix) * alpha * opacity;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform vec2 u_world;\\nuniform vec2 u_pattern_size_a;\\nuniform vec2 u_pattern_size_b;\\nuniform vec2 u_pixel_coord_upper;\\nuniform vec2 u_pixel_coord_lower;\\nuniform float u_scale_a;\\nuniform float u_scale_b;\\nuniform float u_tile_units_to_pixels;\\n\\nattribute vec2 a_pos;\\n\\nvarying vec2 v_pos_a;\\nvarying vec2 v_pos_b;\\nvarying vec2 v_pos;\\n\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float opacity\\n\\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\\n\\n 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);\\n 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);\\n\\n v_pos = (gl_Position.xy / gl_Position.w + 1.0) / 2.0 * u_world;\\n}\\n\"},fillPattern:{fragmentSource:\"uniform vec2 u_pattern_tl_a;\\nuniform vec2 u_pattern_br_a;\\nuniform vec2 u_pattern_tl_b;\\nuniform vec2 u_pattern_br_b;\\nuniform float u_mix;\\n\\nuniform sampler2D u_image;\\n\\nvarying vec2 v_pos_a;\\nvarying vec2 v_pos_b;\\n\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float opacity\\n\\n vec2 imagecoord = mod(v_pos_a, 1.0);\\n vec2 pos = mix(u_pattern_tl_a, u_pattern_br_a, imagecoord);\\n vec4 color1 = texture2D(u_image, pos);\\n\\n vec2 imagecoord_b = mod(v_pos_b, 1.0);\\n vec2 pos2 = mix(u_pattern_tl_b, u_pattern_br_b, imagecoord_b);\\n vec4 color2 = texture2D(u_image, pos2);\\n\\n gl_FragColor = mix(color1, color2, u_mix) * opacity;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform vec2 u_pattern_size_a;\\nuniform vec2 u_pattern_size_b;\\nuniform vec2 u_pixel_coord_upper;\\nuniform vec2 u_pixel_coord_lower;\\nuniform float u_scale_a;\\nuniform float u_scale_b;\\nuniform float u_tile_units_to_pixels;\\n\\nattribute vec2 a_pos;\\n\\nvarying vec2 v_pos_a;\\nvarying vec2 v_pos_b;\\n\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float opacity\\n\\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\\n\\n 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);\\n 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);\\n}\\n\"},fillExtrusion:{fragmentSource:\"varying vec4 v_color;\\n#pragma mapbox: define lowp float base\\n#pragma mapbox: define lowp float height\\n#pragma mapbox: define highp vec4 color\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float base\\n #pragma mapbox: initialize lowp float height\\n #pragma mapbox: initialize highp vec4 color\\n\\n gl_FragColor = v_color;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform vec3 u_lightcolor;\\nuniform lowp vec3 u_lightpos;\\nuniform lowp float u_lightintensity;\\n\\nattribute vec2 a_pos;\\nattribute vec3 a_normal;\\nattribute float a_edgedistance;\\n\\nvarying vec4 v_color;\\n\\n#pragma mapbox: define lowp float base\\n#pragma mapbox: define lowp float height\\n\\n#pragma mapbox: define highp vec4 color\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float base\\n #pragma mapbox: initialize lowp float height\\n #pragma mapbox: initialize highp vec4 color\\n\\n base = max(0.0, base);\\n height = max(0.0, height);\\n\\n float ed = a_edgedistance; // use each attrib in order to not trip a VAO assert\\n float t = mod(a_normal.x, 2.0);\\n\\n gl_Position = u_matrix * vec4(a_pos, t > 0.0 ? height : base, 1);\\n\\n // Relative luminance (how dark/bright is the surface color?)\\n float colorvalue = color.r * 0.2126 + color.g * 0.7152 + color.b * 0.0722;\\n\\n v_color = vec4(0.0, 0.0, 0.0, 1.0);\\n\\n // Add slight ambient lighting so no extrusions are totally black\\n vec4 ambientlight = vec4(0.03, 0.03, 0.03, 1.0);\\n color += ambientlight;\\n\\n // Calculate cos(theta), where theta is the angle between surface normal and diffuse light ray\\n float directional = clamp(dot(a_normal / 16384.0, u_lightpos), 0.0, 1.0);\\n\\n // Adjust directional so that\\n // the range of values for highlight/shading is narrower\\n // with lower light intensity\\n // and with lighter/brighter surface colors\\n directional = mix((1.0 - u_lightintensity), max((1.0 - colorvalue + u_lightintensity), 1.0), directional);\\n\\n // Add gradient along z axis of side surfaces\\n if (a_normal.y != 0.0) {\\n directional *= clamp((t + base) * pow(height / 150.0, 0.5), mix(0.7, 0.98, 1.0 - u_lightintensity), 1.0);\\n }\\n\\n // Assign final color based on surface + ambient light color, diffuse light directional, and light color\\n // with lower bounds adjusted to hue of light\\n // so that shading is tinted with the complementary (opposite) color to the light color\\n v_color.r += clamp(color.r * directional * u_lightcolor.r, mix(0.0, 0.3, 1.0 - u_lightcolor.r), 1.0);\\n v_color.g += clamp(color.g * directional * u_lightcolor.g, mix(0.0, 0.3, 1.0 - u_lightcolor.g), 1.0);\\n v_color.b += clamp(color.b * directional * u_lightcolor.b, mix(0.0, 0.3, 1.0 - u_lightcolor.b), 1.0);\\n}\\n\"},fillExtrusionPattern:{fragmentSource:\"uniform vec2 u_pattern_tl_a;\\nuniform vec2 u_pattern_br_a;\\nuniform vec2 u_pattern_tl_b;\\nuniform vec2 u_pattern_br_b;\\nuniform float u_mix;\\n\\nuniform sampler2D u_image;\\n\\nvarying vec2 v_pos_a;\\nvarying vec2 v_pos_b;\\nvarying vec4 v_lighting;\\n\\n#pragma mapbox: define lowp float base\\n#pragma mapbox: define lowp float height\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float base\\n #pragma mapbox: initialize lowp float height\\n\\n vec2 imagecoord = mod(v_pos_a, 1.0);\\n vec2 pos = mix(u_pattern_tl_a, u_pattern_br_a, imagecoord);\\n vec4 color1 = texture2D(u_image, pos);\\n\\n vec2 imagecoord_b = mod(v_pos_b, 1.0);\\n vec2 pos2 = mix(u_pattern_tl_b, u_pattern_br_b, imagecoord_b);\\n vec4 color2 = texture2D(u_image, pos2);\\n\\n vec4 mixedColor = mix(color1, color2, u_mix);\\n\\n gl_FragColor = mixedColor * v_lighting;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform vec2 u_pattern_size_a;\\nuniform vec2 u_pattern_size_b;\\nuniform vec2 u_pixel_coord_upper;\\nuniform vec2 u_pixel_coord_lower;\\nuniform float u_scale_a;\\nuniform float u_scale_b;\\nuniform float u_tile_units_to_pixels;\\nuniform float u_height_factor;\\n\\nuniform vec3 u_lightcolor;\\nuniform lowp vec3 u_lightpos;\\nuniform lowp float u_lightintensity;\\n\\nattribute vec2 a_pos;\\nattribute vec3 a_normal;\\nattribute float a_edgedistance;\\n\\nvarying vec2 v_pos_a;\\nvarying vec2 v_pos_b;\\nvarying vec4 v_lighting;\\nvarying float v_directional;\\n\\n#pragma mapbox: define lowp float base\\n#pragma mapbox: define lowp float height\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float base\\n #pragma mapbox: initialize lowp float height\\n\\n base = max(0.0, base);\\n height = max(0.0, height);\\n\\n float t = mod(a_normal.x, 2.0);\\n float z = t > 0.0 ? height : base;\\n\\n gl_Position = u_matrix * vec4(a_pos, z, 1);\\n\\n vec2 pos = a_normal.x == 1.0 && a_normal.y == 0.0 && a_normal.z == 16384.0\\n ? a_pos // extrusion top\\n : vec2(a_edgedistance, z * u_height_factor); // extrusion side\\n\\n 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, pos);\\n 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, pos);\\n\\n v_lighting = vec4(0.0, 0.0, 0.0, 1.0);\\n float directional = clamp(dot(a_normal / 16383.0, u_lightpos), 0.0, 1.0);\\n directional = mix((1.0 - u_lightintensity), max((0.5 + u_lightintensity), 1.0), directional);\\n\\n if (a_normal.y != 0.0) {\\n directional *= clamp((t + base) * pow(height / 150.0, 0.5), mix(0.7, 0.98, 1.0 - u_lightintensity), 1.0);\\n }\\n\\n v_lighting.rgb += clamp(directional * u_lightcolor, mix(vec3(0.0), vec3(0.3), 1.0 - u_lightcolor), vec3(1.0));\\n}\\n\"},extrusionTexture:{fragmentSource:\"uniform sampler2D u_image;\\nuniform float u_opacity;\\nvarying vec2 v_pos;\\n\\nvoid main() {\\n gl_FragColor = texture2D(u_image, v_pos) * u_opacity;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(0.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform vec2 u_world;\\nattribute vec2 a_pos;\\nvarying vec2 v_pos;\\n\\nvoid main() {\\n gl_Position = u_matrix * vec4(a_pos * u_world, 0, 1);\\n\\n v_pos.x = a_pos.x;\\n v_pos.y = 1.0 - a_pos.y;\\n}\\n\"},line:{fragmentSource:\"#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n\\nvarying vec2 v_width2;\\nvarying vec2 v_normal;\\nvarying float v_gamma_scale;\\n\\nvoid main() {\\n #pragma mapbox: initialize highp vec4 color\\n #pragma mapbox: initialize lowp float blur\\n #pragma mapbox: initialize lowp float opacity\\n\\n // Calculate the distance of the pixel from the line in pixels.\\n float dist = length(v_normal) * v_width2.s;\\n\\n // Calculate the antialiasing fade factor. This is either when fading in\\n // the line in case of an offset line (v_width2.t) or when fading out\\n // (v_width2.s)\\n float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\\n float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\\n\\n gl_FragColor = color * (alpha * opacity);\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"\\n\\n// the distance over which the line edge fades out.\\n// Retina devices need a smaller distance to avoid aliasing.\\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\\n\\n// floor(127 / 2) == 63.0\\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\\n// there are also \\\"special\\\" normals that have a bigger length (of up to 126 in\\n// this case).\\n// #define scale 63.0\\n#define scale 0.015873016\\n\\nattribute vec2 a_pos;\\nattribute vec4 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform mediump float u_ratio;\\nuniform mediump float u_width;\\nuniform vec2 u_gl_units_to_pixels;\\n\\nvarying vec2 v_normal;\\nvarying vec2 v_width2;\\nvarying float v_gamma_scale;\\n\\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\\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\\n vec2 a_extrude = a_data.xy - 128.0;\\n float a_direction = mod(a_data.z, 4.0) - 1.0;\\n\\n // We store the texture normals in the most insignificant bit\\n // transform y so that 0 => -1 and 1 => 1\\n // In the texture normal, x is 0 if the normal points straight up/down and 1 if it's a round cap\\n // y is 1 if the normal points up, and -1 if it points down\\n mediump vec2 normal = mod(a_pos, 2.0);\\n normal.y = sign(normal.y - 0.5);\\n v_normal = normal;\\n\\n\\n // these transformations used to be applied in the JS and native code bases. \\n // moved them into the shader for clarity and simplicity. \\n gapwidth = gapwidth / 2.0;\\n float width = u_width / 2.0;\\n offset = -1.0 * offset; \\n\\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\\n float outset = gapwidth + width * (gapwidth > 0.0 ? 2.0 : 1.0) + ANTIALIASING;\\n\\n // Scale the extrusion vector down to a normal and then up by the line width\\n // of this vertex.\\n mediump vec2 dist = outset * a_extrude * scale;\\n\\n // Calculate the offset when drawing a line that is to the side of the actual line.\\n // We do this by creating a vector that points towards the extrude, but rotate\\n // it when we're drawing round end points (a_direction = -1 or 1) since their\\n // extrude vector points in another direction.\\n mediump float u = 0.5 * a_direction;\\n mediump float t = 1.0 - abs(u);\\n mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\\n\\n // Remove the texture normal bit to get the position\\n vec2 pos = floor(a_pos * 0.5);\\n\\n vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\\n gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\\n\\n // calculate how much the perspective view squishes or stretches the extrude\\n float extrude_length_without_perspective = length(dist);\\n float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\\n v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\\n\\n v_width2 = vec2(outset, inset);\\n}\\n\"},linePattern:{fragmentSource:\"uniform vec2 u_pattern_size_a;\\nuniform vec2 u_pattern_size_b;\\nuniform vec2 u_pattern_tl_a;\\nuniform vec2 u_pattern_br_a;\\nuniform vec2 u_pattern_tl_b;\\nuniform vec2 u_pattern_br_b;\\nuniform float u_fade;\\n\\nuniform sampler2D u_image;\\n\\nvarying vec2 v_normal;\\nvarying vec2 v_width2;\\nvarying float v_linesofar;\\nvarying float v_gamma_scale;\\n\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float blur\\n #pragma mapbox: initialize lowp float opacity\\n\\n // Calculate the distance of the pixel from the line in pixels.\\n float dist = length(v_normal) * v_width2.s;\\n\\n // Calculate the antialiasing fade factor. This is either when fading in\\n // the line in case of an offset line (v_width2.t) or when fading out\\n // (v_width2.s)\\n float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\\n float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\\n\\n float x_a = mod(v_linesofar / u_pattern_size_a.x, 1.0);\\n float x_b = mod(v_linesofar / u_pattern_size_b.x, 1.0);\\n float y_a = 0.5 + (v_normal.y * v_width2.s / u_pattern_size_a.y);\\n float y_b = 0.5 + (v_normal.y * v_width2.s / u_pattern_size_b.y);\\n vec2 pos_a = mix(u_pattern_tl_a, u_pattern_br_a, vec2(x_a, y_a));\\n vec2 pos_b = mix(u_pattern_tl_b, u_pattern_br_b, vec2(x_b, y_b));\\n\\n vec4 color = mix(texture2D(u_image, pos_a), texture2D(u_image, pos_b), u_fade);\\n\\n gl_FragColor = color * alpha * opacity;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"// floor(127 / 2) == 63.0\\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\\n// there are also \\\"special\\\" normals that have a bigger length (of up to 126 in\\n// this case).\\n// #define scale 63.0\\n#define scale 0.015873016\\n\\n// We scale the distance before adding it to the buffers so that we can store\\n// long distances for long segments. Use this value to unscale the distance.\\n#define LINE_DISTANCE_SCALE 2.0\\n\\n// the distance over which the line edge fades out.\\n// Retina devices need a smaller distance to avoid aliasing.\\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\\n\\nattribute vec2 a_pos;\\nattribute vec4 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform mediump float u_ratio;\\nuniform mediump float u_width;\\nuniform vec2 u_gl_units_to_pixels;\\n\\nvarying vec2 v_normal;\\nvarying vec2 v_width2;\\nvarying float v_linesofar;\\nvarying float v_gamma_scale;\\n\\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\\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\\n vec2 a_extrude = a_data.xy - 128.0;\\n float a_direction = mod(a_data.z, 4.0) - 1.0;\\n float a_linesofar = (floor(a_data.z / 4.0) + a_data.w * 64.0) * LINE_DISTANCE_SCALE;\\n\\n // We store the texture normals in the most insignificant bit\\n // transform y so that 0 => -1 and 1 => 1\\n // In the texture normal, x is 0 if the normal points straight up/down and 1 if it's a round cap\\n // y is 1 if the normal points up, and -1 if it points down\\n mediump vec2 normal = mod(a_pos, 2.0);\\n normal.y = sign(normal.y - 0.5);\\n v_normal = normal;\\n\\n // these transformations used to be applied in the JS and native code bases. \\n // moved them into the shader for clarity and simplicity. \\n gapwidth = gapwidth / 2.0;\\n float width = u_width / 2.0;\\n offset = -1.0 * offset; \\n\\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\\n float outset = gapwidth + width * (gapwidth > 0.0 ? 2.0 : 1.0) + ANTIALIASING;\\n\\n // Scale the extrusion vector down to a normal and then up by the line width\\n // of this vertex.\\n mediump vec2 dist = outset * a_extrude * scale;\\n\\n // Calculate the offset when drawing a line that is to the side of the actual line.\\n // We do this by creating a vector that points towards the extrude, but rotate\\n // it when we're drawing round end points (a_direction = -1 or 1) since their\\n // extrude vector points in another direction.\\n mediump float u = 0.5 * a_direction;\\n mediump float t = 1.0 - abs(u);\\n mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\\n\\n // Remove the texture normal bit to get the position\\n vec2 pos = floor(a_pos * 0.5);\\n\\n vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\\n gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\\n\\n // calculate how much the perspective view squishes or stretches the extrude\\n float extrude_length_without_perspective = length(dist);\\n float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\\n v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\\n\\n v_linesofar = a_linesofar;\\n v_width2 = vec2(outset, inset);\\n}\\n\"},lineSDF:{fragmentSource:\"\\nuniform sampler2D u_image;\\nuniform float u_sdfgamma;\\nuniform float u_mix;\\n\\nvarying vec2 v_normal;\\nvarying vec2 v_width2;\\nvarying vec2 v_tex_a;\\nvarying vec2 v_tex_b;\\nvarying float v_gamma_scale;\\n\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n\\nvoid main() {\\n #pragma mapbox: initialize highp vec4 color\\n #pragma mapbox: initialize lowp float blur\\n #pragma mapbox: initialize lowp float opacity\\n\\n // Calculate the distance of the pixel from the line in pixels.\\n float dist = length(v_normal) * v_width2.s;\\n\\n // Calculate the antialiasing fade factor. This is either when fading in\\n // the line in case of an offset line (v_width2.t) or when fading out\\n // (v_width2.s)\\n float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\\n float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\\n\\n float sdfdist_a = texture2D(u_image, v_tex_a).a;\\n float sdfdist_b = texture2D(u_image, v_tex_b).a;\\n float sdfdist = mix(sdfdist_a, sdfdist_b, u_mix);\\n alpha *= smoothstep(0.5 - u_sdfgamma, 0.5 + u_sdfgamma, sdfdist);\\n\\n gl_FragColor = color * (alpha * opacity);\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"// floor(127 / 2) == 63.0\\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\\n// there are also \\\"special\\\" normals that have a bigger length (of up to 126 in\\n// this case).\\n// #define scale 63.0\\n#define scale 0.015873016\\n\\n// We scale the distance before adding it to the buffers so that we can store\\n// long distances for long segments. Use this value to unscale the distance.\\n#define LINE_DISTANCE_SCALE 2.0\\n\\n// the distance over which the line edge fades out.\\n// Retina devices need a smaller distance to avoid aliasing.\\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\\n\\nattribute vec2 a_pos;\\nattribute vec4 a_data;\\n\\nuniform mat4 u_matrix;\\nuniform mediump float u_ratio;\\nuniform vec2 u_patternscale_a;\\nuniform float u_tex_y_a;\\nuniform vec2 u_patternscale_b;\\nuniform float u_tex_y_b;\\nuniform vec2 u_gl_units_to_pixels;\\nuniform mediump float u_width;\\n\\nvarying vec2 v_normal;\\nvarying vec2 v_width2;\\nvarying vec2 v_tex_a;\\nvarying vec2 v_tex_b;\\nvarying float v_gamma_scale;\\n\\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\\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\\n vec2 a_extrude = a_data.xy - 128.0;\\n float a_direction = mod(a_data.z, 4.0) - 1.0;\\n float a_linesofar = (floor(a_data.z / 4.0) + a_data.w * 64.0) * LINE_DISTANCE_SCALE;\\n\\n // We store the texture normals in the most insignificant bit\\n // transform y so that 0 => -1 and 1 => 1\\n // In the texture normal, x is 0 if the normal points straight up/down and 1 if it's a round cap\\n // y is 1 if the normal points up, and -1 if it points down\\n mediump vec2 normal = mod(a_pos, 2.0);\\n normal.y = sign(normal.y - 0.5);\\n v_normal = normal;\\n\\n // these transformations used to be applied in the JS and native code bases. \\n // moved them into the shader for clarity and simplicity. \\n gapwidth = gapwidth / 2.0;\\n float width = u_width / 2.0;\\n offset = -1.0 * offset;\\n \\n float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\\n float outset = gapwidth + width * (gapwidth > 0.0 ? 2.0 : 1.0) + ANTIALIASING;\\n\\n // Scale the extrusion vector down to a normal and then up by the line width\\n // of this vertex.\\n mediump vec2 dist =outset * a_extrude * scale;\\n\\n // Calculate the offset when drawing a line that is to the side of the actual line.\\n // We do this by creating a vector that points towards the extrude, but rotate\\n // it when we're drawing round end points (a_direction = -1 or 1) since their\\n // extrude vector points in another direction.\\n mediump float u = 0.5 * a_direction;\\n mediump float t = 1.0 - abs(u);\\n mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\\n\\n // Remove the texture normal bit to get the position\\n vec2 pos = floor(a_pos * 0.5);\\n\\n vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\\n gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\\n\\n // calculate how much the perspective view squishes or stretches the extrude\\n float extrude_length_without_perspective = length(dist);\\n float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\\n v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\\n\\n v_tex_a = vec2(a_linesofar * u_patternscale_a.x, normal.y * u_patternscale_a.y + u_tex_y_a);\\n v_tex_b = vec2(a_linesofar * u_patternscale_b.x, normal.y * u_patternscale_b.y + u_tex_y_b);\\n\\n v_width2 = vec2(outset, inset);\\n}\\n\"\n},raster:{fragmentSource:\"uniform float u_fade_t;\\nuniform float u_opacity;\\nuniform sampler2D u_image0;\\nuniform sampler2D u_image1;\\nvarying vec2 v_pos0;\\nvarying vec2 v_pos1;\\n\\nuniform float u_brightness_low;\\nuniform float u_brightness_high;\\n\\nuniform float u_saturation_factor;\\nuniform float u_contrast_factor;\\nuniform vec3 u_spin_weights;\\n\\nvoid main() {\\n\\n // read and cross-fade colors from the main and parent tiles\\n vec4 color0 = texture2D(u_image0, v_pos0);\\n vec4 color1 = texture2D(u_image1, v_pos1);\\n vec4 color = mix(color0, color1, u_fade_t);\\n color.a *= u_opacity;\\n vec3 rgb = color.rgb;\\n\\n // spin\\n rgb = vec3(\\n dot(rgb, u_spin_weights.xyz),\\n dot(rgb, u_spin_weights.zxy),\\n dot(rgb, u_spin_weights.yzx));\\n\\n // saturation\\n float average = (color.r + color.g + color.b) / 3.0;\\n rgb += (average - rgb) * u_saturation_factor;\\n\\n // contrast\\n rgb = (rgb - 0.5) * u_contrast_factor + 0.5;\\n\\n // brightness\\n vec3 u_high_vec = vec3(u_brightness_low, u_brightness_low, u_brightness_low);\\n vec3 u_low_vec = vec3(u_brightness_high, u_brightness_high, u_brightness_high);\\n\\n gl_FragColor = vec4(mix(u_high_vec, u_low_vec, rgb) * color.a, color.a);\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"uniform mat4 u_matrix;\\nuniform vec2 u_tl_parent;\\nuniform float u_scale_parent;\\nuniform float u_buffer_scale;\\n\\nattribute vec2 a_pos;\\nattribute vec2 a_texture_pos;\\n\\nvarying vec2 v_pos0;\\nvarying vec2 v_pos1;\\n\\nvoid main() {\\n gl_Position = u_matrix * vec4(a_pos, 0, 1);\\n v_pos0 = (((a_texture_pos / 32767.0) - 0.5) / u_buffer_scale ) + 0.5;\\n v_pos1 = (v_pos0 * u_scale_parent) + u_tl_parent;\\n}\\n\"},symbolIcon:{fragmentSource:\"uniform sampler2D u_texture;\\nuniform sampler2D u_fadetexture;\\n\\n#pragma mapbox: define lowp float opacity\\n\\nvarying vec2 v_tex;\\nvarying vec2 v_fade_tex;\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float opacity\\n\\n lowp float alpha = texture2D(u_fadetexture, v_fade_tex).a * opacity;\\n gl_FragColor = texture2D(u_texture, v_tex) * alpha;\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:'\\nattribute vec4 a_pos_offset;\\nattribute vec4 a_data;\\n\\n// icon-size data (see symbol_sdf.vertex.glsl for more)\\nattribute vec3 a_size;\\nuniform bool u_is_size_zoom_constant;\\nuniform bool u_is_size_feature_constant;\\nuniform mediump float u_size_t; // used to interpolate between zoom stops when size is a composite function\\nuniform mediump float u_size; // used when size is both zoom and feature constant\\nuniform mediump float u_layout_size; // used when size is feature constant\\n\\n#pragma mapbox: define lowp float opacity\\n\\n// matrix is for the vertex position.\\nuniform mat4 u_matrix;\\n\\nuniform bool u_is_text;\\nuniform mediump float u_zoom;\\nuniform bool u_rotate_with_map;\\nuniform vec2 u_extrude_scale;\\n\\nuniform vec2 u_texsize;\\n\\nvarying vec2 v_tex;\\nvarying vec2 v_fade_tex;\\n\\nvoid main() {\\n #pragma mapbox: initialize lowp float opacity\\n\\n vec2 a_pos = a_pos_offset.xy;\\n vec2 a_offset = a_pos_offset.zw;\\n\\n vec2 a_tex = a_data.xy;\\n mediump vec2 label_data = unpack_float(a_data[2]);\\n mediump float a_labelminzoom = label_data[0];\\n mediump vec2 a_zoom = unpack_float(a_data[3]);\\n mediump float a_minzoom = a_zoom[0];\\n mediump float a_maxzoom = a_zoom[1];\\n\\n float size;\\n // In order to accommodate placing labels around corners in\\n // symbol-placement: line, each glyph in a label could have multiple\\n // \"quad\"s only one of which should be shown at a given zoom level.\\n // The min/max zoom assigned to each quad is based on the font size at\\n // the vector tile\\'s zoom level, which might be different than at the\\n // currently rendered zoom level if text-size is zoom-dependent.\\n // Thus, we compensate for this difference by calculating an adjustment\\n // based on the scale of rendered text size relative to layout text size.\\n mediump float layoutSize;\\n if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {\\n size = mix(a_size[0], a_size[1], u_size_t) / 10.0;\\n layoutSize = a_size[2] / 10.0;\\n } else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {\\n size = a_size[0] / 10.0;\\n layoutSize = size;\\n } else if (!u_is_size_zoom_constant && u_is_size_feature_constant) {\\n size = u_size;\\n layoutSize = u_layout_size;\\n } else {\\n size = u_size;\\n layoutSize = u_size;\\n }\\n\\n float fontScale = u_is_text ? size / 24.0 : size;\\n\\n mediump float zoomAdjust = log2(size / layoutSize);\\n mediump float adjustedZoom = (u_zoom - zoomAdjust) * 10.0;\\n // result: z = 0 if a_minzoom <= adjustedZoom < a_maxzoom, and 1 otherwise\\n mediump float z = 2.0 - step(a_minzoom, adjustedZoom) - (1.0 - step(a_maxzoom, adjustedZoom));\\n\\n vec2 extrude = fontScale * u_extrude_scale * (a_offset / 64.0);\\n if (u_rotate_with_map) {\\n gl_Position = u_matrix * vec4(a_pos + extrude, 0, 1);\\n gl_Position.z += z * gl_Position.w;\\n } else {\\n gl_Position = u_matrix * vec4(a_pos, 0, 1) + vec4(extrude, 0, 0);\\n }\\n\\n v_tex = a_tex / u_texsize;\\n v_fade_tex = vec2(a_labelminzoom / 255.0, 0.0);\\n}\\n'},symbolSDF:{fragmentSource:\"#define SDF_PX 8.0\\n#define EDGE_GAMMA 0.105/DEVICE_PIXEL_RATIO\\n\\nuniform bool u_is_halo;\\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\\n\\nuniform sampler2D u_texture;\\nuniform sampler2D u_fadetexture;\\nuniform highp float u_gamma_scale;\\nuniform bool u_is_text;\\n\\nvarying vec2 v_tex;\\nvarying vec2 v_fade_tex;\\nvarying float v_gamma_scale;\\nvarying float v_size;\\n\\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\\n\\n float fontScale = u_is_text ? v_size / 24.0 : v_size;\\n\\n lowp vec4 color = fill_color;\\n highp float gamma = EDGE_GAMMA / (fontScale * u_gamma_scale);\\n lowp float buff = (256.0 - 64.0) / 256.0;\\n if (u_is_halo) {\\n color = halo_color;\\n gamma = (halo_blur * 1.19 / SDF_PX + EDGE_GAMMA) / (fontScale * u_gamma_scale);\\n buff = (6.0 - halo_width / fontScale) / SDF_PX;\\n }\\n\\n lowp float dist = texture2D(u_texture, v_tex).a;\\n lowp float fade_alpha = texture2D(u_fadetexture, v_fade_tex).a;\\n highp float gamma_scaled = gamma * v_gamma_scale;\\n highp float alpha = smoothstep(buff - gamma_scaled, buff + gamma_scaled, dist) * fade_alpha;\\n\\n gl_FragColor = color * (alpha * opacity);\\n\\n#ifdef OVERDRAW_INSPECTOR\\n gl_FragColor = vec4(1.0);\\n#endif\\n}\\n\",vertexSource:\"const float PI = 3.141592653589793;\\n\\nattribute vec4 a_pos_offset;\\nattribute vec4 a_data;\\n\\n// contents of a_size vary based on the type of property value\\n// used for {text,icon}-size.\\n// For constants, a_size is disabled.\\n// For source functions, we bind only one value per vertex: the value of {text,icon}-size evaluated for the current feature.\\n// For composite functions:\\n// [ text-size(lowerZoomStop, feature),\\n// text-size(upperZoomStop, feature),\\n// layoutSize == text-size(layoutZoomLevel, feature) ]\\nattribute vec3 a_size;\\nuniform bool u_is_size_zoom_constant;\\nuniform bool u_is_size_feature_constant;\\nuniform mediump float u_size_t; // used to interpolate between zoom stops when size is a composite function\\nuniform mediump float u_size; // used when size is both zoom and feature constant\\nuniform mediump float u_layout_size; // used when size is feature constant\\n\\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\\n\\n// matrix is for the vertex position.\\nuniform mat4 u_matrix;\\n\\nuniform bool u_is_text;\\nuniform mediump float u_zoom;\\nuniform bool u_rotate_with_map;\\nuniform bool u_pitch_with_map;\\nuniform mediump float u_pitch;\\nuniform mediump float u_bearing;\\nuniform mediump float u_aspect_ratio;\\nuniform vec2 u_extrude_scale;\\n\\nuniform vec2 u_texsize;\\n\\nvarying vec2 v_tex;\\nvarying vec2 v_fade_tex;\\nvarying float v_gamma_scale;\\nvarying float v_size;\\n\\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\\n\\n vec2 a_pos = a_pos_offset.xy;\\n vec2 a_offset = a_pos_offset.zw;\\n\\n vec2 a_tex = a_data.xy;\\n\\n mediump vec2 label_data = unpack_float(a_data[2]);\\n mediump float a_labelminzoom = label_data[0];\\n mediump float a_labelangle = label_data[1];\\n\\n mediump vec2 a_zoom = unpack_float(a_data[3]);\\n mediump float a_minzoom = a_zoom[0];\\n mediump float a_maxzoom = a_zoom[1];\\n\\n // In order to accommodate placing labels around corners in\\n // symbol-placement: line, each glyph in a label could have multiple\\n // \\\"quad\\\"s only one of which should be shown at a given zoom level.\\n // The min/max zoom assigned to each quad is based on the font size at\\n // the vector tile's zoom level, which might be different than at the\\n // currently rendered zoom level if text-size is zoom-dependent.\\n // Thus, we compensate for this difference by calculating an adjustment\\n // based on the scale of rendered text size relative to layout text size.\\n mediump float layoutSize;\\n if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {\\n v_size = mix(a_size[0], a_size[1], u_size_t) / 10.0;\\n layoutSize = a_size[2] / 10.0;\\n } else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {\\n v_size = a_size[0] / 10.0;\\n layoutSize = v_size;\\n } else if (!u_is_size_zoom_constant && u_is_size_feature_constant) {\\n v_size = u_size;\\n layoutSize = u_layout_size;\\n } else {\\n v_size = u_size;\\n layoutSize = u_size;\\n }\\n\\n float fontScale = u_is_text ? v_size / 24.0 : v_size;\\n\\n mediump float zoomAdjust = log2(v_size / layoutSize);\\n mediump float adjustedZoom = (u_zoom - zoomAdjust) * 10.0;\\n // result: z = 0 if a_minzoom <= adjustedZoom < a_maxzoom, and 1 otherwise\\n // Used below to move the vertex out of the clip space for when the current\\n // zoom is out of the glyph's zoom range.\\n mediump float z = 2.0 - step(a_minzoom, adjustedZoom) - (1.0 - step(a_maxzoom, adjustedZoom));\\n\\n // pitch-alignment: map\\n // rotation-alignment: map | viewport\\n if (u_pitch_with_map) {\\n lowp float angle = u_rotate_with_map ? (a_labelangle / 256.0 * 2.0 * PI) : u_bearing;\\n lowp float asin = sin(angle);\\n lowp float acos = cos(angle);\\n mat2 RotationMatrix = mat2(acos, asin, -1.0 * asin, acos);\\n vec2 offset = RotationMatrix * a_offset;\\n vec2 extrude = fontScale * u_extrude_scale * (offset / 64.0);\\n gl_Position = u_matrix * vec4(a_pos + extrude, 0, 1);\\n gl_Position.z += z * gl_Position.w;\\n // pitch-alignment: viewport\\n // rotation-alignment: map\\n } else if (u_rotate_with_map) {\\n // foreshortening factor to apply on pitched maps\\n // as a label goes from horizontal <=> vertical in angle\\n // it goes from 0% foreshortening to up to around 70% foreshortening\\n lowp float pitchfactor = 1.0 - cos(u_pitch * sin(u_pitch * 0.75));\\n\\n lowp float lineangle = a_labelangle / 256.0 * 2.0 * PI;\\n\\n // use the lineangle to position points a,b along the line\\n // project the points and calculate the label angle in projected space\\n // this calculation allows labels to be rendered unskewed on pitched maps\\n vec4 a = u_matrix * vec4(a_pos, 0, 1);\\n vec4 b = u_matrix * vec4(a_pos + vec2(cos(lineangle),sin(lineangle)), 0, 1);\\n lowp float angle = atan((b[1]/b[3] - a[1]/a[3])/u_aspect_ratio, b[0]/b[3] - a[0]/a[3]);\\n lowp float asin = sin(angle);\\n lowp float acos = cos(angle);\\n mat2 RotationMatrix = mat2(acos, -1.0 * asin, asin, acos);\\n\\n vec2 offset = RotationMatrix * (vec2((1.0-pitchfactor)+(pitchfactor*cos(angle*2.0)), 1.0) * a_offset);\\n vec2 extrude = fontScale * u_extrude_scale * (offset / 64.0);\\n gl_Position = u_matrix * vec4(a_pos, 0, 1) + vec4(extrude, 0, 0);\\n gl_Position.z += z * gl_Position.w;\\n // pitch-alignment: viewport\\n // rotation-alignment: viewport\\n } else {\\n vec2 extrude = fontScale * u_extrude_scale * (a_offset / 64.0);\\n gl_Position = u_matrix * vec4(a_pos, 0, 1) + vec4(extrude, 0, 0);\\n }\\n\\n v_gamma_scale = gl_Position.w;\\n\\n v_tex = a_tex / u_texsize;\\n v_fade_tex = vec2(a_labelminzoom / 255.0, 0.0);\\n}\\n\"}};\n},{\"path\":23}],80:[function(_dereq_,module,exports){\n\"use strict\";var VertexArrayObject=function(){this.boundProgram=null,this.boundVertexBuffer=null,this.boundVertexBuffer2=null,this.boundElementBuffer=null,this.boundVertexOffset=null,this.vao=null};VertexArrayObject.prototype.bind=function(e,t,r,i,n,s){void 0===e.extVertexArrayObject&&(e.extVertexArrayObject=e.getExtension(\"OES_vertex_array_object\"));var o=!this.vao||this.boundProgram!==t||this.boundVertexBuffer!==r||this.boundVertexBuffer2!==n||this.boundElementBuffer!==i||this.boundVertexOffset!==s;!e.extVertexArrayObject||o?(this.freshBind(e,t,r,i,n,s),this.gl=e):e.extVertexArrayObject.bindVertexArrayOES(this.vao)},VertexArrayObject.prototype.freshBind=function(e,t,r,i,n,s){var o,u=t.numAttributes;if(e.extVertexArrayObject)this.vao&&this.destroy(),this.vao=e.extVertexArrayObject.createVertexArrayOES(),e.extVertexArrayObject.bindVertexArrayOES(this.vao),o=0,this.boundProgram=t,this.boundVertexBuffer=r,this.boundVertexBuffer2=n,this.boundElementBuffer=i,this.boundVertexOffset=s;else{o=e.currentNumAttributes||0;for(var b=u;bthis.maxzoom?Math.pow(2,t.coord.z-this.maxzoom):1,r={type:this.type,uid:t.uid,coord:t.coord,zoom:t.coord.z,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,overscaling:i,angle:this.map.transform.angle,pitch:this.map.transform.pitch,showCollisionBoxes:this.map.showCollisionBoxes};t.workerID=this.dispatcher.send(\"loadTile\",r,function(i,r){if(t.unloadVectorData(),!t.aborted)return i?e(i):(t.loadVectorData(r,o.map.painter),t.redoWhenDone&&(t.redoWhenDone=!1,t.redoPlacement(o)),e(null))},this.workerID)},e.prototype.abortTile=function(t){t.aborted=!0},e.prototype.unloadTile=function(t){t.unloadVectorData(),this.dispatcher.send(\"removeTile\",{uid:t.uid,type:this.type,source:this.id},function(){},t.workerID)},e.prototype.onRemove=function(){this.dispatcher.broadcast(\"removeSource\",{type:this.type,source:this.id},function(){})},e.prototype.serialize=function(){return{type:this.type,data:this._data}},e}(Evented);module.exports=GeoJSONSource;\n},{\"../data/extent\":54,\"../util/evented\":203,\"../util/util\":215,\"../util/window\":197}],84:[function(_dereq_,module,exports){\n\"use strict\";var ajax=_dereq_(\"../util/ajax\"),rewind=_dereq_(\"geojson-rewind\"),GeoJSONWrapper=_dereq_(\"./geojson_wrapper\"),vtpbf=_dereq_(\"vt-pbf\"),supercluster=_dereq_(\"supercluster\"),geojsonvt=_dereq_(\"geojson-vt\"),VectorTileWorkerSource=_dereq_(\"./vector_tile_worker_source\"),GeoJSONWorkerSource=function(e){function r(r,t,o){e.call(this,r,t),o&&(this.loadGeoJSON=o),this._geoJSONIndexes={}}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.loadVectorData=function(e,r){var t=e.source,o=e.coord;if(!this._geoJSONIndexes[t])return r(null,null);var n=this._geoJSONIndexes[t].getTile(Math.min(o.z,e.maxZoom),o.x,o.y);if(!n)return r(null,null);var u=new GeoJSONWrapper(n.features);u.name=\"_geojsonTileLayer\";var a=vtpbf({layers:{_geojsonTileLayer:u}});0===a.byteOffset&&a.byteLength===a.buffer.byteLength||(a=new Uint8Array(a)),u.rawData=a.buffer,r(null,u)},r.prototype.loadData=function(e,r){var t=function(t,o){var n=this;return t?r(t):\"object\"!=typeof o?r(new Error(\"Input data is not a valid GeoJSON object.\")):(rewind(o,!0),void this._indexData(o,e,function(t,o){return t?r(t):(n._geoJSONIndexes[e.source]=o,void r(null))}))}.bind(this);this.loadGeoJSON(e,t)},r.prototype.loadGeoJSON=function(e,r){if(e.url)ajax.getJSON(e.url,r);else{if(\"string\"!=typeof e.data)return r(new Error(\"Input data is not a valid GeoJSON object.\"));try{return r(null,JSON.parse(e.data))}catch(e){return r(new Error(\"Input data is not a valid GeoJSON object.\"))}}},r.prototype.removeSource=function(e){this._geoJSONIndexes[e.source]&&delete this._geoJSONIndexes[e.source]},r.prototype._indexData=function(e,r,t){try{r.cluster?t(null,supercluster(r.superclusterOptions).load(e.features)):t(null,geojsonvt(e,r.geojsonVtOptions))}catch(e){return t(e)}},r}(VectorTileWorkerSource);module.exports=GeoJSONWorkerSource;\n},{\"../util/ajax\":194,\"./geojson_wrapper\":85,\"./vector_tile_worker_source\":98,\"geojson-rewind\":7,\"geojson-vt\":11,\"supercluster\":29,\"vt-pbf\":38}],85:[function(_dereq_,module,exports){\n\"use strict\";var Point=_dereq_(\"point-geometry\"),VectorTileFeature=_dereq_(\"vector-tile\").VectorTileFeature,EXTENT=_dereq_(\"../data/extent\"),FeatureWrapper=function(e){var t=this;if(this.type=e.type,1===e.type){this.rawGeometry=[];for(var r=0;rt)){var n=Math.pow(2,Math.min(a.coord.z,i._source.maxzoom)-Math.min(e.z,i._source.maxzoom));if(Math.floor(a.coord.x/n)===e.x&&Math.floor(a.coord.y/n)===e.y)for(o[s]=!0,r=!0;a&&a.coord.z-1>e.z;){var d=a.coord.parent(i._source.maxzoom).id;a=i._tiles[d],a&&a.hasData()&&(delete o[s],o[d]=!0)}}}return r},t.prototype.findLoadedParent=function(e,t,o){for(var i=this,r=e.z-1;r>=t;r--){e=e.parent(i._source.maxzoom);var s=i._tiles[e.id];if(s&&s.hasData())return o[e.id]=!0,s;if(i._cache.has(e.id))return o[e.id]=!0,i._cache.getWithoutRemoving(e.id)}},t.prototype.updateCacheSize=function(e){var t=Math.ceil(e.width/e.tileSize)+1,o=Math.ceil(e.height/e.tileSize)+1,i=t*o,r=5;this._cache.setMaxSize(Math.floor(i*r))},t.prototype.update=function(e){var o=this;if(this.transform=e,this._sourceLoaded){var i,r,s,a;this.updateCacheSize(e);var n=(this._source.roundZoom?Math.round:Math.floor)(this.getZoom(e)),d=Math.max(n-t.maxOverzooming,this._source.minzoom),c=Math.max(n+t.maxUnderzooming,this._source.minzoom),h={};this._coveredTiles={};var u;for(this.used?this._source.coord?u=e.getVisibleWrappedCoordinates(this._source.coord):(u=e.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(u=u.filter(function(e){return o._source.hasTile(e)}))):u=[],i=0;i=Date.now())&&(o.findLoadedChildren(r,c,h)&&(h[_]=!0),a=o.findLoadedParent(r,d,l),a&&o.addTile(a.coord))}var f;for(f in l)h[f]||(o._coveredTiles[f]=!0);for(f in l)h[f]=!0;var T=util.keysDifference(this._tiles,h);for(i=0;ithis._source.maxzoom?Math.pow(2,r-this._source.maxzoom):1;t=new Tile(o,this._source.tileSize*s,this._source.maxzoom),this.loadTile(t,this._tileLoaded.bind(this,t,e.id,t.state))}return t.uses++,this._tiles[e.id]=t,i||this._source.fire(\"dataloading\",{tile:t,coord:t.coord,dataType:\"source\"}),t},t.prototype._setTileReloadTimer=function(e,t){var o=this,i=t.getExpiryTimeout();i&&(this._timers[e]=setTimeout(function(){o.reloadTile(e,\"expired\"),o._timers[e]=void 0},i))},t.prototype._setCacheInvalidationTimer=function(e,t){var o=this,i=t.getExpiryTimeout();i&&(this._cacheTimers[e]=setTimeout(function(){o._cache.remove(e),o._cacheTimers[e]=void 0},i))},t.prototype.removeTile=function(e){var t=this._tiles[e];if(t&&(t.uses--,delete this._tiles[e],this._timers[e]&&(clearTimeout(this._timers[e]),this._timers[e]=void 0),!(t.uses>0)))if(t.hasData()){var o=t.coord.wrapped().id;this._cache.add(o,t),this._setCacheInvalidationTimer(o,t)}else t.aborted=!0,this.abortTile(t),this.unloadTile(t)},t.prototype.clearTiles=function(){var e=this;for(var t in e._tiles)e.removeTile(t);this._cache.reset()},t.prototype.tilesIn=function(e){for(var t=this,o={},i=this.getIds(),r=1/0,s=1/0,a=-(1/0),n=-(1/0),d=e[0].zoom,c=0;c=0&&p[1].y>=0){for(var _=[],f=0;fo)r=!1;else if(t)if(this.expirationTime=a.minX&&t.x=a.minY&&t.yi.row){var o=t;t=i,i=o}return{x0:t.column,y0:t.row,x1:i.column,y1:i.row,dx:i.column-t.column,dy:i.row-t.row}}function scanSpans(t,i,o,r,e){var n=Math.max(o,Math.floor(i.y0)),h=Math.min(r,Math.ceil(i.y1));if(t.x0===i.x0&&t.y0===i.y0?t.x0+i.dy/t.dy*t.dx0,l=i.dx<0,u=n;ua.dy&&(h=s,s=a,a=h),s.dy>d.dy&&(h=s,s=d,d=h),a.dy>d.dy&&(h=a,a=d,d=h),s.dy&&scanSpans(d,s,r,e,n),a.dy&&scanSpans(d,a,r,e,n)}function getQuadkey(t,i,o){for(var r,e=\"\",n=t;n>0;n--)r=1<t?new TileCoord(this.z-1,this.x,this.y,this.w):new TileCoord(this.z-1,Math.floor(this.x/2),Math.floor(this.y/2),this.w)},TileCoord.prototype.wrapped=function(){return new TileCoord(this.z,this.x,this.y,0)},TileCoord.prototype.children=function(t){if(this.z>=t)return[new TileCoord(this.z+1,this.x,this.y,this.w)];var i=this.z+1,o=2*this.x,r=2*this.y;return[new TileCoord(i,o,r,this.w),new TileCoord(i,o+1,r,this.w),new TileCoord(i,o,r+1,this.w),new TileCoord(i,o+1,r+1,this.w)]},TileCoord.cover=function(t,i,o,r){function e(t,i,e){var s,a,d,y;if(e>=0&&e<=n)for(s=t;sthis.maxzoom?Math.pow(2,e.coord.z-this.maxzoom):1,r={url:normalizeURL(e.coord.url(this.tiles,this.maxzoom,this.scheme),this.url),uid:e.uid,coord:e.coord,zoom:e.coord.z,tileSize:this.tileSize*o,type:this.type,source:this.id,overscaling:o,angle:this.map.transform.angle,pitch:this.map.transform.pitch,showCollisionBoxes:this.map.showCollisionBoxes};e.workerID&&\"expired\"!==e.state?\"loading\"===e.state?e.reloadCallback=t:this.dispatcher.send(\"reloadTile\",r,i.bind(this),e.workerID):e.workerID=this.dispatcher.send(\"loadTile\",r,i.bind(this))},t.prototype.abortTile=function(e){this.dispatcher.send(\"abortTile\",{uid:e.uid,type:this.type,source:this.id},null,e.workerID)},t.prototype.unloadTile=function(e){e.unloadVectorData(),this.dispatcher.send(\"removeTile\",{uid:e.uid,type:this.type,source:this.id},null,e.workerID)},t}(Evented);module.exports=VectorTileSource;\n},{\"../util/evented\":203,\"../util/mapbox\":210,\"../util/util\":215,\"./load_tilejson\":87,\"./tile_bounds\":95}],98:[function(_dereq_,module,exports){\n\"use strict\";var ajax=_dereq_(\"../util/ajax\"),vt=_dereq_(\"vector-tile\"),Protobuf=_dereq_(\"pbf\"),WorkerTile=_dereq_(\"./worker_tile\"),util=_dereq_(\"../util/util\"),VectorTileWorkerSource=function(e,r,t){this.actor=e,this.layerIndex=r,t&&(this.loadVectorData=t),this.loading={},this.loaded={}};VectorTileWorkerSource.prototype.loadTile=function(e,r){function t(e,t){return delete this.loading[o][i],e?r(e):t?(a.vectorTile=t,a.parse(t,this.layerIndex,this.actor,function(e,o,i){if(e)return r(e);var a={};t.expires&&(a.expires=t.expires),t.cacheControl&&(a.cacheControl=t.cacheControl),r(null,util.extend({rawTileData:t.rawData},o,a),i)}),this.loaded[o]=this.loaded[o]||{},void(this.loaded[o][i]=a)):r(null,null)}var o=e.source,i=e.uid;this.loading[o]||(this.loading[o]={});var a=this.loading[o][i]=new WorkerTile(e);a.abort=this.loadVectorData(e,t.bind(this))},VectorTileWorkerSource.prototype.reloadTile=function(e,r){function t(e,t){if(this.reloadCallback){var o=this.reloadCallback;delete this.reloadCallback,this.parse(this.vectorTile,a.layerIndex,a.actor,o)}r(e,t)}var o=this.loaded[e.source],i=e.uid,a=this;if(o&&o[i]){var l=o[i];\"parsing\"===l.status?l.reloadCallback=r:\"done\"===l.status&&l.parse(l.vectorTile,this.layerIndex,this.actor,t.bind(l))}},VectorTileWorkerSource.prototype.abortTile=function(e){var r=this.loading[e.source],t=e.uid;r&&r[t]&&r[t].abort&&(r[t].abort(),delete r[t])},VectorTileWorkerSource.prototype.removeTile=function(e){var r=this.loaded[e.source],t=e.uid;r&&r[t]&&delete r[t]},VectorTileWorkerSource.prototype.loadVectorData=function(e,r){function t(e,t){if(e)return r(e);var o=new vt.VectorTile(new Protobuf(t.data));o.rawData=t.data,o.cacheControl=t.cacheControl,o.expires=t.expires,r(e,o)}var o=ajax.getArrayBuffer(e.url,t.bind(this));return function(){o.abort()}},VectorTileWorkerSource.prototype.redoPlacement=function(e,r){var t=this.loaded[e.source],o=this.loading[e.source],i=e.uid;if(t&&t[i]){var a=t[i],l=a.redoPlacement(e.angle,e.pitch,e.showCollisionBoxes);l.result&&r(null,l.result,l.transferables)}else o&&o[i]&&(o[i].angle=e.angle)},module.exports=VectorTileWorkerSource;\n},{\"../util/ajax\":194,\"../util/util\":215,\"./worker_tile\":101,\"pbf\":25,\"vector-tile\":34}],99:[function(_dereq_,module,exports){\n\"use strict\";var ajax=_dereq_(\"../util/ajax\"),ImageSource=_dereq_(\"./image_source\"),VideoSource=function(t){function e(e,o,i,r){t.call(this,e,o,i,r),this.roundZoom=!0,this.type=\"video\",this.options=o}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.load=function(){var t=this,e=this.options;this.urls=e.urls,ajax.getVideo(e.urls,function(e,o){if(e)return t.fire(\"error\",{error:e});t.video=o,t.video.loop=!0;var i;t.video.addEventListener(\"playing\",function(){i=t.map.style.animationLoop.set(1/0),t.map._rerender()}),t.video.addEventListener(\"pause\",function(){t.map.style.animationLoop.cancel(i)}),t.map&&t.video.play(),t._finishLoading()})},e.prototype.getVideo=function(){return this.video},e.prototype.onAdd=function(t){this.map||(this.load(),this.map=t,this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},e.prototype.prepare=function(){!this.tile||this.video.readyState<2||this._prepareImage(this.map.painter.gl,this.video)},e.prototype.serialize=function(){return{type:\"video\",urls:this.urls,coordinates:this.coordinates}},e}(ImageSource);module.exports=VideoSource;\n},{\"../util/ajax\":194,\"./image_source\":86}],100:[function(_dereq_,module,exports){\n\"use strict\";var Actor=_dereq_(\"../util/actor\"),StyleLayerIndex=_dereq_(\"../style/style_layer_index\"),VectorTileWorkerSource=_dereq_(\"./vector_tile_worker_source\"),GeoJSONWorkerSource=_dereq_(\"./geojson_worker_source\"),globalRTLTextPlugin=_dereq_(\"./rtl_text_plugin\"),Worker=function(e){var r=this;this.self=e,this.actor=new Actor(e,this),this.layerIndexes={},this.workerSourceTypes={vector:VectorTileWorkerSource,geojson:GeoJSONWorkerSource},this.workerSources={},this.self.registerWorkerSource=function(e,o){if(r.workerSourceTypes[e])throw new Error('Worker source with name \"'+e+'\" already registered.');r.workerSourceTypes[e]=o},this.self.registerRTLTextPlugin=function(e){if(globalRTLTextPlugin.applyArabicShaping||globalRTLTextPlugin.processBidirectionalText)throw new Error(\"RTL text plugin already registered.\");globalRTLTextPlugin.applyArabicShaping=e.applyArabicShaping,globalRTLTextPlugin.processBidirectionalText=e.processBidirectionalText}};Worker.prototype.setLayers=function(e,r){this.getLayerIndex(e).replace(r)},Worker.prototype.updateLayers=function(e,r){this.getLayerIndex(e).update(r.layers,r.removedIds,r.symbolOrder)},Worker.prototype.loadTile=function(e,r,o){this.getWorkerSource(e,r.type).loadTile(r,o)},Worker.prototype.reloadTile=function(e,r,o){this.getWorkerSource(e,r.type).reloadTile(r,o)},Worker.prototype.abortTile=function(e,r){this.getWorkerSource(e,r.type).abortTile(r)},Worker.prototype.removeTile=function(e,r){this.getWorkerSource(e,r.type).removeTile(r)},Worker.prototype.removeSource=function(e,r){var o=this.getWorkerSource(e,r.type);void 0!==o.removeSource&&o.removeSource(r)},Worker.prototype.redoPlacement=function(e,r,o){this.getWorkerSource(e,r.type).redoPlacement(r,o)},Worker.prototype.loadWorkerSource=function(e,r,o){try{this.self.importScripts(r.url),o()}catch(e){o(e)}},Worker.prototype.loadRTLTextPlugin=function(e,r,o){try{globalRTLTextPlugin.applyArabicShaping||globalRTLTextPlugin.processBidirectionalText||this.self.importScripts(r)}catch(e){o(e)}},Worker.prototype.getLayerIndex=function(e){var r=this.layerIndexes[e];return r||(r=this.layerIndexes[e]=new StyleLayerIndex),r},Worker.prototype.getWorkerSource=function(e,r){var o=this;if(this.workerSources[e]||(this.workerSources[e]={}),!this.workerSources[e][r]){var t={send:function(r,t,i,n){o.actor.send(r,t,i,n,e)}};this.workerSources[e][r]=new this.workerSourceTypes[r](t,this.getLayerIndex(e))}return this.workerSources[e][r]},module.exports=function(e){return new Worker(e)};\n},{\"../style/style_layer_index\":157,\"../util/actor\":193,\"./geojson_worker_source\":84,\"./rtl_text_plugin\":91,\"./vector_tile_worker_source\":98}],101:[function(_dereq_,module,exports){\n\"use strict\";function recalculateLayers(e,i){for(var r=0,o=e.layers;r=B.maxzoom||B.layout&&\"none\"===B.layout.visibility)){for(var b=0,k=x;b=0;w--){var A=n[i.symbolOrder[w]];A&&t.symbolBuckets.push(A)}if(0===this.symbolBuckets.length)return T(new CollisionTile(this.angle,this.pitch,this.collisionBoxArray));var D=0,I=Object.keys(c.iconDependencies),O=util.mapObject(c.glyphDependencies,function(e){return Object.keys(e).map(Number)}),L=function(e){if(e)return o(e);if(D++,2===D){for(var i=new CollisionTile(t.angle,t.pitch,t.collisionBoxArray),r=0,s=t.symbolBuckets;r\"===i||\"<=\"===i||\">=\"===i?compileComparisonOp(e[1],e[2],i,!0):\"any\"===i?compileLogicalOp(e.slice(1),\"||\"):\"all\"===i?compileLogicalOp(e.slice(1),\"&&\"):\"none\"===i?compileNegation(compileLogicalOp(e.slice(1),\"||\")):\"in\"===i?compileInOp(e[1],e.slice(2)):\"!in\"===i?compileNegation(compileInOp(e[1],e.slice(2))):\"has\"===i?compileHasOp(e[1]):\"!has\"===i?compileNegation(compileHasOp(e[1])):\"true\";return\"(\"+n+\")\"}function compilePropertyReference(e){return\"$type\"===e?\"f.type\":\"$id\"===e?\"f.id\":\"p[\"+JSON.stringify(e)+\"]\"}function compileComparisonOp(e,i,n,r){var o=compilePropertyReference(e),t=\"$type\"===e?types.indexOf(i):JSON.stringify(i);return(r?\"typeof \"+o+\"=== typeof \"+t+\"&&\":\"\")+o+n+t}function compileLogicalOp(e,i){return e.map(compile).join(i)}function compileInOp(e,i){\"$type\"===e&&(i=i.map(function(e){return types.indexOf(e)}));var n=JSON.stringify(i.sort(compare)),r=compilePropertyReference(e);return i.length<=200?n+\".indexOf(\"+r+\") !== -1\":\"function(v, a, i, j) {while (i <= j) { var m = (i + j) >> 1; if (a[m] === v) return true; if (a[m] > v) j = m - 1; else i = m + 1;}return false; }(\"+r+\", \"+n+\",0,\"+(i.length-1)+\")\"}function compileHasOp(e){return\"$id\"===e?'\"id\" in f':JSON.stringify(e)+\" in p\"}function compileNegation(e){return\"!(\"+e+\")\"}function compare(e,i){return ei?1:0}module.exports=createFilter;var types=[\"Unknown\",\"Point\",\"LineString\",\"Polygon\"];\n},{}],106:[function(_dereq_,module,exports){\n\"use strict\";function xyz2lab(r){return r>t3?Math.pow(r,1/3):r/t2+t0}function lab2xyz(r){return r>t1?r*r*r:t2*(r-t0)}function xyz2rgb(r){return 255*(r<=.0031308?12.92*r:1.055*Math.pow(r,1/2.4)-.055)}function rgb2xyz(r){return r/=255,r<=.04045?r/12.92:Math.pow((r+.055)/1.055,2.4)}function rgbToLab(r){var t=rgb2xyz(r[0]),a=rgb2xyz(r[1]),n=rgb2xyz(r[2]),b=xyz2lab((.4124564*t+.3575761*a+.1804375*n)/Xn),o=xyz2lab((.2126729*t+.7151522*a+.072175*n)/Yn),g=xyz2lab((.0193339*t+.119192*a+.9503041*n)/Zn);return[116*o-16,500*(b-o),200*(o-g),r[3]]}function labToRgb(r){var t=(r[0]+16)/116,a=isNaN(r[1])?t:t+r[1]/500,n=isNaN(r[2])?t:t-r[2]/200;return t=Yn*lab2xyz(t),a=Xn*lab2xyz(a),n=Zn*lab2xyz(n),[xyz2rgb(3.2404542*a-1.5371385*t-.4985314*n),xyz2rgb(-.969266*a+1.8760108*t+.041556*n),xyz2rgb(.0556434*a-.2040259*t+1.0572252*n),r[3]]}function rgbToHcl(r){var t=rgbToLab(r),a=t[0],n=t[1],b=t[2],o=Math.atan2(b,n)*rad2deg;return[o<0?o+360:o,Math.sqrt(n*n+b*b),a,r[3]]}function hclToRgb(r){var t=r[0]*deg2rad,a=r[1],n=r[2];return labToRgb([n,Math.cos(t)*a,Math.sin(t)*a,r[3]])}var Xn=.95047,Yn=1,Zn=1.08883,t0=4/29,t1=6/29,t2=3*t1*t1,t3=t1*t1*t1,deg2rad=Math.PI/180,rad2deg=180/Math.PI;module.exports={lab:{forward:rgbToLab,reverse:labToRgb},hcl:{forward:rgbToHcl,reverse:hclToRgb}};\n},{}],107:[function(_dereq_,module,exports){\n\"use strict\";function identityFunction(t){return t}function createFunction(t,e){var o,n=\"color\"===e.type;if(isFunctionDefinition(t)){var r=t.stops&&\"object\"==typeof t.stops[0][0],a=r||void 0!==t.property,i=r||!a,s=t.type||(\"interpolated\"===e.function?\"exponential\":\"interval\");n&&(t=extend({},t),t.stops&&(t.stops=t.stops.map(function(t){return[t[0],parseColor(t[1])]})),t.default?t.default=parseColor(t.default):t.default=parseColor(e.default));var u,p,l;if(\"exponential\"===s)u=evaluateExponentialFunction;else if(\"interval\"===s)u=evaluateIntervalFunction;else if(\"categorical\"===s){u=evaluateCategoricalFunction,p=Object.create(null);for(var c=0,f=t.stops;c=t.stops[n-1][0])return t.stops[n-1][1];var r=findStopLessThanOrEqualTo(t.stops,o);return t.stops[r][1]}function evaluateExponentialFunction(t,e,o){var n=void 0!==t.base?t.base:1;if(\"number\"!==getType(o))return coalesce(t.default,e.default);var r=t.stops.length;if(1===r)return t.stops[0][1];if(o<=t.stops[0][0])return t.stops[0][1];if(o>=t.stops[r-1][0])return t.stops[r-1][1];var a=findStopLessThanOrEqualTo(t.stops,o),i=interpolationFactor(o,n,t.stops[a][0],t.stops[a+1][0]),s=t.stops[a][1],u=t.stops[a+1][1],p=interpolate[e.type]||identityFunction;return\"function\"==typeof s?function(){var t=s.apply(void 0,arguments),e=u.apply(void 0,arguments);if(void 0!==t&&void 0!==e)return p(t,e,i)}:p(s,u,i)}function evaluateIdentityFunction(t,e,o){return\"color\"===e.type?o=parseColor(o):getType(o)!==e.type&&(o=void 0),coalesce(o,t.default,e.default)}function findStopLessThanOrEqualTo(t,e){for(var o,n,r=t.length,a=0,i=r-1,s=0;a<=i;){if(s=Math.floor((a+i)/2),o=t[s][0],n=t[s+1][0],e===o||e>o&&ee&&(i=s-1)}return Math.max(s-1,0)}function isFunctionDefinition(t){return\"object\"==typeof t&&(t.stops||\"identity\"===t.type)}function interpolationFactor(t,e,o,n){var r=n-o,a=t-o;return 1===e?a/r:(Math.pow(e,a)-1)/(Math.pow(e,r)-1)}var colorSpaces=_dereq_(\"./color_spaces\"),parseColor=_dereq_(\"../util/parse_color\"),extend=_dereq_(\"../util/extend\"),getType=_dereq_(\"../util/get_type\"),interpolate=_dereq_(\"../util/interpolate\");module.exports=createFunction,module.exports.isFunctionDefinition=isFunctionDefinition,module.exports.interpolationFactor=interpolationFactor,module.exports.findStopLessThanOrEqualTo=findStopLessThanOrEqualTo;\n},{\"../util/extend\":121,\"../util/get_type\":122,\"../util/interpolate\":123,\"../util/parse_color\":124,\"./color_spaces\":106}],108:[function(_dereq_,module,exports){\n\"use strict\";function key(r){return stringify(refProperties.map(function(e){return r[e]}))}function groupByLayout(r){for(var e={},t=0;t255?255:e}function clamp_css_float(e){return e<0?0:e>1?1:e}function parse_css_int(e){return clamp_css_byte(\"%\"===e[e.length-1]?parseFloat(e)/100*255:parseInt(e))}function parse_css_float(e){return clamp_css_float(\"%\"===e[e.length-1]?parseFloat(e)/100:parseFloat(e))}function css_hue_to_rgb(e,r,l){return l<0?l+=1:l>1&&(l-=1),6*l<1?e+(r-e)*l*6:2*l<1?r:3*l<2?e+(r-e)*(2/3-l)*6:e}function parseCSSColor(e){var r=e.replace(/ /g,\"\").toLowerCase();if(r in kCSSColorTable)return kCSSColorTable[r].slice();if(\"#\"===r[0]){if(4===r.length){var l=parseInt(r.substr(1),16);return l>=0&&l<=4095?[(3840&l)>>4|(3840&l)>>8,240&l|(240&l)>>4,15&l|(15&l)<<4,1]:null}if(7===r.length){var l=parseInt(r.substr(1),16);return l>=0&&l<=16777215?[(16711680&l)>>16,(65280&l)>>8,255&l,1]:null}return null}var a=r.indexOf(\"(\"),t=r.indexOf(\")\");if(a!==-1&&t+1===r.length){var n=r.substr(0,a),s=r.substr(a+1,t-(a+1)).split(\",\"),o=1;switch(n){case\"rgba\":if(4!==s.length)return null;o=parse_css_float(s.pop());case\"rgb\":return 3!==s.length?null:[parse_css_int(s[0]),parse_css_int(s[1]),parse_css_int(s[2]),o];case\"hsla\":if(4!==s.length)return null;o=parse_css_float(s.pop());case\"hsl\":if(3!==s.length)return null;var i=(parseFloat(s[0])%360+360)%360/360,u=parse_css_float(s[1]),g=parse_css_float(s[2]),d=g<=.5?g*(u+1):g+u-g*u,c=2*g-d;return[clamp_css_byte(255*css_hue_to_rgb(c,d,i+1/3)),clamp_css_byte(255*css_hue_to_rgb(c,d,i)),clamp_css_byte(255*css_hue_to_rgb(c,d,i-1/3)),o];default:return null}}return null}var kCSSColorTable={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],rebeccapurple:[102,51,153,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};try{exports.parseCSSColor=parseCSSColor}catch(e){}\n},{}],110:[function(_dereq_,module,exports){\nfunction sss(r){var e,t,s,n,u,a;switch(typeof r){case\"object\":if(null===r)return null;if(isArray(r)){for(s=\"[\",t=r.length-1,e=0;e-1&&(s+=sss(r[e])),s+\"]\"}for(n=objKeys(r).sort(),t=n.length,s=\"{\",u=n[e=0],a=t>0&&void 0!==r[u];e15?\"\\\\u00\"+e.toString(16):\"\\\\u000\"+e.toString(16)}};module.exports=function(r){if(void 0!==r)return\"\"+sss(r)},module.exports.stringSearch=strReg,module.exports.stringReplace=strReplace;\n},{}],111:[function(_dereq_,module,exports){\nfunction isObjectLike(r){return!!r&&\"object\"==typeof r}function arraySome(r,e){for(var a=-1,t=r.length;++as))return!1;for(;++c-1&&t%1==0&&t<=MAX_SAFE_INTEGER}function isObject(t){var e=typeof t;return!!t&&(\"object\"==e||\"function\"==e)}function isObjectLike(t){return!!t&&\"object\"==typeof t}var MAX_SAFE_INTEGER=9007199254740991,argsTag=\"[object Arguments]\",funcTag=\"[object Function]\",genTag=\"[object GeneratorFunction]\",objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,objectToString=objectProto.toString,propertyIsEnumerable=objectProto.propertyIsEnumerable;module.exports=isArguments;\n},{}],115:[function(_dereq_,module,exports){\nfunction isObjectLike(t){return!!t&&\"object\"==typeof t}function getNative(t,r){var e=null==t?void 0:t[r];return isNative(e)?e:void 0}function isLength(t){return\"number\"==typeof t&&t>-1&&t%1==0&&t<=MAX_SAFE_INTEGER}function isFunction(t){return isObject(t)&&objToString.call(t)==funcTag}function isObject(t){var r=typeof t;return!!t&&(\"object\"==r||\"function\"==r)}function isNative(t){return null!=t&&(isFunction(t)?reIsNative.test(fnToString.call(t)):isObjectLike(t)&&reIsHostCtor.test(t))}var arrayTag=\"[object Array]\",funcTag=\"[object Function]\",reIsHostCtor=/^\\[object .+?Constructor\\]$/,objectProto=Object.prototype,fnToString=Function.prototype.toString,hasOwnProperty=objectProto.hasOwnProperty,objToString=objectProto.toString,reIsNative=RegExp(\"^\"+fnToString.call(hasOwnProperty).replace(/[\\\\^$.*+?()[\\]{}|]/g,\"\\\\$&\").replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g,\"$1.*?\")+\"$\"),nativeIsArray=getNative(Array,\"isArray\"),MAX_SAFE_INTEGER=9007199254740991,isArray=nativeIsArray||function(t){return isObjectLike(t)&&isLength(t.length)&&objToString.call(t)==arrayTag};module.exports=isArray;\n},{}],116:[function(_dereq_,module,exports){\nfunction isEqual(a,l,i,e){i=\"function\"==typeof i?bindCallback(i,e,3):void 0;var s=i?i(a,l):void 0;return void 0===s?baseIsEqual(a,l,i):!!s}var baseIsEqual=_dereq_(\"lodash._baseisequal\"),bindCallback=_dereq_(\"lodash._bindcallback\");module.exports=isEqual;\n},{\"lodash._baseisequal\":111,\"lodash._bindcallback\":112}],117:[function(_dereq_,module,exports){\nfunction isLength(a){return\"number\"==typeof a&&a>-1&&a%1==0&&a<=MAX_SAFE_INTEGER}function isObjectLike(a){return!!a&&\"object\"==typeof a}function isTypedArray(a){return isObjectLike(a)&&isLength(a.length)&&!!typedArrayTags[objectToString.call(a)]}var MAX_SAFE_INTEGER=9007199254740991,argsTag=\"[object Arguments]\",arrayTag=\"[object Array]\",boolTag=\"[object Boolean]\",dateTag=\"[object Date]\",errorTag=\"[object Error]\",funcTag=\"[object Function]\",mapTag=\"[object Map]\",numberTag=\"[object Number]\",objectTag=\"[object Object]\",regexpTag=\"[object RegExp]\",setTag=\"[object Set]\",stringTag=\"[object String]\",weakMapTag=\"[object WeakMap]\",arrayBufferTag=\"[object ArrayBuffer]\",dataViewTag=\"[object DataView]\",float32Tag=\"[object Float32Array]\",float64Tag=\"[object Float64Array]\",int8Tag=\"[object Int8Array]\",int16Tag=\"[object Int16Array]\",int32Tag=\"[object Int32Array]\",uint8Tag=\"[object Uint8Array]\",uint8ClampedTag=\"[object Uint8ClampedArray]\",uint16Tag=\"[object Uint16Array]\",uint32Tag=\"[object Uint32Array]\",typedArrayTags={};typedArrayTags[float32Tag]=typedArrayTags[float64Tag]=typedArrayTags[int8Tag]=typedArrayTags[int16Tag]=typedArrayTags[int32Tag]=typedArrayTags[uint8Tag]=typedArrayTags[uint8ClampedTag]=typedArrayTags[uint16Tag]=typedArrayTags[uint32Tag]=!0,typedArrayTags[argsTag]=typedArrayTags[arrayTag]=typedArrayTags[arrayBufferTag]=typedArrayTags[boolTag]=typedArrayTags[dataViewTag]=typedArrayTags[dateTag]=typedArrayTags[errorTag]=typedArrayTags[funcTag]=typedArrayTags[mapTag]=typedArrayTags[numberTag]=typedArrayTags[objectTag]=typedArrayTags[regexpTag]=typedArrayTags[setTag]=typedArrayTags[stringTag]=typedArrayTags[weakMapTag]=!1;var objectProto=Object.prototype,objectToString=objectProto.toString;module.exports=isTypedArray;\n},{}],118:[function(_dereq_,module,exports){\nfunction baseProperty(e){return function(t){return null==t?void 0:t[e]}}function isArrayLike(e){return null!=e&&isLength(getLength(e))}function isIndex(e,t){return e=\"number\"==typeof e||reIsUint.test(e)?+e:-1,t=null==t?MAX_SAFE_INTEGER:t,e>-1&&e%1==0&&e-1&&e%1==0&&e<=MAX_SAFE_INTEGER}function shimKeys(e){for(var t=keysIn(e),r=t.length,n=r&&e.length,s=!!n&&isLength(n)&&(isArray(e)||isArguments(e)),o=-1,i=[];++o0;++n\":{},\">=\":{},\"<\":{},\"<=\":{},\"in\":{},\"!in\":{},\"all\":{},\"any\":{},\"none\":{},\"has\":{},\"!has\":{}}},\"geometry_type\":{\"type\":\"enum\",\"values\":{\"Point\":{},\"LineString\":{},\"Polygon\":{}}},\"function\":{\"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\":false}},\"function_stop\":{\"type\":\"array\",\"minimum\":0,\"maximum\":22,\"value\":[\"number\",\"color\"],\"length\":2},\"light\":{\"anchor\":{\"type\":\"enum\",\"default\":\"viewport\",\"values\":{\"map\":{},\"viewport\":{}},\"transition\":false},\"position\":{\"type\":\"array\",\"default\":[1.15,210,30],\"length\":3,\"value\":\"number\",\"transition\":true,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":false},\"color\":{\"type\":\"color\",\"default\":\"#ffffff\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":false,\"transition\":true},\"intensity\":{\"type\":\"number\",\"default\":0.5,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":false,\"transition\":true}},\"paint\":[\"paint_fill\",\"paint_line\",\"paint_circle\",\"paint_fill-extrusion\",\"paint_symbol\",\"paint_raster\",\"paint_background\"],\"paint_fill\":{\"fill-antialias\":{\"type\":\"boolean\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"default\":true},\"fill-opacity\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true},\"fill-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[{\"!\":\"fill-pattern\"}]},\"fill-outline-color\":{\"type\":\"color\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[{\"!\":\"fill-pattern\"},{\"fill-antialias\":true}]},\"fill-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\"},\"fill-translate-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"fill-translate\"]},\"fill-pattern\":{\"type\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"transition\":true}},\"paint_fill-extrusion\":{\"fill-extrusion-opacity\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":false,\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true},\"fill-extrusion-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[{\"!\":\"fill-extrusion-pattern\"}]},\"fill-extrusion-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\"},\"fill-extrusion-translate-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"fill-extrusion-translate\"]},\"fill-extrusion-pattern\":{\"type\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"transition\":true},\"fill-extrusion-height\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"default\":0,\"minimum\":0,\"maximum\":65535,\"units\":\"meters\",\"transition\":true},\"fill-extrusion-base\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"default\":0,\"minimum\":0,\"maximum\":65535,\"units\":\"meters\",\"transition\":true,\"requires\":[\"fill-extrusion-height\"]}},\"paint_line\":{\"line-opacity\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true},\"line-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[{\"!\":\"line-pattern\"}]},\"line-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\"},\"line-translate-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"line-translate\"]},\"line-width\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\"},\"line-gap-width\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\"},\"line-offset\":{\"type\":\"number\",\"default\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\"},\"line-blur\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\"},\"line-dasharray\":{\"type\":\"array\",\"value\":\"number\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"minimum\":0,\"transition\":true,\"units\":\"line widths\",\"requires\":[{\"!\":\"line-pattern\"}]},\"line-pattern\":{\"type\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"transition\":true}},\"paint_circle\":{\"circle-radius\":{\"type\":\"number\",\"default\":5,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\"},\"circle-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true},\"circle-blur\":{\"type\":\"number\",\"default\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true},\"circle-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true},\"circle-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\"},\"circle-translate-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"circle-translate\"]},\"circle-pitch-scale\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\"},\"circle-stroke-width\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\"},\"circle-stroke-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true},\"circle-stroke-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true}},\"paint_symbol\":{\"icon-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[\"icon-image\"]},\"icon-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[\"icon-image\"]},\"icon-halo-color\":{\"type\":\"color\",\"default\":\"rgba(0, 0, 0, 0)\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[\"icon-image\"]},\"icon-halo-width\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"icon-image\"]},\"icon-halo-blur\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"icon-image\"]},\"icon-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"icon-image\"]},\"icon-translate-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"icon-image\",\"icon-translate\"]},\"text-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[\"text-field\"]},\"text-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[\"text-field\"]},\"text-halo-color\":{\"type\":\"color\",\"default\":\"rgba(0, 0, 0, 0)\",\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"requires\":[\"text-field\"]},\"text-halo-width\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"text-field\"]},\"text-halo-blur\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"property-function\":true,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"text-field\"]},\"text-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"text-field\"]},\"text-translate-anchor\":{\"type\":\"enum\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"text-field\",\"text-translate\"]}},\"paint_raster\":{\"raster-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true},\"raster-hue-rotate\":{\"type\":\"number\",\"default\":0,\"period\":360,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"degrees\"},\"raster-brightness-min\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"default\":0,\"minimum\":0,\"maximum\":1,\"transition\":true},\"raster-brightness-max\":{\"type\":\"number\",\"function\":\"interpolated\",\"zoom-function\":true,\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true},\"raster-saturation\":{\"type\":\"number\",\"default\":0,\"minimum\":-1,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true},\"raster-contrast\":{\"type\":\"number\",\"default\":0,\"minimum\":-1,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true},\"raster-fade-duration\":{\"type\":\"number\",\"default\":300,\"minimum\":0,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"units\":\"milliseconds\"}},\"paint_background\":{\"background-color\":{\"type\":\"color\",\"default\":\"#000000\",\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true,\"requires\":[{\"!\":\"background-pattern\"}]},\"background-pattern\":{\"type\":\"string\",\"function\":\"piecewise-constant\",\"zoom-function\":true,\"transition\":true},\"background-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"function\":\"interpolated\",\"zoom-function\":true,\"transition\":true}},\"transition\":{\"duration\":{\"type\":\"number\",\"default\":300,\"minimum\":0,\"units\":\"milliseconds\"},\"delay\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"units\":\"milliseconds\"}}}\n},{}],121:[function(_dereq_,module,exports){\n\"use strict\";module.exports=function(r){for(var t=arguments,e=1;e7)return[new ValidationError(u,a,\"constants have been deprecated as of v8\")];if(!(a in l.constants))return[new ValidationError(u,a,'constant \"%s\" not found',a)];e=extend({},e,{value:l.constants[a]})}return n.function&&\"object\"===getType(a)?r(e):n.type&&i[n.type]?i[n.type](e):t(extend({},e,{valueSpec:n.type?o[n.type]:n}))};\n},{\"../error/validation_error\":104,\"../util/extend\":121,\"../util/get_type\":122,\"./validate_array\":128,\"./validate_boolean\":129,\"./validate_color\":130,\"./validate_constants\":131,\"./validate_enum\":132,\"./validate_filter\":133,\"./validate_function\":134,\"./validate_layer\":136,\"./validate_light\":138,\"./validate_number\":139,\"./validate_object\":140,\"./validate_source\":143,\"./validate_string\":144}],128:[function(_dereq_,module,exports){\n\"use strict\";var getType=_dereq_(\"../util/get_type\"),validate=_dereq_(\"./validate\"),ValidationError=_dereq_(\"../error/validation_error\");module.exports=function(e){var r=e.value,t=e.valueSpec,a=e.style,n=e.styleSpec,l=e.key,i=e.arrayElementValidator||validate;if(\"array\"!==getType(r))return[new ValidationError(l,r,\"array expected, %s found\",getType(r))];if(t.length&&r.length!==t.length)return[new ValidationError(l,r,\"array length %d expected, length %d found\",t.length,r.length)];if(t[\"min-length\"]&&r.length7)return t?[new ValidationError(e,t,\"constants have been deprecated as of v8\")]:[];var o=getType(t);if(\"object\"!==o)return[new ValidationError(e,t,\"object expected, %s found\",o)];var n=[];for(var i in t)\"@\"!==i[0]&&n.push(new ValidationError(e+\".\"+i,t[i],'constants must start with \"@\"'));return n};\n},{\"../error/validation_error\":104,\"../util/get_type\":122}],132:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),unbundle=_dereq_(\"../util/unbundle_jsonlint\");module.exports=function(e){var r=e.key,n=e.value,u=e.valueSpec,o=[];return Array.isArray(u.values)?u.values.indexOf(unbundle(n))===-1&&o.push(new ValidationError(r,n,\"expected one of [%s], %s found\",u.values.join(\", \"),n)):Object.keys(u.values).indexOf(unbundle(n))===-1&&o.push(new ValidationError(r,n,\"expected one of [%s], %s found\",Object.keys(u.values).join(\", \"),n)),o};\n},{\"../error/validation_error\":104,\"../util/unbundle_jsonlint\":126}],133:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),validateEnum=_dereq_(\"./validate_enum\"),getType=_dereq_(\"../util/get_type\"),unbundle=_dereq_(\"../util/unbundle_jsonlint\");module.exports=function e(r){var t,a=r.value,n=r.key,l=r.styleSpec,s=[];if(\"array\"!==getType(a))return[new ValidationError(n,a,\"array expected, %s found\",getType(a))];if(a.length<1)return[new ValidationError(n,a,\"filter array must have at least 1 element\")];switch(s=s.concat(validateEnum({key:n+\"[0]\",value:a[0],valueSpec:l.filter_operator,style:r.style,styleSpec:r.styleSpec})),unbundle(a[0])){case\"<\":case\"<=\":case\">\":case\">=\":a.length>=2&&\"$type\"===unbundle(a[1])&&s.push(new ValidationError(n,a,'\"$type\" cannot be use with operator \"%s\"',a[0]));case\"==\":case\"!=\":3!==a.length&&s.push(new ValidationError(n,a,'filter array for operator \"%s\" must have 3 elements',a[0]));case\"in\":case\"!in\":a.length>=2&&(t=getType(a[1]),\"string\"!==t&&s.push(new ValidationError(n+\"[1]\",a[1],\"string expected, %s found\",t)));for(var o=2;ounbundle(r[0].zoom))return[new ValidationError(o,r[0].zoom,\"stop zoom values must appear in ascending order\")];unbundle(r[0].zoom)!==l&&(l=unbundle(r[0].zoom),i=void 0,s={}),t=t.concat(validateObject({key:o+\"[0]\",value:r[0],valueSpec:{zoom:{}},style:e.style,styleSpec:e.styleSpec,objectElementValidators:{zoom:validateNumber,value:a}}))}else t=t.concat(a({key:o+\"[0]\",value:r[0],valueSpec:{},style:e.style,styleSpec:e.styleSpec}));return t.concat(validate({key:o+\"[1]\",value:r[1],valueSpec:u,style:e.style,styleSpec:e.styleSpec}))}function a(e){var t=getType(e.value),r=unbundle(e.value);if(n){if(t!==n)return[new ValidationError(e.key,e.value,\"%s stop domain type must match previous stop domain type %s\",t,n)]}else n=t;if(\"number\"!==t&&\"string\"!==t&&\"boolean\"!==t)return[new ValidationError(e.key,e.value,\"stop domain value must be a number, string, or boolean\")];if(\"number\"!==t&&\"categorical\"!==p){var a=\"number expected, %s found\";return u[\"property-function\"]&&void 0===p&&(a+='\\nIf you intended to use a categorical function, specify `\"type\": \"categorical\"`.'),[new ValidationError(e.key,e.value,a,t)]}return\"categorical\"!==p||\"number\"!==t||isFinite(r)&&Math.floor(r)===r?\"number\"===t&&void 0!==i&&r=8&&(d&&!e.valueSpec[\"property-function\"]?v.push(new ValidationError(e.key,e.value,\"property functions not supported\")):y&&!e.valueSpec[\"zoom-function\"]&&v.push(new ValidationError(e.key,e.value,\"zoom functions not supported\"))),\"categorical\"!==p&&!c||void 0!==e.value.property||v.push(new ValidationError(e.key,e.value,'\"property\" property is required')),v};\n},{\"../error/validation_error\":104,\"../util/get_type\":122,\"../util/unbundle_jsonlint\":126,\"./validate\":127,\"./validate_array\":128,\"./validate_number\":139,\"./validate_object\":140}],135:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),validateString=_dereq_(\"./validate_string\");module.exports=function(r){var e=r.value,t=r.key,a=validateString(r);return a.length?a:(e.indexOf(\"{fontstack}\")===-1&&a.push(new ValidationError(t,e,'\"glyphs\" url must include a \"{fontstack}\" token')),e.indexOf(\"{range}\")===-1&&a.push(new ValidationError(t,e,'\"glyphs\" url must include a \"{range}\" token')),a)};\n},{\"../error/validation_error\":104,\"./validate_string\":144}],136:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),unbundle=_dereq_(\"../util/unbundle_jsonlint\"),validateObject=_dereq_(\"./validate_object\"),validateFilter=_dereq_(\"./validate_filter\"),validatePaintProperty=_dereq_(\"./validate_paint_property\"),validateLayoutProperty=_dereq_(\"./validate_layout_property\"),extend=_dereq_(\"../util/extend\");module.exports=function(e){var r=[],t=e.value,a=e.key,i=e.style,l=e.styleSpec;t.type||t.ref||r.push(new ValidationError(a,t,'either \"type\" or \"ref\" is required'));var u=unbundle(t.type),n=unbundle(t.ref);if(t.id)for(var o=unbundle(t.id),s=0;sm.maximum?[new ValidationError(r,i,\"%s is greater than the maximum value %s\",i,m.maximum)]:[]};\n},{\"../error/validation_error\":104,\"../util/get_type\":122}],140:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),getType=_dereq_(\"../util/get_type\"),validateSpec=_dereq_(\"./validate\");module.exports=function(e){var r=e.key,t=e.value,i=e.valueSpec||{},a=e.objectElementValidators||{},o=e.style,l=e.styleSpec,n=[],u=getType(t);if(\"object\"!==u)return[new ValidationError(r,t,\"object expected, %s found\",u)];for(var d in t){var p=d.split(\".\")[0],s=i[p]||i[\"*\"],c=void 0;if(a[p])c=a[p];else if(i[p])c=validateSpec;else if(a[\"*\"])c=a[\"*\"];else{if(!i[\"*\"]){n.push(new ValidationError(r,t[d],'unknown property \"%s\"',d));continue}c=validateSpec}n=n.concat(c({key:(r?r+\".\":r)+d,value:t[d],valueSpec:s,style:o,styleSpec:l,object:t,objectKey:d}))}for(var v in i)i[v].required&&void 0===i[v].default&&void 0===t[v]&&n.push(new ValidationError(r,t,'missing required property \"%s\"',v));return n};\n},{\"../error/validation_error\":104,\"../util/get_type\":122,\"./validate\":127}],141:[function(_dereq_,module,exports){\n\"use strict\";var validateProperty=_dereq_(\"./validate_property\");module.exports=function(r){return validateProperty(r,\"paint\")};\n},{\"./validate_property\":142}],142:[function(_dereq_,module,exports){\n\"use strict\";var validate=_dereq_(\"./validate\"),ValidationError=_dereq_(\"../error/validation_error\"),getType=_dereq_(\"../util/get_type\");module.exports=function(e,t){var r=e.key,i=e.style,a=e.styleSpec,n=e.value,o=e.objectKey,l=a[t+\"_\"+e.layerType];if(!l)return[];var y=o.match(/^(.*)-transition$/);if(\"paint\"===t&&y&&l[y[1]]&&l[y[1]].transition)return validate({key:r,value:n,valueSpec:a.transition,style:i,styleSpec:a});var p=e.valueSpec||l[o];if(!p)return[new ValidationError(r,n,'unknown property \"%s\"',o)];var s;if(\"string\"===getType(n)&&p[\"property-function\"]&&!p.tokens&&(s=/^{([^}]+)}$/.exec(n)))return[new ValidationError(r,n,'\"%s\" does not support interpolation syntax\\nUse an identity property function instead: `{ \"type\": \"identity\", \"property\": %s` }`.',o,JSON.stringify(s[1]))];var u=[];return\"symbol\"===e.layerType&&\"text-field\"===o&&i&&!i.glyphs&&u.push(new ValidationError(r,n,'use of \"text-field\" requires a style \"glyphs\" property')),u.concat(validate({key:e.key,value:n,valueSpec:p,style:i,styleSpec:a}))};\n},{\"../error/validation_error\":104,\"../util/get_type\":122,\"./validate\":127}],143:[function(_dereq_,module,exports){\n\"use strict\";var ValidationError=_dereq_(\"../error/validation_error\"),unbundle=_dereq_(\"../util/unbundle_jsonlint\"),validateObject=_dereq_(\"./validate_object\"),validateEnum=_dereq_(\"./validate_enum\");module.exports=function(e){var a=e.value,t=e.key,r=e.styleSpec,l=e.style;if(!a.type)return[new ValidationError(t,a,'\"type\" is required')];var u=unbundle(a.type),i=[];switch(u){case\"vector\":case\"raster\":if(i=i.concat(validateObject({key:t,value:a,valueSpec:r.source_tile,style:e.style,styleSpec:r})),\"url\"in a)for(var s in a)[\"type\",\"url\",\"tileSize\"].indexOf(s)<0&&i.push(new ValidationError(t+\".\"+s,a[s],'a source with a \"url\" property may not include a \"%s\" property',s));return i;case\"geojson\":return validateObject({key:t,value:a,valueSpec:r.source_geojson,style:l,styleSpec:r});case\"video\":return validateObject({key:t,value:a,valueSpec:r.source_video,style:l,styleSpec:r});case\"image\":return validateObject({key:t,value:a,valueSpec:r.source_image,style:l,styleSpec:r});case\"canvas\":return validateObject({key:t,value:a,valueSpec:r.source_canvas,style:l,styleSpec:r});default:return validateEnum({key:t+\".type\",value:a.type,valueSpec:{values:[\"vector\",\"raster\",\"geojson\",\"video\",\"image\",\"canvas\"]},style:l,styleSpec:r})}};\n},{\"../error/validation_error\":104,\"../util/unbundle_jsonlint\":126,\"./validate_enum\":132,\"./validate_object\":140}],144:[function(_dereq_,module,exports){\n\"use strict\";var getType=_dereq_(\"../util/get_type\"),ValidationError=_dereq_(\"../error/validation_error\");module.exports=function(r){var e=r.value,t=r.key,i=getType(e);return\"string\"!==i?[new ValidationError(t,e,\"string expected, %s found\",i)]:[]};\n},{\"../error/validation_error\":104,\"../util/get_type\":122}],145:[function(_dereq_,module,exports){\n\"use strict\";function validateStyleMin(e,a){a=a||latestStyleSpec;var t=[];return t=t.concat(validate({key:\"\",value:e,valueSpec:a.$root,styleSpec:a,style:e,objectElementValidators:{glyphs:validateGlyphsURL,\"*\":function(){return[]}}})),a.$version>7&&e.constants&&(t=t.concat(validateConstants({key:\"constants\",value:e.constants,style:e,styleSpec:a}))),sortErrors(t)}function sortErrors(e){return[].concat(e).sort(function(e,a){return e.line-a.line})}function wrapCleanErrors(e){return function(){return sortErrors(e.apply(this,arguments))}}var validateConstants=_dereq_(\"./validate/validate_constants\"),validate=_dereq_(\"./validate/validate\"),latestStyleSpec=_dereq_(\"./reference/latest\"),validateGlyphsURL=_dereq_(\"./validate/validate_glyphs_url\");validateStyleMin.source=wrapCleanErrors(_dereq_(\"./validate/validate_source\")),validateStyleMin.light=wrapCleanErrors(_dereq_(\"./validate/validate_light\")),validateStyleMin.layer=wrapCleanErrors(_dereq_(\"./validate/validate_layer\")),validateStyleMin.filter=wrapCleanErrors(_dereq_(\"./validate/validate_filter\")),validateStyleMin.paintProperty=wrapCleanErrors(_dereq_(\"./validate/validate_paint_property\")),validateStyleMin.layoutProperty=wrapCleanErrors(_dereq_(\"./validate/validate_layout_property\")),module.exports=validateStyleMin;\n},{\"./reference/latest\":119,\"./validate/validate\":127,\"./validate/validate_constants\":131,\"./validate/validate_filter\":133,\"./validate/validate_glyphs_url\":135,\"./validate/validate_layer\":136,\"./validate/validate_layout_property\":137,\"./validate/validate_light\":138,\"./validate/validate_paint_property\":141,\"./validate/validate_source\":143}],146:[function(_dereq_,module,exports){\n\"use strict\";var AnimationLoop=function(){this.n=0,this.times=[]};AnimationLoop.prototype.stopped=function(){return this.times=this.times.filter(function(t){return t.time>=(new Date).getTime()}),!this.times.length},AnimationLoop.prototype.set=function(t){return this.times.push({id:this.n,time:t+(new Date).getTime()}),this.n++},AnimationLoop.prototype.cancel=function(t){this.times=this.times.filter(function(i){return i.id!==t})},module.exports=AnimationLoop;\n},{}],147:[function(_dereq_,module,exports){\n\"use strict\";var Evented=_dereq_(\"../util/evented\"),ajax=_dereq_(\"../util/ajax\"),browser=_dereq_(\"../util/browser\"),normalizeURL=_dereq_(\"../util/mapbox\").normalizeSpriteURL,SpritePosition=function(){this.x=0,this.y=0,this.width=0,this.height=0,this.pixelRatio=1,this.sdf=!1},ImageSprite=function(t){function e(e,i){var r=this;t.call(this),this.base=e,this.retina=browser.devicePixelRatio>1,this.setEventedParent(i);var a=this.retina?\"@2x\":\"\";ajax.getJSON(normalizeURL(e,a,\".json\"),function(t,e){return t?void r.fire(\"error\",{error:t}):(r.data=e,void(r.imgData&&r.fire(\"data\",{dataType:\"style\"})))}),ajax.getImage(normalizeURL(e,a,\".png\"),function(t,e){return t?void r.fire(\"error\",{error:t}):(r.imgData=browser.getImageData(e),r.width=e.width,void(r.data&&r.fire(\"data\",{dataType:\"style\"})))})}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.toJSON=function(){return this.base},e.prototype.loaded=function(){return!(!this.data||!this.imgData)},e.prototype.resize=function(){var t=this;if(browser.devicePixelRatio>1!==this.retina){var i=new e(this.base);i.on(\"data\",function(){t.data=i.data,t.imgData=i.imgData,t.width=i.width,t.retina=i.retina})}},e.prototype.getSpritePosition=function(t){if(!this.loaded())return new SpritePosition;var e=this.data&&this.data[t];return e&&this.imgData?e:new SpritePosition},e}(Evented);module.exports=ImageSprite;\n},{\"../util/ajax\":194,\"../util/browser\":195,\"../util/evented\":203,\"../util/mapbox\":210}],148:[function(_dereq_,module,exports){\n\"use strict\";var styleSpec=_dereq_(\"../style-spec/reference/latest\"),util=_dereq_(\"../util/util\"),Evented=_dereq_(\"../util/evented\"),validateStyle=_dereq_(\"./validate_style\"),StyleDeclaration=_dereq_(\"./style_declaration\"),StyleTransition=_dereq_(\"./style_transition\"),TRANSITION_SUFFIX=\"-transition\",Light=function(t){function i(i){t.call(this),this.properties=[\"anchor\",\"color\",\"position\",\"intensity\"],this._specifications=styleSpec.light,this.set(i)}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.set=function(t){var i=this;if(!this._validate(validateStyle.light,t)){this._declarations={},this._transitions={},this._transitionOptions={},this.calculated={},t=util.extend({anchor:this._specifications.anchor.default,color:this._specifications.color.default,position:this._specifications.position.default,intensity:this._specifications.intensity.default},t);for(var e=0,o=i.properties;eMath.floor(e)&&(t.lastIntegerZoom=Math.floor(e+1),t.lastIntegerZoomTime=Date.now()),t.lastZoom=e},t.prototype._checkLoaded=function(){if(!this._loaded)throw new Error(\"Style is not done loading\")},t.prototype.update=function(e,t){var r=this;if(this._changed){var i=Object.keys(this._updatedLayers),o=Object.keys(this._removedLayers);(i.length||o.length||this._updatedSymbolOrder)&&this._updateWorkerLayers(i,o);for(var s in r._updatedSources){var a=r._updatedSources[s];\"reload\"===a?r._reloadSource(s):\"clear\"===a&&r._clearSource(s)}this._applyClasses(e,t),this._resetUpdates(),this.fire(\"data\",{dataType:\"style\"})}},t.prototype._updateWorkerLayers=function(e,t){var r=this,i=this._updatedSymbolOrder?this._order.filter(function(e){return\"symbol\"===r._layers[e].type}):null;this.dispatcher.broadcast(\"updateLayers\",{layers:this._serializeLayers(e),removedIds:t,symbolOrder:i})},t.prototype._resetUpdates=function(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSymbolOrder=!1,this._updatedSources={},this._updatedPaintProps={},this._updatedAllPaintProps=!1},t.prototype.setState=function(e){var t=this;if(this._checkLoaded(),validateStyle.emitErrors(this,validateStyle(e)))return!1;e=util.extend({},e),e.layers=deref(e.layers);var r=diff(this.serialize(),e).filter(function(e){return!(e.command in ignoredDiffOperations)});if(0===r.length)return!1;var i=r.filter(function(e){return!(e.command in supportedDiffOperations)});if(i.length>0)throw new Error(\"Unimplemented: \"+i.map(function(e){return e.command}).join(\", \")+\".\");return r.forEach(function(e){\"setTransition\"!==e.command&&t[e.command].apply(t,e.args)}),this.stylesheet=e,!0},t.prototype.addSource=function(e,t,r){var i=this;if(this._checkLoaded(),void 0!==this.sourceCaches[e])throw new Error(\"There is already a source with this ID\");if(!t.type)throw new Error(\"The type property must be defined, but the only the following properties were given: \"+Object.keys(t)+\".\");var o=[\"vector\",\"raster\",\"geojson\",\"video\",\"image\",\"canvas\"],s=o.indexOf(t.type)>=0;if(!s||!this._validate(validateStyle.source,\"sources.\"+e,t,null,r)){var a=this.sourceCaches[e]=new SourceCache(e,t,this.dispatcher);a.style=this,a.setEventedParent(this,function(){return{isSourceLoaded:i.loaded(),source:a.serialize(),sourceId:e}}),a.onAdd(this.map),this._changed=!0}},t.prototype.removeSource=function(e){if(this._checkLoaded(),void 0===this.sourceCaches[e])throw new Error(\"There is no source with this ID\");var t=this.sourceCaches[e];delete this.sourceCaches[e],delete this._updatedSources[e],t.setEventedParent(null),t.clearTiles(),t.onRemove&&t.onRemove(this.map),this._changed=!0},t.prototype.getSource=function(e){return this.sourceCaches[e]&&this.sourceCaches[e].getSource()},t.prototype.addLayer=function(e,t,r){this._checkLoaded();var i=e.id;if(\"object\"==typeof e.source&&(this.addSource(i,e.source),e=util.extend(e,{source:i})),!this._validate(validateStyle.layer,\"layers.\"+i,e,{arrayIndex:-1},r)){var o=StyleLayer.create(e);this._validateLayer(o),o.setEventedParent(this,{layer:{id:i}});var s=t?this._order.indexOf(t):this._order.length;if(this._order.splice(s,0,i),this._layers[i]=o,this._removedLayers[i]&&o.source){var a=this._removedLayers[i];delete this._removedLayers[i],this._updatedSources[o.source]=a.type!==o.type?\"clear\":\"reload\"}this._updateLayer(o),\"symbol\"===o.type&&(this._updatedSymbolOrder=!0),this.updateClasses(i)}},t.prototype.moveLayer=function(e,t){this._checkLoaded(),this._changed=!0;var r=this._layers[e];if(!r)return void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be moved.\")});var i=this._order.indexOf(e);this._order.splice(i,1);var o=t?this._order.indexOf(t):this._order.length;this._order.splice(o,0,e),\"symbol\"===r.type&&(this._updatedSymbolOrder=!0,r.source&&!this._updatedSources[r.source]&&(this._updatedSources[r.source]=\"reload\"))},t.prototype.removeLayer=function(e){this._checkLoaded();var t=this._layers[e];if(!t)return void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be removed.\")});t.setEventedParent(null);var r=this._order.indexOf(e);this._order.splice(r,1),\"symbol\"===t.type&&(this._updatedSymbolOrder=!0),this._changed=!0,this._removedLayers[e]=t,delete this._layers[e],delete this._updatedLayers[e],delete this._updatedPaintProps[e]},t.prototype.getLayer=function(e){return this._layers[e]},t.prototype.setLayerZoomRange=function(e,t,r){this._checkLoaded();var i=this.getLayer(e);return i?void(i.minzoom===t&&i.maxzoom===r||(null!=t&&(i.minzoom=t),null!=r&&(i.maxzoom=r),this._updateLayer(i))):void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot have zoom extent.\")})},t.prototype.setFilter=function(e,t){this._checkLoaded();var r=this.getLayer(e);return r?void(null!==t&&void 0!==t&&this._validate(validateStyle.filter,\"layers.\"+r.id+\".filter\",t)||util.deepEqual(r.filter,t)||(r.filter=util.clone(t),this._updateLayer(r))):void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be filtered.\")})},t.prototype.getFilter=function(e){return util.clone(this.getLayer(e).filter)},t.prototype.setLayoutProperty=function(e,t,r){this._checkLoaded();var i=this.getLayer(e);return i?void(util.deepEqual(i.getLayoutProperty(t),r)||(i.setLayoutProperty(t,r),this._updateLayer(i))):void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be styled.\")})},t.prototype.getLayoutProperty=function(e,t){return this.getLayer(e).getLayoutProperty(t)},t.prototype.setPaintProperty=function(e,t,r,i){this._checkLoaded();var o=this.getLayer(e);if(!o)return void this.fire(\"error\",{error:new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be styled.\")});if(!util.deepEqual(o.getPaintProperty(t,i),r)){var s=o.isPaintValueFeatureConstant(t);o.setPaintProperty(t,r,i);var a=!(r&&MapboxGLFunction.isFunctionDefinition(r)&&\"$zoom\"!==r.property&&void 0!==r.property);a&&s||this._updateLayer(o),this.updateClasses(e,t)}},t.prototype.getPaintProperty=function(e,t,r){return this.getLayer(e).getPaintProperty(t,r)},t.prototype.getTransition=function(){return util.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},t.prototype.updateClasses=function(e,t){if(this._changed=!0,e){var r=this._updatedPaintProps;r[e]||(r[e]={}),r[e][t||\"all\"]=!0}else this._updatedAllPaintProps=!0},t.prototype.serialize=function(){var e=this;return util.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:util.mapObject(this.sourceCaches,function(e){return e.serialize()}),layers:this._order.map(function(t){return e._layers[t].serialize()})},function(e){return void 0!==e})},t.prototype._updateLayer=function(e){this._updatedLayers[e.id]=!0,e.source&&!this._updatedSources[e.source]&&(this._updatedSources[e.source]=\"reload\"),this._changed=!0},t.prototype._flattenRenderedFeatures=function(e){for(var t=this,r=[],i=this._order.length-1;i>=0;i--)for(var o=t._order[i],s=0,a=e;s=this.maxzoom)||\"none\"===this.layout.visibility)},i.prototype.updatePaintTransitions=function(t,i,a,e,o){for(var n=this,r=util.extend({},this._paintDeclarations[\"\"]),s=0;s=this.endTime)return o;var a=this.oldTransition.calculate(t,i,this.startTime),n=util.easeCubicInOut((e-this.startTime-this.delay)/this.duration);return this.interp(a,o,n)},StyleTransition.prototype._calculateTargetValue=function(t,i){if(!this.zoomTransitioned)return this.declaration.calculate(t,i);var e=t.zoom,o=this.zoomHistory.lastIntegerZoom,a=e>o?2:.5,n=this.declaration.calculate({zoom:e>o?e-1:e+1},i),r=this.declaration.calculate({zoom:e},i),s=Math.min((Date.now()-this.zoomHistory.lastIntegerZoomTime)/this.duration,1),l=Math.abs(e-o),u=interpolate(s,1,l);return void 0!==n&&void 0!==r?{from:n,fromScale:a,to:r,toScale:1,t:u}:void 0},module.exports=StyleTransition;\n},{\"../style-spec/util/interpolate\":123,\"../util/util\":215}],159:[function(_dereq_,module,exports){\n\"use strict\";module.exports=_dereq_(\"../style-spec/validate_style.min\"),module.exports.emitErrors=function(r,e){if(e&&e.length){for(var t=0;t-a/2;){if(s--,s<0)return!1;f-=e[s].dist(i),i=e[s]}f+=e[s].dist(e[s+1]),s++;for(var l=[],o=0;fr;)o-=l.shift().angleDelta;if(o>n)return!1;s++,f+=c.dist(g)}return!0}module.exports=checkMaxAngle;\n},{}],162:[function(_dereq_,module,exports){\n\"use strict\";function clipLine(n,x,y,o,e){for(var r=[],t=0;t=o&&w.x>=o||(P.x>=o?P=new Point(o,P.y+(w.y-P.y)*((o-P.x)/(w.x-P.x)))._round():w.x>=o&&(w=new Point(o,P.y+(w.y-P.y)*((o-P.x)/(w.x-P.x)))._round()),P.y>=e&&w.y>=e||(P.y>=e?P=new Point(P.x+(w.x-P.x)*((e-P.y)/(w.y-P.y)),e)._round():w.y>=e&&(w=new Point(P.x+(w.x-P.x)*((e-P.y)/(w.y-P.y)),e)._round()),u&&P.equals(u[u.length-1])||(u=[P],r.push(u)),u.push(w)))))}return r}var Point=_dereq_(\"point-geometry\");module.exports=clipLine;\n},{\"point-geometry\":26}],163:[function(_dereq_,module,exports){\n\"use strict\";var createStructArrayType=_dereq_(\"../util/struct_array\"),Point=_dereq_(\"point-geometry\"),CollisionBoxArray=createStructArrayType({members:[{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:\"Float32\",name:\"maxScale\"},{type:\"Uint32\",name:\"featureIndex\"},{type:\"Uint16\",name:\"sourceLayerIndex\"},{type:\"Uint16\",name:\"bucketIndex\"},{type:\"Int16\",name:\"bbox0\"},{type:\"Int16\",name:\"bbox1\"},{type:\"Int16\",name:\"bbox2\"},{type:\"Int16\",name:\"bbox3\"},{type:\"Float32\",name:\"placementScale\"}]});Object.defineProperty(CollisionBoxArray.prototype.StructType.prototype,\"anchorPoint\",{get:function(){return new Point(this.anchorPointX,this.anchorPointY)}}),module.exports=CollisionBoxArray;\n},{\"../util/struct_array\":213,\"point-geometry\":26}],164:[function(_dereq_,module,exports){\n\"use strict\";var CollisionFeature=function(t,e,i,o,s,a,n,r,l,d,u){var h=n.top*r-l,x=n.bottom*r+l,f=n.left*r-l,m=n.right*r+l;if(this.boxStartIndex=t.length,d){var _=x-h,b=m-f;if(_>0)if(_=Math.max(10*r,_),u){var v=e[i.segment+1].sub(e[i.segment])._unit()._mult(b),c=[i.sub(v),i.add(v)];this._addLineCollisionBoxes(t,c,i,0,b,_,o,s,a)}else this._addLineCollisionBoxes(t,e,i,i.segment,b,_,o,s,a)}else t.emplaceBack(i.x,i.y,f,h,m,x,1/0,o,s,a,0,0,0,0,0);this.boxEndIndex=t.length};CollisionFeature.prototype._addLineCollisionBoxes=function(t,e,i,o,s,a,n,r,l){var d=a/2,u=Math.floor(s/d),h=-a/2,x=this.boxes,f=i,m=o+1,_=h;do{if(m--,m<0)return x;_-=e[m].dist(f),f=e[m]}while(_>-s/2);for(var b=e[m].dist(e[m+1]),v=0;v=e.length)return x;b=e[m].dist(e[m+1])}var g=c-_,p=e[m],C=e[m+1],B=C.sub(p)._unit()._mult(g)._add(p)._round(),M=Math.max(Math.abs(c-h)-d/2,0),y=s/2/M;t.emplaceBack(B.x,B.y,-a/2,-a/2,a/2,a/2,y,n,r,l,0,0,0,0,0)}return x},module.exports=CollisionFeature;\n},{}],165:[function(_dereq_,module,exports){\n\"use strict\";var Point=_dereq_(\"point-geometry\"),EXTENT=_dereq_(\"../data/extent\"),Grid=_dereq_(\"grid-index\"),intersectionTests=_dereq_(\"../util/intersection_tests\"),CollisionTile=function(t,e,i){if(\"object\"==typeof t){var r=t;i=e,t=r.angle,e=r.pitch,this.grid=new Grid(r.grid),this.ignoredGrid=new Grid(r.ignoredGrid)}else this.grid=new Grid(EXTENT,12,6),this.ignoredGrid=new Grid(EXTENT,12,0);this.minScale=.5,this.maxScale=2,this.angle=t,this.pitch=e;var a=Math.sin(t),o=Math.cos(t);if(this.rotationMatrix=[o,-a,a,o],this.reverseRotationMatrix=[o,a,-a,o],this.yStretch=1/Math.cos(e/180*Math.PI),this.yStretch=Math.pow(this.yStretch,1.3),this.collisionBoxArray=i,0===i.length){i.emplaceBack();var n=32767;i.emplaceBack(0,0,0,-n,0,n,n,0,0,0,0,0,0,0,0,0),i.emplaceBack(EXTENT,0,0,-n,0,n,n,0,0,0,0,0,0,0,0,0),i.emplaceBack(0,0,-n,0,n,0,n,0,0,0,0,0,0,0,0,0),i.emplaceBack(0,EXTENT,-n,0,n,0,n,0,0,0,0,0,0,0,0,0)}this.tempCollisionBox=i.get(0),this.edges=[i.get(1),i.get(2),i.get(3),i.get(4)]};CollisionTile.prototype.serialize=function(t){var e=this.grid.toArrayBuffer(),i=this.ignoredGrid.toArrayBuffer();return t&&(t.push(e),t.push(i)),{angle:this.angle,pitch:this.pitch,grid:e,ignoredGrid:i}},CollisionTile.prototype.placeCollisionFeature=function(t,e,i){for(var r=this,a=this.collisionBoxArray,o=this.minScale,n=this.rotationMatrix,l=this.yStretch,h=t.boxStartIndex;h=r.maxScale)return o}if(i){var S=void 0;if(r.angle){var P=r.reverseRotationMatrix,b=new Point(s.x1,s.y1).matMult(P),T=new Point(s.x2,s.y1).matMult(P),w=new Point(s.x1,s.y2).matMult(P),N=new Point(s.x2,s.y2).matMult(P);S=r.tempCollisionBox,S.anchorPointX=s.anchorPoint.x,S.anchorPointY=s.anchorPoint.y,S.x1=Math.min(b.x,T.x,w.x,N.x),S.y1=Math.min(b.y,T.x,w.x,N.x),S.x2=Math.max(b.x,T.x,w.x,N.x),S.y2=Math.max(b.y,T.x,w.x,N.x),S.maxScale=s.maxScale}else S=s;for(var B=0;B=r.maxScale)return o}}}return o},CollisionTile.prototype.queryRenderedSymbols=function(t,e){var i={},r=[];if(0===t.length||0===this.grid.length&&0===this.ignoredGrid.length)return r;for(var a=this.collisionBoxArray,o=this.rotationMatrix,n=this.yStretch,l=[],h=1/0,s=1/0,x=-(1/0),c=-(1/0),g=0;gS.maxScale)){var T=S.anchorPoint.matMult(o),w=T.x+S.x1/e,N=T.y+S.y1/e*n,B=T.x+S.x2/e,G=T.y+S.y2/e*n,E=[new Point(w,N),new Point(B,N),new Point(B,G),new Point(w,G)];intersectionTests.polygonIntersectsPolygon(l,E)&&(i[P][b]=!0,r.push(u[v]))}}return r},CollisionTile.prototype.getPlacementScale=function(t,e,i,r,a){var o=e.x-r.x,n=e.y-r.y,l=(a.x1-i.x2)/o,h=(a.x2-i.x1)/o,s=(a.y1-i.y2)*this.yStretch/n,x=(a.y2-i.y1)*this.yStretch/n;(isNaN(l)||isNaN(h))&&(l=h=1),(isNaN(s)||isNaN(x))&&(s=x=1);var c=Math.min(Math.max(l,h),Math.max(s,x)),g=a.maxScale,y=i.maxScale;return c>g&&(c=g),c>y&&(c=y),c>t&&c>=a.placementScale&&(t=c),t},CollisionTile.prototype.insertCollisionFeature=function(t,e,i){for(var r=this,a=i?this.ignoredGrid:this.grid,o=this.collisionBoxArray,n=t.boxStartIndex;n=0&&k=0&&q=0&&p+h<=s){var M=new Anchor(k,q,A,f)._round();n&&!checkMaxAngle(e,M,l,n,a)||x.push(M)}}g+=y}return i||x.length||o||(x=resample(e,g/2,t,n,a,l,o,!0,c)),x}var interpolate=_dereq_(\"../style-spec/util/interpolate\"),Anchor=_dereq_(\"../symbol/anchor\"),checkMaxAngle=_dereq_(\"./check_max_angle\");module.exports=getAnchors;\n},{\"../style-spec/util/interpolate\":123,\"../symbol/anchor\":160,\"./check_max_angle\":161}],167:[function(_dereq_,module,exports){\n\"use strict\";var ShelfPack=_dereq_(\"@mapbox/shelf-pack\"),util=_dereq_(\"../util/util\"),SIZE_GROWTH_RATE=4,DEFAULT_SIZE=128,MAX_SIZE=2048,GlyphAtlas=function(){this.width=DEFAULT_SIZE,this.height=DEFAULT_SIZE,this.atlas=new ShelfPack(this.width,this.height),this.index={},this.ids={},this.data=new Uint8Array(this.width*this.height)};GlyphAtlas.prototype.getGlyphs=function(){var t,i,e,h=this,r={};for(var s in h.ids)t=s.split(\"#\"),i=t[0],e=t[1],r[i]||(r[i]=[]),r[i].push(e);return r},GlyphAtlas.prototype.getRects=function(){var t,i,e,h=this,r={};for(var s in h.ids)t=s.split(\"#\"),i=t[0],e=t[1],r[i]||(r[i]={}),r[i][e]=h.index[s];return r},GlyphAtlas.prototype.addGlyph=function(t,i,e,h){var r=this;if(!e)return null;var s=i+\"#\"+e.id;if(this.index[s])return this.ids[s].indexOf(t)<0&&this.ids[s].push(t),this.index[s];if(!e.bitmap)return null;var a=e.width+2*h,E=e.height+2*h,n=1,l=a+2*n,T=E+2*n;l+=4-l%4,T+=4-T%4;var u=this.atlas.packOne(l,T);if(u||(this.resize(),u=this.atlas.packOne(l,T)),!u)return util.warnOnce(\"glyph bitmap overflow\"),null;this.index[s]=u,this.ids[s]=[t];for(var d=this.data,p=e.bitmap,A=0;A=MAX_SIZE||e>=MAX_SIZE)){this.texture&&(this.gl&&this.gl.deleteTexture(this.texture),this.texture=null),this.width*=SIZE_GROWTH_RATE,this.height*=SIZE_GROWTH_RATE,this.atlas.resize(this.width,this.height);for(var h=new ArrayBuffer(this.width*this.height),r=0;r65535)return a(\"glyphs > 65535 not supported\");void 0===this.loading[t]&&(this.loading[t]={});var l=this.loading[t];if(l[e])l[e].push(a);else{l[e]=[a];var i=256*e+\"-\"+(256*e+255),r=glyphUrl(t,i,this.url);ajax.getArrayBuffer(r,function(t,a){for(var i=!t&&new Glyphs(new Protobuf(a.data)),r=0;r=0^o,r=Math.abs(n),h=new Point(e.x,e.y),c=getSegmentEnd(l,a,i),g={anchor:h,end:c,index:i,minScale:getMinScaleForSegment(r,h,c),maxScale:1/0};;){if(insertSegmentGlyph(t,g,l,o),g.minScale<=e.scale)return e.scale;var u=getNextVirtualSegment(g,a,r,l);if(!u)return g.minScale;g=u}}function insertSegmentGlyph(t,e,n,a){var i=Math.atan2(e.end.y-e.anchor.y,e.end.x-e.anchor.x),o=n?i:i+Math.PI;t.push({anchorPoint:e.anchor,upsideDown:a,minScale:e.minScale,maxScale:e.maxScale,angle:(o+2*Math.PI)%(2*Math.PI)})}function getVirtualSegmentAnchor(t,e,n){var a=e.sub(t)._unit();return t.sub(a._mult(n))}function getMinScaleForSegment(t,e,n){var a=e.dist(n);return t/a}function getSegmentEnd(t,e,n){return t?e[n+1]:e[n]}function getNextVirtualSegment(t,e,n,a){for(var i=t.end,o=i,l=t.index;o.equals(i);){if(a&&l+21?2:1,this.dirty=!0}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.allocateImage=function(t,i){t/=this.pixelRatio,i/=this.pixelRatio;var e=2,r=t+e+(4-(t+e)%4),a=i+e+(4-(i+e)%4),h=this.shelfPack.packOne(r,a);return h?h:(util.warnOnce(\"SpriteAtlas out of space.\"),null)},i.prototype.addImage=function(t,i,e){var r,a,h;if(i instanceof window.HTMLImageElement?(r=i.width,a=i.height,i=browser.getImageData(i),h=1):(r=e.width,a=e.height,h=e.pixelRatio||1),ArrayBuffer.isView(i)&&(i=new Uint32Array(i.buffer)),!(i instanceof Uint32Array))return this.fire(\"error\",{error:new Error(\"Image provided in an invalid format. Supported formats are HTMLImageElement and ArrayBufferView.\")});if(this.images[t])return this.fire(\"error\",{error:new Error(\"An image with this name already exists.\")});var s=this.allocateImage(r,a);if(!s)return this.fire(\"error\",{error:new Error(\"There is not enough space to add this image.\")});var o={rect:s,width:r/h,height:a/h,sdf:!1,pixelRatio:h/this.pixelRatio};this.images[t]=o,this.copy(i,r,s,{pixelRatio:h,x:0,y:0,width:r,height:a},!1),this.fire(\"data\",{dataType:\"style\"})},i.prototype.removeImage=function(t){var i=this.images[t];return delete this.images[t],i?(this.shelfPack.unref(i.rect),void this.fire(\"data\",{dataType:\"style\"})):this.fire(\"error\",{error:new Error(\"No image with this name exists.\")})},i.prototype.getImage=function(t,i){if(this.images[t])return this.images[t];if(!this.sprite)return null;var e=this.sprite.getSpritePosition(t);if(!e.width||!e.height)return null;var r=this.allocateImage(e.width,e.height);if(!r)return null;var a={rect:r,width:e.width/e.pixelRatio,height:e.height/e.pixelRatio,sdf:e.sdf,pixelRatio:e.pixelRatio/this.pixelRatio};if(this.images[t]=a,!this.sprite.imgData)return null;var h=new Uint32Array(this.sprite.imgData.buffer);return this.copy(h,this.sprite.width,r,e,i),a},i.prototype.getPosition=function(t,i){var e=this.getImage(t,i),r=e&&e.rect;if(!r)return null;var a=e.width*e.pixelRatio,h=e.height*e.pixelRatio,s=1;return{size:[e.width,e.height],tl:[(r.x+s)/this.width,(r.y+s)/this.height],br:[(r.x+s+a)/this.width,(r.y+s+h)/this.height]}},i.prototype.allocate=function(){var t=this;if(!this.data){var i=Math.floor(this.width*this.pixelRatio),e=Math.floor(this.height*this.pixelRatio);this.data=new Uint32Array(i*e);for(var r=0;r1||(b?(clearTimeout(b),b=null,h(\"dblclick\",t)):b=setTimeout(l,300))}function i(e){f(\"touchmove\",e)}function c(e){f(\"touchend\",e)}function d(e){f(\"touchcancel\",e)}function l(){b=null}function s(e){var t=DOM.mousePos(g,e);t.equals(L)&&h(\"click\",e)}function v(e){h(\"dblclick\",e),e.preventDefault()}function m(t){var n=e.dragRotate&&e.dragRotate.isActive();E||n?E&&(p=t):h(\"contextmenu\",t),t.preventDefault()}function h(t,n){var o=DOM.mousePos(g,n);return e.fire(t,{lngLat:e.unproject(o),point:o,originalEvent:n})}function f(t,n){var o=DOM.touchPos(g,n),r=o.reduce(function(e,t,n,o){return e.add(t.div(o.length))},new Point(0,0));return e.fire(t,{lngLat:e.unproject(r),point:r,lngLats:o.map(function(t){return e.unproject(t)},this),points:o,originalEvent:n})}var g=e.getCanvasContainer(),p=null,E=!1,L=null,b=null;for(var q in handlers)e[q]=new handlers[q](e,t),t.interactive&&t[q]&&e[q].enable(t[q]);g.addEventListener(\"mouseout\",n,!1),g.addEventListener(\"mousedown\",o,!1),g.addEventListener(\"mouseup\",r,!1),g.addEventListener(\"mousemove\",a,!1),g.addEventListener(\"touchstart\",u,!1),g.addEventListener(\"touchend\",c,!1),g.addEventListener(\"touchmove\",i,!1),g.addEventListener(\"touchcancel\",d,!1),g.addEventListener(\"click\",s,!1),g.addEventListener(\"dblclick\",v,!1),g.addEventListener(\"contextmenu\",m,!1)};\n},{\"../util/dom\":202,\"./handler/box_zoom\":182,\"./handler/dblclick_zoom\":183,\"./handler/drag_pan\":184,\"./handler/drag_rotate\":185,\"./handler/keyboard\":186,\"./handler/scroll_zoom\":187,\"./handler/touch_zoom_rotate\":188,\"point-geometry\":26}],175:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),interpolate=_dereq_(\"../style-spec/util/interpolate\"),browser=_dereq_(\"../util/browser\"),LngLat=_dereq_(\"../geo/lng_lat\"),LngLatBounds=_dereq_(\"../geo/lng_lat_bounds\"),Point=_dereq_(\"point-geometry\"),Evented=_dereq_(\"../util/evented\"),Camera=function(t){function e(e,i){t.call(this),this.moving=!1,this.transform=e,this._bearingSnap=i.bearingSnap}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getCenter=function(){return this.transform.center},e.prototype.setCenter=function(t,e){return this.jumpTo({center:t},e)},e.prototype.panBy=function(t,e,i){return t=Point.convert(t).mult(-1),this.panTo(this.transform.center,util.extend({offset:t},e),i)},e.prototype.panTo=function(t,e,i){return this.easeTo(util.extend({center:t},e),i)},e.prototype.getZoom=function(){return this.transform.zoom},e.prototype.setZoom=function(t,e){return this.jumpTo({zoom:t},e),this},e.prototype.zoomTo=function(t,e,i){return this.easeTo(util.extend({zoom:t},e),i)},e.prototype.zoomIn=function(t,e){return this.zoomTo(this.getZoom()+1,t,e),this},e.prototype.zoomOut=function(t,e){return this.zoomTo(this.getZoom()-1,t,e),this},e.prototype.getBearing=function(){return this.transform.bearing},e.prototype.setBearing=function(t,e){return this.jumpTo({bearing:t},e),this},e.prototype.rotateTo=function(t,e,i){return this.easeTo(util.extend({bearing:t},e),i)},e.prototype.resetNorth=function(t,e){return this.rotateTo(0,util.extend({duration:1e3},t),e),this},e.prototype.snapToNorth=function(t,e){return Math.abs(this.getBearing())e?1:0}),[\"bottom\",\"left\",\"right\",\"top\"]))return void util.warnOnce(\"options.padding must be a positive number, or an Object with keys 'bottom', 'left', 'right', 'top'\");t=LngLatBounds.convert(t);var n=[e.padding.left-e.padding.right,e.padding.top-e.padding.bottom],r=Math.min(e.padding.right,e.padding.left),a=Math.min(e.padding.top,e.padding.bottom);e.offset=[e.offset[0]+n[0],e.offset[1]+n[1]];var s=Point.convert(e.offset),h=this.transform,p=h.project(t.getNorthWest()),u=h.project(t.getSouthEast()),c=u.sub(p),f=(h.width-2*r-2*Math.abs(s.x))/c.x,m=(h.height-2*a-2*Math.abs(s.y))/c.y;return m<0||f<0?void util.warnOnce(\"Map cannot fit within canvas with the given bounds, padding, and/or offset.\"):(e.center=h.unproject(p.add(u).div(2)),e.zoom=Math.min(h.scaleZoom(h.scale*Math.min(f,m)),e.maxZoom),e.bearing=0,e.linear?this.easeTo(e,i):this.flyTo(e,i))},e.prototype.jumpTo=function(t,e){this.stop();var i=this.transform,o=!1,n=!1,r=!1;return\"zoom\"in t&&i.zoom!==+t.zoom&&(o=!0,i.zoom=+t.zoom),\"center\"in t&&(i.center=LngLat.convert(t.center)),\"bearing\"in t&&i.bearing!==+t.bearing&&(n=!0,i.bearing=+t.bearing),\"pitch\"in t&&i.pitch!==+t.pitch&&(r=!0,i.pitch=+t.pitch),this.fire(\"movestart\",e).fire(\"move\",e),o&&this.fire(\"zoomstart\",e).fire(\"zoom\",e).fire(\"zoomend\",e),n&&this.fire(\"rotate\",e),r&&this.fire(\"pitchstart\",e).fire(\"pitch\",e).fire(\"pitchend\",e),this.fire(\"moveend\",e)},e.prototype.easeTo=function(t,e){var i=this;this.stop(),t=util.extend({offset:[0,0],duration:500,easing:util.ease},t),t.animate===!1&&(t.duration=0),t.smoothEasing&&0!==t.duration&&(t.easing=this._smoothOutEasing(t.duration));var o=this.transform,n=this.getZoom(),r=this.getBearing(),a=this.getPitch(),s=\"zoom\"in t?+t.zoom:n,h=\"bearing\"in t?this._normalizeBearing(t.bearing,r):r,p=\"pitch\"in t?+t.pitch:a,u=o.centerPoint.add(Point.convert(t.offset)),c=o.pointLocation(u),f=LngLat.convert(t.center||c);this._normalizeCenter(f);var m,g,d=o.project(c),l=o.project(f).sub(d),v=o.zoomScale(s-n);return t.around&&(m=LngLat.convert(t.around),g=o.locationPoint(m)),this.zooming=s!==n,this.rotating=r!==h,this.pitching=p!==a,this._prepareEase(e,t.noMoveStart),clearTimeout(this._onEaseEnd),this._ease(function(t){if(this.zooming&&(o.zoom=interpolate(n,s,t)),this.rotating&&(o.bearing=interpolate(r,h,t)),this.pitching&&(o.pitch=interpolate(a,p,t)),m)o.setLocationAtPoint(m,g);else{var i=o.zoomScale(o.zoom-n),c=s>n?Math.min(2,v):Math.max(.5,v),f=Math.pow(c,1-t),b=o.unproject(d.add(l.mult(t*f)).mult(i));o.setLocationAtPoint(o.renderWorldCopies?b.wrap():b,u)}this._fireMoveEvents(e)},function(){t.delayEndEvents?i._onEaseEnd=setTimeout(function(){return i._easeToEnd(e)},t.delayEndEvents):i._easeToEnd(e)},t),this},e.prototype._prepareEase=function(t,e){this.moving=!0,e||this.fire(\"movestart\",t),this.zooming&&this.fire(\"zoomstart\",t),this.pitching&&this.fire(\"pitchstart\",t)},e.prototype._fireMoveEvents=function(t){this.fire(\"move\",t),this.zooming&&this.fire(\"zoom\",t),this.rotating&&this.fire(\"rotate\",t),this.pitching&&this.fire(\"pitch\",t)},e.prototype._easeToEnd=function(t){var e=this.zooming,i=this.pitching;this.moving=!1,this.zooming=!1,this.rotating=!1,this.pitching=!1,e&&this.fire(\"zoomend\",t),i&&this.fire(\"pitchend\",t),this.fire(\"moveend\",t)},e.prototype.flyTo=function(t,e){function i(t){var e=(M*M-z*z+(t?-1:1)*L*L*E*E)/(2*(t?M:z)*L*E);return Math.log(Math.sqrt(e*e+1)-e)}function o(t){return(Math.exp(t)-Math.exp(-t))/2}function n(t){return(Math.exp(t)+Math.exp(-t))/2}function r(t){return o(t)/n(t)}var a=this;this.stop(),t=util.extend({offset:[0,0],speed:1.2,curve:1.42,easing:util.ease},t);var s=this.transform,h=this.getZoom(),p=this.getBearing(),u=this.getPitch(),c=\"zoom\"in t?+t.zoom:h,f=\"bearing\"in t?this._normalizeBearing(t.bearing,p):p,m=\"pitch\"in t?+t.pitch:u,g=s.zoomScale(c-h),d=s.centerPoint.add(Point.convert(t.offset)),l=s.pointLocation(d),v=LngLat.convert(t.center||l);this._normalizeCenter(v);var b=s.project(l),y=s.project(v).sub(b),_=t.curve,z=Math.max(s.width,s.height),M=z/g,E=y.mag();if(\"minZoom\"in t){var T=util.clamp(Math.min(t.minZoom,h,c),s.minZoom,s.maxZoom),x=z/s.zoomScale(T-h);_=Math.sqrt(x/E*2)}var L=_*_,j=i(0),w=function(t){return n(j)/n(j+_*t)},P=function(t){return z*((n(j)*r(j+_*t)-o(j))/L)/E},Z=(i(1)-j)/_;if(Math.abs(E)<1e-6){if(Math.abs(z-M)<1e-6)return this.easeTo(t,e);var q=M180?-360:i<-180?360:0}},e.prototype._smoothOutEasing=function(t){var e=util.ease;if(this._prevEase){var i=this._prevEase,o=(Date.now()-i.start)/i.duration,n=i.easing(o+.01)-i.easing(o),r=.27/Math.sqrt(n*n+1e-4)*.01,a=Math.sqrt(.0729-r*r);e=util.bezier(r,a,.25,1)}return this._prevEase={start:(new Date).getTime(),duration:t,easing:e},e},e}(Evented);module.exports=Camera;\n},{\"../geo/lng_lat\":62,\"../geo/lng_lat_bounds\":63,\"../style-spec/util/interpolate\":123,\"../util/browser\":195,\"../util/evented\":203,\"../util/util\":215,\"point-geometry\":26}],176:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../../util/dom\"),util=_dereq_(\"../../util/util\"),AttributionControl=function(t){this.options=t,util.bindAll([\"_updateEditLink\",\"_updateData\",\"_updateCompact\"],this)};AttributionControl.prototype.getDefaultPosition=function(){return\"bottom-right\"},AttributionControl.prototype.onAdd=function(t){var i=this.options&&this.options.compact;return this._map=t,this._container=DOM.create(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-attrib\"),i&&this._container.classList.add(\"mapboxgl-compact\"),this._updateAttributions(),this._updateEditLink(),this._map.on(\"sourcedata\",this._updateData),this._map.on(\"moveend\",this._updateEditLink),void 0===i&&(this._map.on(\"resize\",this._updateCompact),this._updateCompact()),this._container},AttributionControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off(\"sourcedata\",this._updateData),this._map.off(\"moveend\",this._updateEditLink),this._map.off(\"resize\",this._updateCompact),this._map=void 0},AttributionControl.prototype._updateEditLink=function(){if(this._editLink||(this._editLink=this._container.querySelector(\".mapboxgl-improve-map\")),this._editLink){var t=this._map.getCenter();this._editLink.href=\"https://www.mapbox.com/map-feedback/#/\"+t.lng+\"/\"+t.lat+\"/\"+Math.round(this._map.getZoom()+1)}},AttributionControl.prototype._updateData=function(t){t&&\"metadata\"===t.sourceDataType&&(this._updateAttributions(),this._updateEditLink())},AttributionControl.prototype._updateAttributions=function(){if(this._map.style){var t=[],i=this._map.style.sourceCaches;for(var o in i){var n=i[o].getSource();n.attribution&&t.indexOf(n.attribution)<0&&t.push(n.attribution)}t.sort(function(t,i){return t.length-i.length}),t=t.filter(function(i,o){for(var n=o+1;n=0)return!1;return!0}),this._container.innerHTML=t.join(\" | \"),this._editLink=null}},AttributionControl.prototype._updateCompact=function(){var t=this._map.getCanvasContainer().offsetWidth<=640;this._container.classList[t?\"add\":\"remove\"](\"mapboxgl-compact\")},module.exports=AttributionControl;\n},{\"../../util/dom\":202,\"../../util/util\":215}],177:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../../util/dom\"),util=_dereq_(\"../../util/util\"),window=_dereq_(\"../../util/window\"),FullscreenControl=function(){this._fullscreen=!1,util.bindAll([\"_onClickFullscreen\",\"_changeIcon\"],this),\"onfullscreenchange\"in window.document?this._fullscreenchange=\"fullscreenchange\":\"onmozfullscreenchange\"in window.document?this._fullscreenchange=\"mozfullscreenchange\":\"onwebkitfullscreenchange\"in window.document?this._fullscreenchange=\"webkitfullscreenchange\":\"onmsfullscreenchange\"in window.document&&(this._fullscreenchange=\"MSFullscreenChange\")};FullscreenControl.prototype.onAdd=function(e){var n=\"mapboxgl-ctrl\",l=this._container=DOM.create(\"div\",n+\" mapboxgl-ctrl-group\"),t=this._fullscreenButton=DOM.create(\"button\",n+\"-icon \"+n+\"-fullscreen\",this._container);return t.setAttribute(\"aria-label\",\"Toggle fullscreen\"),t.type=\"button\",this._fullscreenButton.addEventListener(\"click\",this._onClickFullscreen),this._mapContainer=e.getContainer(),window.document.addEventListener(this._fullscreenchange,this._changeIcon),l},FullscreenControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},FullscreenControl.prototype._isFullscreen=function(){return this._fullscreen},FullscreenControl.prototype._changeIcon=function(){var e=window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement;if(e===this._mapContainer!==this._fullscreen){this._fullscreen=!this._fullscreen;var n=\"mapboxgl-ctrl\";this._fullscreenButton.classList.toggle(n+\"-shrink\"),this._fullscreenButton.classList.toggle(n+\"-fullscreen\")}},FullscreenControl.prototype._onClickFullscreen=function(){this._isFullscreen()?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._mapContainer.requestFullscreen?this._mapContainer.requestFullscreen():this._mapContainer.mozRequestFullScreen?this._mapContainer.mozRequestFullScreen():this._mapContainer.msRequestFullscreen?this._mapContainer.msRequestFullscreen():this._mapContainer.webkitRequestFullscreen&&this._mapContainer.webkitRequestFullscreen()},module.exports=FullscreenControl;\n},{\"../../util/dom\":202,\"../../util/util\":215,\"../../util/window\":197}],178:[function(_dereq_,module,exports){\n\"use strict\";function checkGeolocationSupport(t){void 0!==supportsGeolocation?t(supportsGeolocation):void 0!==window.navigator.permissions?window.navigator.permissions.query({name:\"geolocation\"}).then(function(o){supportsGeolocation=\"denied\"!==o.state,t(supportsGeolocation)}):(supportsGeolocation=!!window.navigator.geolocation,t(supportsGeolocation))}var Evented=_dereq_(\"../../util/evented\"),DOM=_dereq_(\"../../util/dom\"),window=_dereq_(\"../../util/window\"),util=_dereq_(\"../../util/util\"),defaultGeoPositionOptions={enableHighAccuracy:!1,timeout:6e3},className=\"mapboxgl-ctrl\",supportsGeolocation,GeolocateControl=function(t){function o(o){t.call(this),this.options=o||{},util.bindAll([\"_onSuccess\",\"_onError\",\"_finish\",\"_setupUI\"],this)}return t&&(o.__proto__=t),o.prototype=Object.create(t&&t.prototype),o.prototype.constructor=o,o.prototype.onAdd=function(t){return this._map=t,this._container=DOM.create(\"div\",className+\" \"+className+\"-group\"),checkGeolocationSupport(this._setupUI),this._container},o.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map=void 0},o.prototype._onSuccess=function(t){this._map.jumpTo({center:[t.coords.longitude,t.coords.latitude],zoom:17,bearing:0,pitch:0}),this.fire(\"geolocate\",t),this._finish()},o.prototype._onError=function(t){this.fire(\"error\",t),this._finish()},o.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},o.prototype._setupUI=function(t){t!==!1&&(this._container.addEventListener(\"contextmenu\",function(t){return t.preventDefault()}),this._geolocateButton=DOM.create(\"button\",className+\"-icon \"+className+\"-geolocate\",this._container),this._geolocateButton.type=\"button\",this._geolocateButton.setAttribute(\"aria-label\",\"Geolocate\"),this.options.watchPosition&&this._geolocateButton.setAttribute(\"aria-pressed\",!1),this._geolocateButton.addEventListener(\"click\",this._onClickGeolocate.bind(this)))},o.prototype._onClickGeolocate=function(){var t=util.extend(defaultGeoPositionOptions,this.options&&this.options.positionOptions||{});this.options.watchPosition?void 0!==this._geolocationWatchID?(this._geolocateButton.classList.remove(\"mapboxgl-watching\"),this._geolocateButton.setAttribute(\"aria-pressed\",!1),window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0):(this._geolocateButton.classList.add(\"mapboxgl-watching\"),this._geolocateButton.setAttribute(\"aria-pressed\",!0),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,t)):(window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,t),this._timeoutId=setTimeout(this._finish,1e4))},o}(Evented);module.exports=GeolocateControl;\n},{\"../../util/dom\":202,\"../../util/evented\":203,\"../../util/util\":215,\"../../util/window\":197}],179:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../../util/dom\"),util=_dereq_(\"../../util/util\"),LogoControl=function(){util.bindAll([\"_updateLogo\"],this)};LogoControl.prototype.onAdd=function(o){return this._map=o,this._container=DOM.create(\"div\",\"mapboxgl-ctrl\"),this._map.on(\"sourcedata\",this._updateLogo),this._updateLogo(),this._container},LogoControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off(\"sourcedata\",this._updateLogo)},LogoControl.prototype.getDefaultPosition=function(){return\"bottom-left\"},LogoControl.prototype._updateLogo=function(o){if(o&&\"metadata\"===o.sourceDataType)if(!this._container.childNodes.length&&this._logoRequired()){var t=DOM.create(\"a\",\"mapboxgl-ctrl-logo\");t.target=\"_blank\",t.href=\"https://www.mapbox.com/\",t.setAttribute(\"aria-label\",\"Mapbox logo\"),this._container.appendChild(t),this._map.off(\"data\",this._updateLogo)}else this._container.childNodes.length&&!this._logoRequired()&&this.onRemove()},LogoControl.prototype._logoRequired=function(){if(this._map.style){var o=this._map.style.sourceCaches;for(var t in o){var e=o[t].getSource();if(e.mapbox_logo)return!0}return!1}},module.exports=LogoControl;\n},{\"../../util/dom\":202,\"../../util/util\":215}],180:[function(_dereq_,module,exports){\n\"use strict\";function copyMouseEvent(t){return new window.MouseEvent(t.type,{button:2,buttons:2,bubbles:!0,cancelable:!0,detail:t.detail,view:t.view,screenX:t.screenX,screenY:t.screenY,clientX:t.clientX,clientY:t.clientY,movementX:t.movementX,movementY:t.movementY,ctrlKey:t.ctrlKey,shiftKey:t.shiftKey,altKey:t.altKey,metaKey:t.metaKey})}var DOM=_dereq_(\"../../util/dom\"),window=_dereq_(\"../../util/window\"),util=_dereq_(\"../../util/util\"),className=\"mapboxgl-ctrl\",NavigationControl=function(){util.bindAll([\"_rotateCompassArrow\"],this)};NavigationControl.prototype._rotateCompassArrow=function(){var t=\"rotate(\"+this._map.transform.angle*(180/Math.PI)+\"deg)\";this._compassArrow.style.transform=t},NavigationControl.prototype.onAdd=function(t){return this._map=t,this._container=DOM.create(\"div\",className+\" \"+className+\"-group\",t.getContainer()),this._container.addEventListener(\"contextmenu\",this._onContextMenu.bind(this)),this._zoomInButton=this._createButton(className+\"-icon \"+className+\"-zoom-in\",\"Zoom In\",t.zoomIn.bind(t)),this._zoomOutButton=this._createButton(className+\"-icon \"+className+\"-zoom-out\",\"Zoom Out\",t.zoomOut.bind(t)),this._compass=this._createButton(className+\"-icon \"+className+\"-compass\",\"Reset North\",t.resetNorth.bind(t)),this._compassArrow=DOM.create(\"span\",className+\"-compass-arrow\",this._compass),this._compass.addEventListener(\"mousedown\",this._onCompassDown.bind(this)),this._onCompassMove=this._onCompassMove.bind(this),this._onCompassUp=this._onCompassUp.bind(this),this._map.on(\"rotate\",this._rotateCompassArrow),this._rotateCompassArrow(),this._container},NavigationControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off(\"rotate\",this._rotateCompassArrow),this._map=void 0},NavigationControl.prototype._onContextMenu=function(t){t.preventDefault()},NavigationControl.prototype._onCompassDown=function(t){0===t.button&&(DOM.disableDrag(),window.document.addEventListener(\"mousemove\",this._onCompassMove),window.document.addEventListener(\"mouseup\",this._onCompassUp),this._map.getCanvasContainer().dispatchEvent(copyMouseEvent(t)),t.stopPropagation())},NavigationControl.prototype._onCompassMove=function(t){0===t.button&&(this._map.getCanvasContainer().dispatchEvent(copyMouseEvent(t)),t.stopPropagation())},NavigationControl.prototype._onCompassUp=function(t){0===t.button&&(window.document.removeEventListener(\"mousemove\",this._onCompassMove),window.document.removeEventListener(\"mouseup\",this._onCompassUp),DOM.enableDrag(),this._map.getCanvasContainer().dispatchEvent(copyMouseEvent(t)),t.stopPropagation())},NavigationControl.prototype._createButton=function(t,o,e){var n=DOM.create(\"button\",t,this._container);return n.type=\"button\",n.setAttribute(\"aria-label\",o),n.addEventListener(\"click\",function(){e()}),n},module.exports=NavigationControl;\n},{\"../../util/dom\":202,\"../../util/util\":215,\"../../util/window\":197}],181:[function(_dereq_,module,exports){\n\"use strict\";function updateScale(t,e,o){var n=o&&o.maxWidth||100,i=t._container.clientHeight/2,a=getDistance(t.unproject([0,i]),t.unproject([n,i]));if(o&&\"imperial\"===o.unit){var r=3.2808*a;if(r>5280){var l=r/5280;setScale(e,n,l,\"mi\")}else setScale(e,n,r,\"ft\")}else setScale(e,n,a,\"m\")}function setScale(t,e,o,n){var i=getRoundNum(o),a=i/o;\"m\"===n&&i>=1e3&&(i/=1e3,n=\"km\"),t.style.width=e*a+\"px\",t.innerHTML=i+n}function getDistance(t,e){var o=6371e3,n=Math.PI/180,i=t.lat*n,a=e.lat*n,r=Math.sin(i)*Math.sin(a)+Math.cos(i)*Math.cos(a)*Math.cos((e.lng-t.lng)*n),l=o*Math.acos(Math.min(r,1));return l}function getRoundNum(t){var e=Math.pow(10,(\"\"+Math.floor(t)).length-1),o=t/e;return o=o>=10?10:o>=5?5:o>=3?3:o>=2?2:1,e*o}var DOM=_dereq_(\"../../util/dom\"),util=_dereq_(\"../../util/util\"),ScaleControl=function(t){this.options=t,util.bindAll([\"_onMove\"],this)};ScaleControl.prototype.getDefaultPosition=function(){return\"bottom-left\"},ScaleControl.prototype._onMove=function(){updateScale(this._map,this._container,this.options)},ScaleControl.prototype.onAdd=function(t){return this._map=t,this._container=DOM.create(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-scale\",t.getContainer()),this._map.on(\"move\",this._onMove),this._onMove(),this._container},ScaleControl.prototype.onRemove=function(){this._container.parentNode.removeChild(this._container),this._map.off(\"move\",this._onMove),this._map=void 0},module.exports=ScaleControl;\n},{\"../../util/dom\":202,\"../../util/util\":215}],182:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../../util/dom\"),LngLatBounds=_dereq_(\"../../geo/lng_lat_bounds\"),util=_dereq_(\"../../util/util\"),window=_dereq_(\"../../util/window\"),BoxZoomHandler=function(o){this._map=o,this._el=o.getCanvasContainer(),this._container=o.getContainer(),util.bindAll([\"_onMouseDown\",\"_onMouseMove\",\"_onMouseUp\",\"_onKeyDown\"],this)};BoxZoomHandler.prototype.isEnabled=function(){return!!this._enabled},BoxZoomHandler.prototype.isActive=function(){return!!this._active},BoxZoomHandler.prototype.enable=function(){this.isEnabled()||(this._map.dragPan&&this._map.dragPan.disable(),this._el.addEventListener(\"mousedown\",this._onMouseDown,!1),this._map.dragPan&&this._map.dragPan.enable(),this._enabled=!0)},BoxZoomHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener(\"mousedown\",this._onMouseDown),this._enabled=!1)},BoxZoomHandler.prototype._onMouseDown=function(o){o.shiftKey&&0===o.button&&(window.document.addEventListener(\"mousemove\",this._onMouseMove,!1),window.document.addEventListener(\"keydown\",this._onKeyDown,!1),window.document.addEventListener(\"mouseup\",this._onMouseUp,!1),DOM.disableDrag(),this._startPos=DOM.mousePos(this._el,o),this._active=!0)},BoxZoomHandler.prototype._onMouseMove=function(o){var e=this._startPos,t=DOM.mousePos(this._el,o);this._box||(this._box=DOM.create(\"div\",\"mapboxgl-boxzoom\",this._container),this._container.classList.add(\"mapboxgl-crosshair\"),this._fireEvent(\"boxzoomstart\",o));var n=Math.min(e.x,t.x),i=Math.max(e.x,t.x),s=Math.min(e.y,t.y),a=Math.max(e.y,t.y);DOM.setTransform(this._box,\"translate(\"+n+\"px,\"+s+\"px)\"),this._box.style.width=i-n+\"px\",this._box.style.height=a-s+\"px\"},BoxZoomHandler.prototype._onMouseUp=function(o){if(0===o.button){var e=this._startPos,t=DOM.mousePos(this._el,o),n=(new LngLatBounds).extend(this._map.unproject(e)).extend(this._map.unproject(t));this._finish(),e.x===t.x&&e.y===t.y?this._fireEvent(\"boxzoomcancel\",o):this._map.fitBounds(n,{linear:!0}).fire(\"boxzoomend\",{originalEvent:o,boxZoomBounds:n})}},BoxZoomHandler.prototype._onKeyDown=function(o){27===o.keyCode&&(this._finish(),this._fireEvent(\"boxzoomcancel\",o))},BoxZoomHandler.prototype._finish=function(){this._active=!1,window.document.removeEventListener(\"mousemove\",this._onMouseMove,!1),window.document.removeEventListener(\"keydown\",this._onKeyDown,!1),window.document.removeEventListener(\"mouseup\",this._onMouseUp,!1),this._container.classList.remove(\"mapboxgl-crosshair\"),this._box&&(this._box.parentNode.removeChild(this._box),this._box=null),DOM.enableDrag()},BoxZoomHandler.prototype._fireEvent=function(o,e){return this._map.fire(o,{originalEvent:e})},module.exports=BoxZoomHandler;\n},{\"../../geo/lng_lat_bounds\":63,\"../../util/dom\":202,\"../../util/util\":215,\"../../util/window\":197}],183:[function(_dereq_,module,exports){\n\"use strict\";var DoubleClickZoomHandler=function(o){this._map=o,this._onDblClick=this._onDblClick.bind(this)};DoubleClickZoomHandler.prototype.isEnabled=function(){return!!this._enabled},DoubleClickZoomHandler.prototype.enable=function(){this.isEnabled()||(this._map.on(\"dblclick\",this._onDblClick),this._enabled=!0)},DoubleClickZoomHandler.prototype.disable=function(){this.isEnabled()&&(this._map.off(\"dblclick\",this._onDblClick),this._enabled=!1)},DoubleClickZoomHandler.prototype._onDblClick=function(o){this._map.zoomTo(this._map.getZoom()+(o.originalEvent.shiftKey?-1:1),{around:o.lngLat},o)},module.exports=DoubleClickZoomHandler;\n},{}],184:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../../util/dom\"),util=_dereq_(\"../../util/util\"),window=_dereq_(\"../../util/window\"),inertiaLinearity=.3,inertiaEasing=util.bezier(0,0,inertiaLinearity,1),inertiaMaxSpeed=1400,inertiaDeceleration=2500,DragPanHandler=function(t){this._map=t,this._el=t.getCanvasContainer(),util.bindAll([\"_onDown\",\"_onMove\",\"_onUp\",\"_onTouchEnd\",\"_onMouseUp\"],this)};DragPanHandler.prototype.isEnabled=function(){return!!this._enabled},DragPanHandler.prototype.isActive=function(){return!!this._active},DragPanHandler.prototype.enable=function(){this.isEnabled()||(this._el.classList.add(\"mapboxgl-touch-drag-pan\"),this._el.addEventListener(\"mousedown\",this._onDown),this._el.addEventListener(\"touchstart\",this._onDown),this._enabled=!0)},DragPanHandler.prototype.disable=function(){this.isEnabled()&&(this._el.classList.remove(\"mapboxgl-touch-drag-pan\"),this._el.removeEventListener(\"mousedown\",this._onDown),this._el.removeEventListener(\"touchstart\",this._onDown),this._enabled=!1)},DragPanHandler.prototype._onDown=function(t){this._ignoreEvent(t)||this.isActive()||(t.touches?(window.document.addEventListener(\"touchmove\",this._onMove),window.document.addEventListener(\"touchend\",this._onTouchEnd)):(window.document.addEventListener(\"mousemove\",this._onMove),window.document.addEventListener(\"mouseup\",this._onMouseUp)),window.addEventListener(\"blur\",this._onMouseUp),this._active=!1,this._startPos=this._pos=DOM.mousePos(this._el,t),this._inertia=[[Date.now(),this._pos]])},DragPanHandler.prototype._onMove=function(t){if(!this._ignoreEvent(t)){this.isActive()||(this._active=!0,this._map.moving=!0,this._fireEvent(\"dragstart\",t),this._fireEvent(\"movestart\",t));var e=DOM.mousePos(this._el,t),n=this._map;n.stop(),this._drainInertiaBuffer(),this._inertia.push([Date.now(),e]),n.transform.setLocationAtPoint(n.transform.pointLocation(this._pos),e),this._fireEvent(\"drag\",t),this._fireEvent(\"move\",t),this._pos=e,t.preventDefault()}},DragPanHandler.prototype._onUp=function(t){var e=this;if(this.isActive()){this._active=!1,this._fireEvent(\"dragend\",t),this._drainInertiaBuffer();var n=function(){e._map.moving=!1,e._fireEvent(\"moveend\",t)},i=this._inertia;if(i.length<2)return void n();var o=i[i.length-1],r=i[0],a=o[1].sub(r[1]),s=(o[0]-r[0])/1e3;if(0===s||o[1].equals(r[1]))return void n();var u=a.mult(inertiaLinearity/s),d=u.mag();d>inertiaMaxSpeed&&(d=inertiaMaxSpeed,u._unit()._mult(d));var h=d/(inertiaDeceleration*inertiaLinearity),v=u.mult(-h/2);this._map.panBy(v,{duration:1e3*h,easing:inertiaEasing,noMoveStart:!0},{originalEvent:t})}},DragPanHandler.prototype._onMouseUp=function(t){this._ignoreEvent(t)||(this._onUp(t),window.document.removeEventListener(\"mousemove\",this._onMove),window.document.removeEventListener(\"mouseup\",this._onMouseUp),window.removeEventListener(\"blur\",this._onMouseUp))},DragPanHandler.prototype._onTouchEnd=function(t){this._ignoreEvent(t)||(this._onUp(t),window.document.removeEventListener(\"touchmove\",this._onMove),window.document.removeEventListener(\"touchend\",this._onTouchEnd))},DragPanHandler.prototype._fireEvent=function(t,e){return this._map.fire(t,{originalEvent:e})},DragPanHandler.prototype._ignoreEvent=function(t){var e=this._map;if(e.boxZoom&&e.boxZoom.isActive())return!0;if(e.dragRotate&&e.dragRotate.isActive())return!0;if(t.touches)return t.touches.length>1;if(t.ctrlKey)return!0;var n=1,i=0;return\"mousemove\"===t.type?t.buttons&0===n:t.button&&t.button!==i},DragPanHandler.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now(),n=160;t.length>0&&e-t[0][0]>n;)t.shift()},module.exports=DragPanHandler;\n},{\"../../util/dom\":202,\"../../util/util\":215,\"../../util/window\":197}],185:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../../util/dom\"),util=_dereq_(\"../../util/util\"),window=_dereq_(\"../../util/window\"),inertiaLinearity=.25,inertiaEasing=util.bezier(0,0,inertiaLinearity,1),inertiaMaxSpeed=180,inertiaDeceleration=720,DragRotateHandler=function(t,e){this._map=t,this._el=t.getCanvasContainer(),this._bearingSnap=e.bearingSnap,this._pitchWithRotate=e.pitchWithRotate!==!1,util.bindAll([\"_onDown\",\"_onMove\",\"_onUp\"],this)};DragRotateHandler.prototype.isEnabled=function(){return!!this._enabled},DragRotateHandler.prototype.isActive=function(){return!!this._active},DragRotateHandler.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener(\"mousedown\",this._onDown),this._enabled=!0)},DragRotateHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener(\"mousedown\",this._onDown),this._enabled=!1)},DragRotateHandler.prototype._onDown=function(t){this._ignoreEvent(t)||this.isActive()||(window.document.addEventListener(\"mousemove\",this._onMove),window.document.addEventListener(\"mouseup\",this._onUp),window.addEventListener(\"blur\",this._onUp),this._active=!1,this._inertia=[[Date.now(),this._map.getBearing()]],this._startPos=this._pos=DOM.mousePos(this._el,t),this._center=this._map.transform.centerPoint,t.preventDefault())},DragRotateHandler.prototype._onMove=function(t){if(!this._ignoreEvent(t)){this.isActive()||(this._active=!0,this._map.moving=!0,this._fireEvent(\"rotatestart\",t),this._fireEvent(\"movestart\",t),this._pitchWithRotate&&this._fireEvent(\"pitchstart\",t));var e=this._map;e.stop();var i=this._pos,n=DOM.mousePos(this._el,t),r=.8*(i.x-n.x),a=(i.y-n.y)*-.5,o=e.getBearing()-r,s=e.getPitch()-a,h=this._inertia,_=h[h.length-1];this._drainInertiaBuffer(),h.push([Date.now(),e._normalizeBearing(o,_[1])]),e.transform.bearing=o,this._pitchWithRotate&&(this._fireEvent(\"pitch\",t),e.transform.pitch=s),this._fireEvent(\"rotate\",t),this._fireEvent(\"move\",t),this._pos=n}},DragRotateHandler.prototype._onUp=function(t){var e=this;if(!this._ignoreEvent(t)&&(window.document.removeEventListener(\"mousemove\",this._onMove),window.document.removeEventListener(\"mouseup\",this._onUp),window.removeEventListener(\"blur\",this._onUp),this.isActive())){this._active=!1,this._fireEvent(\"rotateend\",t),this._drainInertiaBuffer();var i=this._map,n=i.getBearing(),r=this._inertia,a=function(){Math.abs(n)inertiaMaxSpeed&&(u=inertiaMaxSpeed);var l=u/(inertiaDeceleration*inertiaLinearity),g=p*u*(l/2);_+=g,Math.abs(i._normalizeBearing(_,0))1;var i=t.ctrlKey?1:2,n=t.ctrlKey?0:2,r=t.button;return\"undefined\"!=typeof InstallTrigger&&2===t.button&&t.ctrlKey&&window.navigator.platform.toUpperCase().indexOf(\"MAC\")>=0&&(r=0),\"mousemove\"===t.type?t.buttons&0===i:!this.isActive()&&r!==n},DragRotateHandler.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now(),i=160;t.length>0&&e-t[0][0]>i;)t.shift()},module.exports=DragRotateHandler;\n},{\"../../util/dom\":202,\"../../util/util\":215,\"../../util/window\":197}],186:[function(_dereq_,module,exports){\n\"use strict\";function easeOut(e){return e*(2-e)}var panStep=100,bearingStep=15,pitchStep=10,KeyboardHandler=function(e){this._map=e,this._el=e.getCanvasContainer(),this._onKeyDown=this._onKeyDown.bind(this)};KeyboardHandler.prototype.isEnabled=function(){return!!this._enabled},KeyboardHandler.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener(\"keydown\",this._onKeyDown,!1),this._enabled=!0)},KeyboardHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener(\"keydown\",this._onKeyDown),this._enabled=!1)},KeyboardHandler.prototype._onKeyDown=function(e){if(!(e.altKey||e.ctrlKey||e.metaKey)){var t=0,a=0,n=0,r=0,i=0;switch(e.keyCode){case 61:case 107:case 171:case 187:t=1;break;case 189:case 109:case 173:t=-1;break;case 37:e.shiftKey?a=-1:(e.preventDefault(),r=-1);break;case 39:e.shiftKey?a=1:(e.preventDefault(),r=1);break;case 38:e.shiftKey?n=1:(e.preventDefault(),i=-1);break;case 40:e.shiftKey?n=-1:(i=1,e.preventDefault());break;default:return}var s=this._map,o=s.getZoom(),d={duration:300,delayEndEvents:500,easing:easeOut,zoom:t?Math.round(o)+t*(e.shiftKey?2:1):o,bearing:s.getBearing()+a*bearingStep,pitch:s.getPitch()+n*pitchStep,offset:[-r*panStep,-i*panStep],center:s.getCenter()};s.easeTo(d,{originalEvent:e})}},module.exports=KeyboardHandler;\n},{}],187:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../../util/dom\"),util=_dereq_(\"../../util/util\"),browser=_dereq_(\"../../util/browser\"),window=_dereq_(\"../../util/window\"),ua=window.navigator.userAgent.toLowerCase(),firefox=ua.indexOf(\"firefox\")!==-1,safari=ua.indexOf(\"safari\")!==-1&&ua.indexOf(\"chrom\")===-1,ScrollZoomHandler=function(e){this._map=e,this._el=e.getCanvasContainer(),util.bindAll([\"_onWheel\",\"_onTimeout\"],this)};ScrollZoomHandler.prototype.isEnabled=function(){return!!this._enabled},ScrollZoomHandler.prototype.enable=function(e){this.isEnabled()||(this._el.addEventListener(\"wheel\",this._onWheel,!1),this._el.addEventListener(\"mousewheel\",this._onWheel,!1),this._enabled=!0,this._aroundCenter=e&&\"center\"===e.around)},ScrollZoomHandler.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener(\"wheel\",this._onWheel),this._el.removeEventListener(\"mousewheel\",this._onWheel),this._enabled=!1)},ScrollZoomHandler.prototype._onWheel=function(e){var t;\"wheel\"===e.type?(t=e.deltaY,firefox&&e.deltaMode===window.WheelEvent.DOM_DELTA_PIXEL&&(t/=browser.devicePixelRatio),e.deltaMode===window.WheelEvent.DOM_DELTA_LINE&&(t*=40)):\"mousewheel\"===e.type&&(t=-e.wheelDeltaY,safari&&(t/=3));var o=browser.now(),i=o-(this._time||0);this._pos=DOM.mousePos(this._el,e),this._time=o,0!==t&&t%4.000244140625===0?this._type=\"wheel\":0!==t&&Math.abs(t)<4?this._type=\"trackpad\":i>400?(this._type=null,this._lastValue=t,this._timeout=setTimeout(this._onTimeout,40)):this._type||(this._type=Math.abs(i*t)<200?\"trackpad\":\"wheel\",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,t+=this._lastValue)),e.shiftKey&&t&&(t/=4),this._type&&this._zoom(-t,e),e.preventDefault()},ScrollZoomHandler.prototype._onTimeout=function(){this._type=\"wheel\",this._zoom(-this._lastValue)},ScrollZoomHandler.prototype._zoom=function(e,t){if(0!==e){var o=this._map,i=2/(1+Math.exp(-Math.abs(e/100)));e<0&&0!==i&&(i=1/i);var l=o.ease?o.ease.to:o.transform.scale,s=o.transform.scaleZoom(l*i);o.zoomTo(s,{duration:\"wheel\"===this._type?200:0,around:this._aroundCenter?o.getCenter():o.unproject(this._pos),delayEndEvents:200,smoothEasing:!0},{originalEvent:t})}},module.exports=ScrollZoomHandler;\n},{\"../../util/browser\":195,\"../../util/dom\":202,\"../../util/util\":215,\"../../util/window\":197}],188:[function(_dereq_,module,exports){\n\"use strict\";var DOM=_dereq_(\"../../util/dom\"),util=_dereq_(\"../../util/util\"),window=_dereq_(\"../../util/window\"),inertiaLinearity=.15,inertiaEasing=util.bezier(0,0,inertiaLinearity,1),inertiaDeceleration=12,inertiaMaxSpeed=2.5,significantScaleThreshold=.15,significantRotateThreshold=4,TouchZoomRotateHandler=function(t){this._map=t,this._el=t.getCanvasContainer(),util.bindAll([\"_onStart\",\"_onMove\",\"_onEnd\"],this)};TouchZoomRotateHandler.prototype.isEnabled=function(){return!!this._enabled},TouchZoomRotateHandler.prototype.enable=function(t){this.isEnabled()||(this._el.classList.add(\"mapboxgl-touch-zoom-rotate\"),this._el.addEventListener(\"touchstart\",this._onStart,!1),this._enabled=!0,this._aroundCenter=t&&\"center\"===t.around)},TouchZoomRotateHandler.prototype.disable=function(){this.isEnabled()&&(this._el.classList.remove(\"mapboxgl-touch-zoom-rotate\"),this._el.removeEventListener(\"touchstart\",this._onStart),this._enabled=!1)},TouchZoomRotateHandler.prototype.disableRotation=function(){this._rotationDisabled=!0},TouchZoomRotateHandler.prototype.enableRotation=function(){this._rotationDisabled=!1},TouchZoomRotateHandler.prototype._onStart=function(t){if(2===t.touches.length){var e=DOM.mousePos(this._el,t.touches[0]),o=DOM.mousePos(this._el,t.touches[1]);this._startVec=e.sub(o),this._startScale=this._map.transform.scale,this._startBearing=this._map.transform.bearing,this._gestureIntent=void 0,this._inertia=[],window.document.addEventListener(\"touchmove\",this._onMove,!1),window.document.addEventListener(\"touchend\",this._onEnd,!1)}},TouchZoomRotateHandler.prototype._onMove=function(t){if(2===t.touches.length){var e=DOM.mousePos(this._el,t.touches[0]),o=DOM.mousePos(this._el,t.touches[1]),i=e.add(o).div(2),n=e.sub(o),a=n.mag()/this._startVec.mag(),r=this._rotationDisabled?0:180*n.angleWith(this._startVec)/Math.PI,s=this._map;if(this._gestureIntent){var h={duration:0,around:s.unproject(i)};\"rotate\"===this._gestureIntent&&(h.bearing=this._startBearing+r),\"zoom\"!==this._gestureIntent&&\"rotate\"!==this._gestureIntent||(h.zoom=s.transform.scaleZoom(this._startScale*a)),s.stop(),this._drainInertiaBuffer(),this._inertia.push([Date.now(),a,i]),s.easeTo(h,{originalEvent:t})}else{var u=Math.abs(1-a)>significantScaleThreshold,l=Math.abs(r)>significantRotateThreshold;l?this._gestureIntent=\"rotate\":u&&(this._gestureIntent=\"zoom\"),this._gestureIntent&&(this._startVec=n,this._startScale=s.transform.scale,this._startBearing=s.transform.bearing)}t.preventDefault()}},TouchZoomRotateHandler.prototype._onEnd=function(t){window.document.removeEventListener(\"touchmove\",this._onMove),window.document.removeEventListener(\"touchend\",this._onEnd),this._drainInertiaBuffer();var e=this._inertia,o=this._map;if(e.length<2)return void o.snapToNorth({},{originalEvent:t});var i=e[e.length-1],n=e[0],a=o.transform.scaleZoom(this._startScale*i[1]),r=o.transform.scaleZoom(this._startScale*n[1]),s=a-r,h=(i[0]-n[0])/1e3,u=i[2];if(0===h||a===r)return void o.snapToNorth({},{originalEvent:t});var l=s*inertiaLinearity/h;Math.abs(l)>inertiaMaxSpeed&&(l=l>0?inertiaMaxSpeed:-inertiaMaxSpeed);var d=1e3*Math.abs(l/(inertiaDeceleration*inertiaLinearity)),c=a+l*d/2e3;c<0&&(c=0),o.easeTo({zoom:c,duration:d,easing:inertiaEasing,around:this._aroundCenter?o.getCenter():o.unproject(u)},{originalEvent:t})},TouchZoomRotateHandler.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,e=Date.now(),o=160;t.length>2&&e-t[0][0]>o;)t.shift()},module.exports=TouchZoomRotateHandler;\n},{\"../../util/dom\":202,\"../../util/util\":215,\"../../util/window\":197}],189:[function(_dereq_,module,exports){\n\"use strict\";var util=_dereq_(\"../util/util\"),window=_dereq_(\"../util/window\"),Hash=function(){util.bindAll([\"_onHashChange\",\"_updateHash\"],this)};Hash.prototype.addTo=function(t){return this._map=t,window.addEventListener(\"hashchange\",this._onHashChange,!1),this._map.on(\"moveend\",this._updateHash),this},Hash.prototype.remove=function(){return window.removeEventListener(\"hashchange\",this._onHashChange,!1),this._map.off(\"moveend\",this._updateHash),delete this._map,this},Hash.prototype._onHashChange=function(){var t=window.location.hash.replace(\"#\",\"\").split(\"/\");return t.length>=3&&(this._map.jumpTo({center:[+t[2],+t[1]],zoom:+t[0],bearing:+(t[3]||0),pitch:+(t[4]||0)}),!0)},Hash.prototype._updateHash=function(){var t=this._map.getCenter(),e=this._map.getZoom(),a=this._map.getBearing(),h=this._map.getPitch(),i=Math.max(0,Math.ceil(Math.log(e)/Math.LN2)),n=\"#\"+Math.round(100*e)/100+\"/\"+t.lat.toFixed(i)+\"/\"+t.lng.toFixed(i);(a||h)&&(n+=\"/\"+Math.round(10*a)/10),h&&(n+=\"/\"+Math.round(h)),window.history.replaceState(\"\",\"\",n)},module.exports=Hash;\n},{\"../util/util\":215,\"../util/window\":197}],190:[function(_dereq_,module,exports){\n\"use strict\";function removeNode(t){t.parentNode&&t.parentNode.removeChild(t)}var util=_dereq_(\"../util/util\"),browser=_dereq_(\"../util/browser\"),window=_dereq_(\"../util/window\"),DOM=_dereq_(\"../util/dom\"),ajax=_dereq_(\"../util/ajax\"),Style=_dereq_(\"../style/style\"),AnimationLoop=_dereq_(\"../style/animation_loop\"),Painter=_dereq_(\"../render/painter\"),Transform=_dereq_(\"../geo/transform\"),Hash=_dereq_(\"./hash\"),bindHandlers=_dereq_(\"./bind_handlers\"),Camera=_dereq_(\"./camera\"),LngLat=_dereq_(\"../geo/lng_lat\"),LngLatBounds=_dereq_(\"../geo/lng_lat_bounds\"),Point=_dereq_(\"point-geometry\"),AttributionControl=_dereq_(\"./control/attribution_control\"),LogoControl=_dereq_(\"./control/logo_control\"),isSupported=_dereq_(\"mapbox-gl-supported\"),defaultMinZoom=0,defaultMaxZoom=22,defaultOptions={center:[0,0],zoom:0,bearing:0,pitch:0,minZoom:defaultMinZoom,maxZoom:defaultMaxZoom,interactive:!0,scrollZoom:!0,boxZoom:!0,dragRotate:!0,dragPan:!0,keyboard:!0,doubleClickZoom:!0,touchZoomRotate:!0,bearingSnap:7,hash:!1,attributionControl:!0,failIfMajorPerformanceCaveat:!1,preserveDrawingBuffer:!1,trackResize:!0,renderWorldCopies:!0,refreshExpiredTiles:!0},Map=function(t){function e(e){var o=this;if(e=util.extend({},defaultOptions,e),null!=e.minZoom&&null!=e.maxZoom&&e.minZoom>e.maxZoom)throw new Error(\"maxZoom must be greater than minZoom\");var i=new Transform(e.minZoom,e.maxZoom,e.renderWorldCopies);if(t.call(this,i,e),this._interactive=e.interactive,this._failIfMajorPerformanceCaveat=e.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=e.preserveDrawingBuffer,this._trackResize=e.trackResize,this._bearingSnap=e.bearingSnap,this._refreshExpiredTiles=e.refreshExpiredTiles,\"string\"==typeof e.container){if(this._container=window.document.getElementById(e.container),!this._container)throw new Error(\"Container '\"+e.container+\"' not found.\")}else this._container=e.container;this.animationLoop=new AnimationLoop,e.maxBounds&&this.setMaxBounds(e.maxBounds),util.bindAll([\"_onWindowOnline\",\"_onWindowResize\",\"_contextLost\",\"_contextRestored\",\"_update\",\"_render\",\"_onData\",\"_onDataLoading\"],this),this._setupContainer(),this._setupPainter(),this.on(\"move\",this._update.bind(this,!1)),this.on(\"zoom\",this._update.bind(this,!0)),this.on(\"moveend\",function(){o.animationLoop.set(300),o._rerender()}),\"undefined\"!=typeof window&&(window.addEventListener(\"online\",this._onWindowOnline,!1),window.addEventListener(\"resize\",this._onWindowResize,!1)),bindHandlers(this,e),this._hash=e.hash&&(new Hash).addTo(this),this._hash&&this._hash._onHashChange()||this.jumpTo({center:e.center,zoom:e.zoom,bearing:e.bearing,pitch:e.pitch}),this._classes=[],this.resize(),e.classes&&this.setClasses(e.classes),e.style&&this.setStyle(e.style),e.attributionControl&&this.addControl(new AttributionControl),this.addControl(new LogoControl,e.logoPosition),this.on(\"style.load\",function(){this.transform.unmodified&&this.jumpTo(this.style.stylesheet),this.style.update(this._classes,{transition:!1})}),this.on(\"data\",this._onData),this.on(\"dataloading\",this._onDataLoading)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var o={showTileBoundaries:{},showCollisionBoxes:{},showOverdrawInspector:{},repaint:{},vertices:{}};return e.prototype.addControl=function(t,e){void 0===e&&t.getDefaultPosition&&(e=t.getDefaultPosition()),void 0===e&&(e=\"top-right\");var o=t.onAdd(this),i=this._controlPositions[e];return e.indexOf(\"bottom\")!==-1?i.insertBefore(o,i.firstChild):i.appendChild(o),this},e.prototype.removeControl=function(t){return t.onRemove(this),this},e.prototype.addClass=function(t,e){return util.warnOnce(\"Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.\"),this._classes.indexOf(t)>=0||\"\"===t?this:(this._classes.push(t),this._classOptions=e,this.style&&this.style.updateClasses(),this._update(!0))},e.prototype.removeClass=function(t,e){util.warnOnce(\"Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.\");var o=this._classes.indexOf(t);return o<0||\"\"===t?this:(this._classes.splice(o,1),this._classOptions=e,this.style&&this.style.updateClasses(),this._update(!0))},e.prototype.setClasses=function(t,e){util.warnOnce(\"Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.\");for(var o={},i=0;i=0},e.prototype.getClasses=function(){return util.warnOnce(\"Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.\"),this._classes},e.prototype.resize=function(){var t=this._containerDimensions(),e=t[0],o=t[1];return this._resizeCanvas(e,o),this.transform.resize(e,o),this.painter.resize(e,o),this.fire(\"movestart\").fire(\"move\").fire(\"resize\").fire(\"moveend\")},e.prototype.getBounds=function(){var t=new LngLatBounds(this.transform.pointLocation(new Point(0,this.transform.height)),this.transform.pointLocation(new Point(this.transform.width,0)));return(this.transform.angle||this.transform.pitch)&&(t.extend(this.transform.pointLocation(new Point(this.transform.size.x,0))),t.extend(this.transform.pointLocation(new Point(0,this.transform.size.y)))),t},e.prototype.setMaxBounds=function(t){if(t){var e=LngLatBounds.convert(t);this.transform.lngRange=[e.getWest(),e.getEast()],this.transform.latRange=[e.getSouth(),e.getNorth()],this.transform._constrain(),this._update()}else null!==t&&void 0!==t||(this.transform.lngRange=[],this.transform.latRange=[],this._update());return this},e.prototype.setMinZoom=function(t){if(t=null===t||void 0===t?defaultMinZoom:t,t>=defaultMinZoom&&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\")},e.prototype.getMaxZoom=function(){return this.transform.maxZoom},e.prototype.project=function(t){return this.transform.locationPoint(LngLat.convert(t))},e.prototype.unproject=function(t){return this.transform.pointLocation(Point.convert(t))},e.prototype.on=function(e,o,i){var r=this;if(void 0===i)return t.prototype.on.call(this,e,o);var s=function(){if(\"mouseenter\"===e||\"mouseover\"===e){var t=!1,s=function(s){var n=r.queryRenderedFeatures(s.point,{layers:[o]});n.length?t||(t=!0,i.call(r,util.extend({features:n},s,{type:e}))):t=!1},n=function(){t=!1};return{layer:o,listener:i,delegates:{mousemove:s,mouseout:n}}}if(\"mouseleave\"===e||\"mouseout\"===e){var a=!1,h=function(t){var s=r.queryRenderedFeatures(t.point,{layers:[o]});s.length?a=!0:a&&(a=!1,i.call(r,util.extend({},t,{type:e})))},l=function(t){a&&(a=!1,i.call(r,util.extend({},t,{type:e})))};return{layer:o,listener:i,delegates:{mousemove:h,mouseout:l}}}var u=function(t){var e=r.queryRenderedFeatures(t.point,{layers:[o]});e.length&&i.call(r,util.extend({features:e},t))};return{layer:o,listener:i,delegates:(d={},d[e]=u,d)};var d}();this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[e]=this._delegatedListeners[e]||[],this._delegatedListeners[e].push(s);for(var n in s.delegates)r.on(n,s.delegates[n]);return this},e.prototype.off=function(e,o,i){var r=this;if(void 0===i)return t.prototype.off.call(this,e,o);if(this._delegatedListeners&&this._delegatedListeners[e])for(var s=this._delegatedListeners[e],n=0;nthis._map.transform.height-n?[\"bottom\"]:[],this._pos.xthis._map.transform.width-e/2&&t.push(\"right\"),t=0===t.length?\"bottom\":t.join(\"-\")}var i=this._pos.add(o[t]).round(),r={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%)\"},s=this._container.classList;for(var p in r)s.remove(\"mapboxgl-popup-anchor-\"+p);s.add(\"mapboxgl-popup-anchor-\"+t),DOM.setTransform(this._container,r[t]+\" translate(\"+i.x+\"px,\"+i.y+\"px)\")}},o.prototype._onClickClose=function(){this.remove()},o}(Evented);module.exports=Popup;\n},{\"../geo/lng_lat\":62,\"../util/dom\":202,\"../util/evented\":203,\"../util/smart_wrap\":212,\"../util/util\":215,\"../util/window\":197,\"point-geometry\":26}],193:[function(_dereq_,module,exports){\n\"use strict\";var Actor=function(t,e,a){this.target=t,this.parent=e,this.mapId=a,this.callbacks={},this.callbackID=0,this.receive=this.receive.bind(this),this.target.addEventListener(\"message\",this.receive,!1)};Actor.prototype.send=function(t,e,a,r,s){var i=a?this.mapId+\":\"+this.callbackID++:null;a&&(this.callbacks[i]=a),this.target.postMessage({targetMapId:s,sourceMapId:this.mapId,type:t,id:String(i),data:e},r)},Actor.prototype.receive=function(t){var e,a=this,r=t.data,s=r.id;if(!r.targetMapId||this.mapId===r.targetMapId){var i=function(t,e,r){a.target.postMessage({sourceMapId:a.mapId,type:\"\",id:String(s),error:t?String(t):null,data:e},r)};if(\"\"===r.type)e=this.callbacks[r.id],delete this.callbacks[r.id],e&&e(r.error||null,r.data);else if(\"undefined\"!=typeof r.id&&this.parent[r.type])this.parent[r.type](r.sourceMapId,r.data,i);else if(\"undefined\"!=typeof r.id&&this.parent.getWorkerSource){var p=r.type.split(\".\"),d=this.parent.getWorkerSource(r.sourceMapId,p[0]);d[p[1]](r.data,i)}else this.parent[r.type](r.data)}},Actor.prototype.remove=function(){this.target.removeEventListener(\"message\",this.receive,!1)},module.exports=Actor;\n},{}],194:[function(_dereq_,module,exports){\n\"use strict\";function sameOrigin(e){var t=window.document.createElement(\"a\");return t.href=e,t.protocol===window.document.location.protocol&&t.host===window.document.location.host}var window=_dereq_(\"./window\"),AJAXError=function(e){function t(t,r){e.call(this,t),this.status=r}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(Error);exports.getJSON=function(e,t){var r=new window.XMLHttpRequest;return r.open(\"GET\",e,!0),r.setRequestHeader(\"Accept\",\"application/json\"),r.onerror=function(e){t(e)},r.onload=function(){if(r.status>=200&&r.status<300&&r.response){var e;try{e=JSON.parse(r.response)}catch(e){return t(e)}t(null,e)}else t(new AJAXError(r.statusText,r.status))},r.send(),r},exports.getArrayBuffer=function(e,t){var r=new window.XMLHttpRequest;return r.open(\"GET\",e,!0),r.responseType=\"arraybuffer\",r.onerror=function(e){t(e)},r.onload=function(){return 0===r.response.byteLength&&200===r.status?t(new Error(\"http status 200 returned without content.\")):void(r.status>=200&&r.status<300&&r.response?t(null,{data:r.response,cacheControl:r.getResponseHeader(\"Cache-Control\"),expires:r.getResponseHeader(\"Expires\")}):t(new AJAXError(r.statusText,r.status)))},r.send(),r};var transparentPngUrl=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=\";exports.getImage=function(e,t){return exports.getArrayBuffer(e,function(e,r){if(e)return t(e);var n=new window.Image,o=window.URL||window.webkitURL;n.onload=function(){t(null,n),o.revokeObjectURL(n.src)};var s=new window.Blob([new Uint8Array(r.data)],{type:\"image/png\"});n.cacheControl=r.cacheControl,n.expires=r.expires,n.src=r.data.byteLength?o.createObjectURL(s):transparentPngUrl})},exports.getVideo=function(e,t){var r=window.document.createElement(\"video\");r.onloadstart=function(){t(null,r)};for(var n=0;n=a+n?e.call(t,1):(e.call(t,(i-a)/n),exports.frame(o)))}if(!n)return e.call(t,1),null;var r=!1,a=module.exports.now();return exports.frame(o),function(){r=!0}},exports.getImageData=function(e){var n=window.document.createElement(\"canvas\"),t=n.getContext(\"2d\");return n.width=e.width,n.height=e.height,t.drawImage(e,0,0,e.width,e.height),t.getImageData(0,0,e.width,e.height).data},exports.supported=_dereq_(\"mapbox-gl-supported\"),exports.hardwareConcurrency=window.navigator.hardwareConcurrency||4,Object.defineProperty(exports,\"devicePixelRatio\",{get:function(){return window.devicePixelRatio}}),exports.supportsWebp=!1;var webpImgTest=window.document.createElement(\"img\");webpImgTest.onload=function(){exports.supportsWebp=!0},webpImgTest.src=\"data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=\";\n},{\"./window\":197,\"mapbox-gl-supported\":22}],196:[function(_dereq_,module,exports){\n\"use strict\";var WebWorkify=_dereq_(\"webworkify\"),window=_dereq_(\"../window\"),workerURL=window.URL.createObjectURL(new WebWorkify(_dereq_(\"../../source/worker\"),{bare:!0}));module.exports=function(){return new window.Worker(workerURL)};\n},{\"../../source/worker\":100,\"../window\":197,\"webworkify\":41}],197:[function(_dereq_,module,exports){\n\"use strict\";module.exports=self;\n},{}],198:[function(_dereq_,module,exports){\n\"use strict\";function compareAreas(e,r){return r.area-e.area}var quickselect=_dereq_(\"quickselect\"),calculateSignedArea=_dereq_(\"./util\").calculateSignedArea;module.exports=function(e,r){var a=e.length;if(a<=1)return[e];for(var t,u,c=[],i=0;i1)for(var n=0;n0||this._oneTimeListeners&&this._oneTimeListeners[e]&&this._oneTimeListeners[e].length>0||this._eventedParent&&this._eventedParent.listens(e)},Evented.prototype.setEventedParent=function(e,t){return this._eventedParent=e,this._eventedParentData=t,this},module.exports=Evented;\n},{\"./util\":215}],204:[function(_dereq_,module,exports){\n\"use strict\";function compareMax(e,t){return t.max-e.max}function Cell(e,t,n,r){this.p=new Point(e,t),this.h=n,this.d=pointToPolygonDist(this.p,r),this.max=this.d+this.h*Math.SQRT2}function pointToPolygonDist(e,t){for(var n=!1,r=1/0,o=0;oe.y!=h.y>e.y&&e.x<(h.x-a.x)*(e.y-a.y)/(h.y-a.y)+a.x&&(n=!n),r=Math.min(r,distToSegmentSquared(e,a,h))}return(n?1:-1)*Math.sqrt(r)}function getCentroidCell(e){for(var t=0,n=0,r=0,o=e[0],i=0,l=o.length,u=l-1;ii)&&(i=a.x),(!s||a.y>l)&&(l=a.y)}var h=i-r,p=l-o,y=Math.min(h,p),x=y/2,d=new Queue(null,compareMax);if(0===y)return[r,o];for(var g=r;gm.d||!m.d)&&(m=v,n&&console.log(\"found best %d after %d probes\",Math.round(1e4*v.d)/1e4,c)),v.max-m.d<=t||(x=v.h/2,d.push(new Cell(v.p.x-x,v.p.y-x,x,e)),d.push(new Cell(v.p.x+x,v.p.y-x,x,e)),d.push(new Cell(v.p.x-x,v.p.y+x,x,e)),d.push(new Cell(v.p.x+x,v.p.y+x,x,e)),c+=4)}return n&&(console.log(\"num probes: \"+c),console.log(\"best distance: \"+m.d)),m.p};\n},{\"./intersection_tests\":207,\"point-geometry\":26,\"tinyqueue\":30}],205:[function(_dereq_,module,exports){\n\"use strict\";var WorkerPool=_dereq_(\"./worker_pool\"),globalWorkerPool;module.exports=function(){return globalWorkerPool||(globalWorkerPool=new WorkerPool),globalWorkerPool};\n},{\"./worker_pool\":218}],206:[function(_dereq_,module,exports){\n\"use strict\";function Glyphs(a,e){this.stacks=a.readFields(readFontstacks,[],e)}function readFontstacks(a,e,r){if(1===a){var t=r.readMessage(readFontstack,{glyphs:{}});e.push(t)}}function readFontstack(a,e,r){if(1===a)e.name=r.readString();else if(2===a)e.range=r.readString();else if(3===a){var t=r.readMessage(readGlyph,{});e.glyphs[t.id]=t}}function readGlyph(a,e,r){1===a?e.id=r.readVarint():2===a?e.bitmap=r.readBytes():3===a?e.width=r.readVarint():4===a?e.height=r.readVarint():5===a?e.left=r.readSVarint():6===a?e.top=r.readSVarint():7===a&&(e.advance=r.readVarint())}module.exports=Glyphs;\n},{}],207:[function(_dereq_,module,exports){\n\"use strict\";function polygonIntersectsPolygon(n,t){for(var e=0;e=3)for(var u=0;u1){if(lineIntersectsLine(n,t))return!0;for(var r=0;r1?n.distSqr(e):n.distSqr(e.sub(t)._mult(o)._add(t))}function multiPolygonContainsPoint(n,t){for(var e,r,o,i=!1,l=0;lt.y!=o.y>t.y&&t.x<(o.x-r.x)*(t.y-r.y)/(o.y-r.y)+r.x&&(i=!i)}return i}function polygonContainsPoint(n,t){for(var e=!1,r=0,o=n.length-1;rt.y!=l.y>t.y&&t.x<(l.x-i.x)*(t.y-i.y)/(l.y-i.y)+i.x&&(e=!e)}return e}var isCounterClockwise=_dereq_(\"./util\").isCounterClockwise;module.exports={multiPolygonIntersectsBufferedMultiPoint:multiPolygonIntersectsBufferedMultiPoint,multiPolygonIntersectsMultiPolygon:multiPolygonIntersectsMultiPolygon,multiPolygonIntersectsBufferedMultiLine:multiPolygonIntersectsBufferedMultiLine,polygonIntersectsPolygon:polygonIntersectsPolygon,distToSegmentSquared:distToSegmentSquared};\n},{\"./util\":215}],208:[function(_dereq_,module,exports){\n\"use strict\";var unicodeBlockLookup={\"Latin-1 Supplement\":function(n){return n>=128&&n<=255},\"Hangul Jamo\":function(n){return n>=4352&&n<=4607},\"Unified Canadian Aboriginal Syllabics\":function(n){return n>=5120&&n<=5759},\"Unified Canadian Aboriginal Syllabics Extended\":function(n){return n>=6320&&n<=6399},\"General Punctuation\":function(n){return n>=8192&&n<=8303},\"Letterlike Symbols\":function(n){return n>=8448&&n<=8527},\"Number Forms\":function(n){return n>=8528&&n<=8591},\"Miscellaneous Technical\":function(n){return n>=8960&&n<=9215},\"Control Pictures\":function(n){return n>=9216&&n<=9279},\"Optical Character Recognition\":function(n){return n>=9280&&n<=9311},\"Enclosed Alphanumerics\":function(n){return n>=9312&&n<=9471},\"Geometric Shapes\":function(n){return n>=9632&&n<=9727},\"Miscellaneous Symbols\":function(n){return n>=9728&&n<=9983},\"Miscellaneous Symbols and Arrows\":function(n){return n>=11008&&n<=11263},\"CJK Radicals Supplement\":function(n){return n>=11904&&n<=12031},\"Kangxi Radicals\":function(n){return n>=12032&&n<=12255},\"Ideographic Description Characters\":function(n){return n>=12272&&n<=12287},\"CJK Symbols and Punctuation\":function(n){return n>=12288&&n<=12351},Hiragana:function(n){return n>=12352&&n<=12447},Katakana:function(n){return n>=12448&&n<=12543},Bopomofo:function(n){return n>=12544&&n<=12591},\"Hangul Compatibility Jamo\":function(n){return n>=12592&&n<=12687},Kanbun:function(n){return n>=12688&&n<=12703},\"Bopomofo Extended\":function(n){return n>=12704&&n<=12735},\"CJK Strokes\":function(n){return n>=12736&&n<=12783},\"Katakana Phonetic Extensions\":function(n){return n>=12784&&n<=12799},\"Enclosed CJK Letters and Months\":function(n){return n>=12800&&n<=13055},\"CJK Compatibility\":function(n){return n>=13056&&n<=13311},\"CJK Unified Ideographs Extension A\":function(n){return n>=13312&&n<=19903},\"Yijing Hexagram Symbols\":function(n){return n>=19904&&n<=19967},\"CJK Unified Ideographs\":function(n){return n>=19968&&n<=40959},\"Yi Syllables\":function(n){return n>=40960&&n<=42127},\"Yi Radicals\":function(n){return n>=42128&&n<=42191},\"Hangul Jamo Extended-A\":function(n){return n>=43360&&n<=43391},\"Hangul Syllables\":function(n){return n>=44032&&n<=55215},\"Hangul Jamo Extended-B\":function(n){return n>=55216&&n<=55295},\"Private Use Area\":function(n){return n>=57344&&n<=63743},\"CJK Compatibility Ideographs\":function(n){return n>=63744&&n<=64255},\"Vertical Forms\":function(n){return n>=65040&&n<=65055},\"CJK Compatibility Forms\":function(n){return n>=65072&&n<=65103},\"Small Form Variants\":function(n){return n>=65104&&n<=65135},\"Halfwidth and Fullwidth Forms\":function(n){return n>=65280&&n<=65519}};module.exports=unicodeBlockLookup;\n},{}],209:[function(_dereq_,module,exports){\n\"use strict\";var LRUCache=function(t,e){this.max=t,this.onRemove=e,this.reset()};LRUCache.prototype.reset=function(){var t=this;for(var e in t.data)t.onRemove(t.data[e]);return this.data={},this.order=[],this},LRUCache.prototype.add=function(t,e){if(this.has(t))this.order.splice(this.order.indexOf(t),1),this.data[t]=e,this.order.push(t);else if(this.data[t]=e,this.order.push(t),this.order.length>this.max){var r=this.get(this.order[0]);r&&this.onRemove(r)}return this},LRUCache.prototype.has=function(t){return t in this.data},LRUCache.prototype.keys=function(){return this.order},LRUCache.prototype.get=function(t){if(!this.has(t))return null;var e=this.data[t];return delete this.data[t],this.order.splice(this.order.indexOf(t),1),e},LRUCache.prototype.getWithoutRemoving=function(t){if(!this.has(t))return null;var e=this.data[t];return e},LRUCache.prototype.remove=function(t){if(!this.has(t))return this;var e=this.data[t];return delete this.data[t],this.onRemove(e),this.order.splice(this.order.indexOf(t),1),this},LRUCache.prototype.setMaxSize=function(t){var e=this;for(this.max=t;this.order.length>this.max;){var r=e.get(e.order[0]);r&&e.onRemove(r)}return this},module.exports=LRUCache;\n},{}],210:[function(_dereq_,module,exports){\n\"use strict\";function makeAPIURL(r,e){var t=parseUrl(config.API_URL);if(r.protocol=t.protocol,r.authority=t.authority,!config.REQUIRE_ACCESS_TOKEN)return formatUrl(r);if(e=e||config.ACCESS_TOKEN,!e)throw new Error(\"An API access token is required to use Mapbox GL. \"+help);if(\"s\"===e[0])throw new Error(\"Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). \"+help);return r.params.push(\"access_token=\"+e),formatUrl(r)}function isMapboxURL(r){return 0===r.indexOf(\"mapbox:\")}function replaceTempAccessToken(r){for(var e=0;e=2||512===t?\"@2x\":\"\",s=browser.supportsWebp?\".webp\":\"$1\";return o.path=o.path.replace(imageExtensionRe,\"\"+a+s),replaceTempAccessToken(o.params),formatUrl(o)};var urlRe=/^(\\w+):\\/\\/([^\\/?]*)(\\/[^?]+)?\\??(.+)?/;\n},{\"./browser\":195,\"./config\":199}],211:[function(_dereq_,module,exports){\n\"use strict\";var isChar=_dereq_(\"./is_char_in_unicode_block\");module.exports.allowsIdeographicBreaking=function(a){for(var i=0,r=a;i=65097&&a<=65103)||(!!isChar[\"CJK Compatibility Ideographs\"](a)||(!!isChar[\"CJK Compatibility\"](a)||(!!isChar[\"CJK Radicals Supplement\"](a)||(!!isChar[\"CJK Strokes\"](a)||(!(!isChar[\"CJK Symbols and Punctuation\"](a)||a>=12296&&a<=12305||a>=12308&&a<=12319||12336===a)||(!!isChar[\"CJK Unified Ideographs Extension A\"](a)||(!!isChar[\"CJK Unified Ideographs\"](a)||(!!isChar[\"Enclosed CJK Letters and Months\"](a)||(!!isChar[\"Hangul Compatibility Jamo\"](a)||(!!isChar[\"Hangul Jamo Extended-A\"](a)||(!!isChar[\"Hangul Jamo Extended-B\"](a)||(!!isChar[\"Hangul Jamo\"](a)||(!!isChar[\"Hangul Syllables\"](a)||(!!isChar.Hiragana(a)||(!!isChar[\"Ideographic Description Characters\"](a)||(!!isChar.Kanbun(a)||(!!isChar[\"Kangxi Radicals\"](a)||(!!isChar[\"Katakana Phonetic Extensions\"](a)||(!(!isChar.Katakana(a)||12540===a)||(!(!isChar[\"Halfwidth and Fullwidth Forms\"](a)||65288===a||65289===a||65293===a||a>=65306&&a<=65310||65339===a||65341===a||65343===a||a>=65371&&a<=65503||65507===a||a>=65512&&a<=65519)||(!(!isChar[\"Small Form Variants\"](a)||a>=65112&&a<=65118||a>=65123&&a<=65126)||(!!isChar[\"Unified Canadian Aboriginal Syllabics\"](a)||(!!isChar[\"Unified Canadian Aboriginal Syllabics Extended\"](a)||(!!isChar[\"Vertical Forms\"](a)||(!!isChar[\"Yijing Hexagram Symbols\"](a)||(!!isChar[\"Yi Syllables\"](a)||!!isChar[\"Yi Radicals\"](a))))))))))))))))))))))))))))))},exports.charHasNeutralVerticalOrientation=function(a){return!(!isChar[\"Latin-1 Supplement\"](a)||167!==a&&169!==a&&174!==a&&177!==a&&188!==a&&189!==a&&190!==a&&215!==a&&247!==a)||(!(!isChar[\"General Punctuation\"](a)||8214!==a&&8224!==a&&8225!==a&&8240!==a&&8241!==a&&8251!==a&&8252!==a&&8258!==a&&8263!==a&&8264!==a&&8265!==a&&8273!==a)||(!!isChar[\"Letterlike Symbols\"](a)||(!!isChar[\"Number Forms\"](a)||(!(!isChar[\"Miscellaneous Technical\"](a)||!(a>=8960&&a<=8967||a>=8972&&a<=8991||a>=8996&&a<=9e3||9003===a||a>=9085&&a<=9114||a>=9150&&a<=9165||9167===a||a>=9169&&a<=9179||a>=9186&&a<=9215))||(!(!isChar[\"Control Pictures\"](a)||9251===a)||(!!isChar[\"Optical Character Recognition\"](a)||(!!isChar[\"Enclosed Alphanumerics\"](a)||(!!isChar[\"Geometric Shapes\"](a)||(!(!isChar[\"Miscellaneous Symbols\"](a)||a>=9754&&a<=9759)||(!(!isChar[\"Miscellaneous Symbols and Arrows\"](a)||!(a>=11026&&a<=11055||a>=11088&&a<=11097||a>=11192&&a<=11243))||(!!isChar[\"CJK Symbols and Punctuation\"](a)||(!!isChar.Katakana(a)||(!!isChar[\"Private Use Area\"](a)||(!!isChar[\"CJK Compatibility Forms\"](a)||(!!isChar[\"Small Form Variants\"](a)||(!!isChar[\"Halfwidth and Fullwidth Forms\"](a)||(8734===a||8756===a||8757===a||a>=9984&&a<=10087||a>=10102&&a<=10131||65532===a||65533===a)))))))))))))))))},exports.charHasRotatedVerticalOrientation=function(a){return!(exports.charHasUprightVerticalOrientation(a)||exports.charHasNeutralVerticalOrientation(a))};\n},{\"./is_char_in_unicode_block\":208}],212:[function(_dereq_,module,exports){\n\"use strict\";var LngLat=_dereq_(\"../geo/lng_lat\");module.exports=function(n,t,l){if(n=new LngLat(n.lng,n.lat),t){var a=new LngLat(n.lng-360,n.lat),i=new LngLat(n.lng+360,n.lat),o=l.locationPoint(n).distSqr(t);l.locationPoint(a).distSqr(t)180;){var e=l.locationPoint(n);if(e.x>=0&&e.y>=0&&e.x<=l.width&&e.y<=l.height)break;n.lng>l.center.lng?n.lng-=360:n.lng+=360}return n};\n},{\"../geo/lng_lat\":62}],213:[function(_dereq_,module,exports){\n\"use strict\";function createStructArrayType(t){var e=JSON.stringify(t);if(structArrayTypeCache[e])return structArrayTypeCache[e];var r=void 0===t.alignment?1:t.alignment,i=0,n=0,a=[\"Uint8\"],o=t.members.map(function(t){a.indexOf(t.type)<0&&a.push(t.type);var e=sizeOf(t.type),o=i=align(i,Math.max(r,e)),s=t.components||1;return n=Math.max(n,e),i+=e*s,{name:t.name,type:t.type,components:s,offset:o}}),s=align(i,Math.max(n,r)),p=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Struct);p.prototype.alignment=r,p.prototype.size=s;for(var y=0,c=o;ythis.capacity){this.capacity=Math.max(t,Math.floor(this.capacity*RESIZE_MULTIPLIER),DEFAULT_CAPACITY),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var e=this.uint8;this._refreshViews(),e&&this.uint8.set(e)}},StructArray.prototype._refreshViews=function(){for(var t=this,e=0,r=t._usedTypes;e=1)return 1;var e=r*r,t=e*r;return 4*(r<.5?t:3*(r-e)+t-.75)},exports.bezier=function(r,e,t,n){var o=new UnitBezier(r,e,t,n);return function(r){return o.solve(r)}},exports.ease=exports.bezier(.25,.1,.25,1),exports.clamp=function(r,e,t){return Math.min(t,Math.max(e,r))},exports.wrap=function(r,e,t){var n=t-e,o=((r-e)%n+n)%n+e;return o===e?t:o},exports.asyncAll=function(r,e,t){if(!r.length)return t(null,[]);var n=r.length,o=new Array(r.length),a=null;r.forEach(function(r,i){e(r,function(r,e){r&&(a=r),o[i]=e,0===--n&&t(a,o)})})},exports.values=function(r){var e=[];for(var t in r)e.push(r[t]);return e},exports.keysDifference=function(r,e){var t=[];for(var n in r)n in e||t.push(n);return t},exports.extend=function(r,e,t,n){for(var o=arguments,a=1;a=0)return!0;return!1};var warnOnceHistory={};exports.warnOnce=function(r){warnOnceHistory[r]||(\"undefined\"!=typeof console&&console.warn(r),warnOnceHistory[r]=!0)},exports.isCounterClockwise=function(r,e,t){return(t.y-r.y)*(e.x-r.x)>(e.y-r.y)*(t.x-r.x)},exports.calculateSignedArea=function(r){for(var e=0,t=0,n=r.length,o=n-1,a=void 0,i=void 0;t0||Math.abs(e.y-t.y)>0)&&Math.abs(exports.calculateSignedArea(r))>.01},exports.sphericalToCartesian=function(r){var e=r[0],t=r[1],n=r[2];return t+=90,t*=Math.PI/180,n*=Math.PI/180,[e*Math.cos(t)*Math.sin(n),e*Math.sin(t)*Math.sin(n),e*Math.cos(n)]},exports.parseCacheControl=function(r){var e=/(?:^|(?:\\s*\\,\\s*))([^\\x00-\\x20\\(\\)<>@\\,;\\:\\\\\"\\/\\[\\]\\?\\=\\{\\}\\x7F]+)(?:\\=(?:([^\\x00-\\x20\\(\\)<>@\\,;\\:\\\\\"\\/\\[\\]\\?\\=\\{\\}\\x7F]+)|(?:\\\"((?:[^\"\\\\]|\\\\.)*)\\\")))?/g,t={};if(r.replace(e,function(r,e,n,o){var a=n||o;return t[e]=!a||a.toLowerCase(),\"\"}),t[\"max-age\"]){var n=parseInt(t[\"max-age\"],10);isNaN(n)?delete t[\"max-age\"]:t[\"max-age\"]=n}return t};\n},{\"../geo/coordinate\":61,\"@mapbox/unitbezier\":3,\"point-geometry\":26}],216:[function(_dereq_,module,exports){\n\"use strict\";var Feature=function(e,t,r,o){this.type=\"Feature\",this._vectorTileFeature=e,e._z=t,e._x=r,e._y=o,this.properties=e.properties,null!=e.id&&(this.id=e.id)},prototypeAccessors={geometry:{}};prototypeAccessors.geometry.get=function(){return void 0===this._geometry&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry},prototypeAccessors.geometry.set=function(e){this._geometry=e},Feature.prototype.toJSON=function(){var e=this,t={geometry:this.geometry};for(var r in e)\"_geometry\"!==r&&\"_vectorTileFeature\"!==r&&(t[r]=e[r]);return t},Object.defineProperties(Feature.prototype,prototypeAccessors),module.exports=Feature;\n},{}],217:[function(_dereq_,module,exports){\n\"use strict\";var scriptDetection=_dereq_(\"./script_detection\");module.exports=function(t){for(var o=\"\",e=0;e\":\"﹀\",\"?\":\"︖\",\"@\":\"@\",\"[\":\"﹇\",\"\\\\\":\"\\",\"]\":\"﹈\",\"^\":\"^\",_:\"︳\",\"`\":\"`\",\"{\":\"︷\",\"|\":\"―\",\"}\":\"︸\",\"~\":\"~\",\"¢\":\"¢\",\"£\":\"£\",\"¥\":\"¥\",\"¦\":\"¦\",\"¬\":\"¬\",\"¯\":\" ̄\",\"–\":\"︲\",\"—\":\"︱\",\"‘\":\"﹃\",\"’\":\"﹄\",\"“\":\"﹁\",\"”\":\"﹂\",\"…\":\"︙\",\"‧\":\"・\",\"₩\":\"₩\",\"、\":\"︑\",\"。\":\"︒\",\"〈\":\"︿\",\"〉\":\"﹀\",\"《\":\"︽\",\"》\":\"︾\",\"「\":\"﹁\",\"」\":\"﹂\",\"『\":\"﹃\",\"』\":\"﹄\",\"【\":\"︻\",\"】\":\"︼\",\"〔\":\"︹\",\"〕\":\"︺\",\"〖\":\"︗\",\"〗\":\"︘\",\"!\":\"︕\",\"(\":\"︵\",\")\":\"︶\",\",\":\"︐\",\"-\":\"︲\",\".\":\"・\",\":\":\"︓\",\";\":\"︔\",\"<\":\"︿\",\">\":\"﹀\",\"?\":\"︖\",\"[\":\"﹇\",\"]\":\"﹈\",\"_\":\"︳\",\"{\":\"︷\",\"|\":\"―\",\"}\":\"︸\",\"⦅\":\"︵\",\"⦆\":\"︶\",\"。\":\"︒\",\"「\":\"﹁\",\"」\":\"﹂\"};\n},{\"./script_detection\":211}],218:[function(_dereq_,module,exports){\n\"use strict\";var WebWorker=_dereq_(\"./web_worker\"),WorkerPool=function(){this.active={}};WorkerPool.prototype.acquire=function(r){var e=this;if(!this.workers){var o=_dereq_(\"../\").workerCount;for(this.workers=[];this.workers.length 3 && arguments[3] !== undefined ? arguments[3] : false; - - var input = document.createElement('input'); - input.setAttribute('id', option); - input.setAttribute('type', 'radio'); - input.setAttribute('name', 'toggle'); - input.setAttribute('value', option); - if (checked == true) { - input.setAttribute('checked', 'checked'); - } - input.addEventListener('click', function () { - map.setStyle('mapbox://styles/mapbox/' + option + '-v9'); - }); - var label = document.createElement('label'); - label.setAttribute('for', option); - label.appendChild(document.createTextNode(titlecase(option))); - menu.appendChild(input); - menu.appendChild(label); -}; - -var makeMapMenu = function makeMapMenu(map) { - var mapMenu = document.createElement('div'); - mapMenu.classList.add('map-menu'); - addMapTypeOption(map, mapMenu, 'streets', true); - addMapTypeOption(map, mapMenu, 'satellite-streets'); - return mapMenu; -}; - -//the main function -function addMap(div) { - var position = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null; - var places = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null; - - var dataLatitude = div.dataset.latitude; - var dataLongitude = div.dataset.longitude; - var dataId = div.dataset.id; - var data = window['geojson' + dataId]; - if (data == null) { - data = { - 'type': 'FeatureCollection', - 'features': [{ - 'type': 'Feature', - 'geometry': { - 'type': 'Point', - 'coordinates': [dataLongitude, dataLatitude] - }, - 'properties': { - 'title': 'Current Location', - 'icon': 'circle-stroked', - 'uri': 'current-location' - } - }] - }; - } - if (places != null) { - var _iteratorNormalCompletion = true; - var _didIteratorError = false; - var _iteratorError = undefined; - - try { - for (var _iterator = places[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { - var place = _step.value; - - var placeLongitude = (0, _parseLocation2.default)(place.location).longitude; - var placeLatitude = (0, _parseLocation2.default)(place.location).latitude; - data.features.push({ - 'type': 'Feature', - 'geometry': { - 'type': 'Point', - 'coordinates': [placeLongitude, placeLatitude] - }, - 'properties': { - 'title': place.name, - 'icon': 'circle', - 'uri': place.slug - } - }); - } - } catch (err) { - _didIteratorError = true; - _iteratorError = err; - } finally { - try { - if (!_iteratorNormalCompletion && _iterator.return) { - _iterator.return(); - } - } finally { - if (_didIteratorError) { - throw _iteratorError; - } - } - } - } - if (position != null) { - dataLongitude = position.coords.longitude; - dataLatitude = position.coords.latitude; - } - var map = new _mapboxGl2.default.Map({ - container: div, - style: 'mapbox://styles/mapbox/streets-v9', - center: [dataLongitude, dataLatitude], - zoom: 15 - }); - if (position == null) { - map.scrollZoom.disable(); - } - map.addControl(new _mapboxGl2.default.NavigationControl()); - div.appendChild(makeMapMenu(map)); - map.on('load', function () { - map.addSource('points', { - 'type': 'geojson', - 'data': data - }); - map.addLayer({ - 'id': 'points', - 'interactive': true, - 'type': 'symbol', - 'source': 'points', - 'layout': { - 'icon-image': '{icon}-15', - 'text-field': '{title}', - 'text-offset': [0, 1] - } - }); - }); - if (position != null) { - map.on('click', function (e) { - var features = map.queryRenderedFeatures(e.point, { - layer: ['points'] - }); - // if there are features within the given radius of the click event, - // fly to the location of the click event - if (features.length) { - // Get coordinates from the symbol and center the map on those coordinates - map.flyTo({ center: features[0].geometry.coordinates }); - (0, _selectPlace2.default)(features[0].properties.uri); - } - }); - } - if (data.features && data.features.length > 1) { - var bounds = new _mapboxGl2.default.LngLatBounds(); - var _iteratorNormalCompletion2 = true; - var _didIteratorError2 = false; - var _iteratorError2 = undefined; - - try { - for (var _iterator2 = data.features[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) { - var feature = _step2.value; - - bounds.extend(feature.geometry.coordinates); - } - } catch (err) { - _didIteratorError2 = true; - _iteratorError2 = err; - } finally { - try { - if (!_iteratorNormalCompletion2 && _iterator2.return) { - _iterator2.return(); - } - } finally { - if (_didIteratorError2) { - throw _iteratorError2; - } - } - } - - map.fitBounds(bounds, { padding: 65 }); - } - - return map; -} - -/***/ }), -/* 3 */ -/***/ (function(module, exports, __webpack_require__) { - -/* WEBPACK VAR INJECTION */(function(module) {var __WEBPACK_AMD_DEFINE_RESULT__;!function(){"use strict";function t(){var t={parent:document.body,version:"1.0.12",defaultOkLabel:"Ok",okLabel:"Ok",defaultCancelLabel:"Cancel",cancelLabel:"Cancel",defaultMaxLogItems:2,maxLogItems:2,promptValue:"",promptPlaceholder:"",closeLogOnClick:!1,closeLogOnClickDefault:!1,delay:5e3,defaultDelay:5e3,logContainerClass:"alertify-logs",logContainerDefaultClass:"alertify-logs",dialogs:{buttons:{holder:"